Kubernetes安装部署演示介绍(一)

2023年 7月 9日 45.8k 0

这是差不多2年前我整理的一篇纯手工搭建Kubernetes的文档,里边涉及的软件版本相对偏低一些,但对一些初学者来说应该依然具有一定的借鉴意义。

环境介绍:

OS:Linux redhat721  3.10.0-327.el7.x86_64

K8S测试集群共2台主机,1台Master和1台Node, Master  IP:192.168.80.137

组件 版本 部署方式 安装目录或访问入口
docker 1.10.3 rpm /var/lib/docker
etcd 2.3.6 tar /root/etcd-v2.3.6-linux-amd64
flannel 0.5.5 tar /root/flannel-0.5.5
kubernetes 1.2.4 tar /root/kubernetes
skydns 2015-10-13 容器 固定ip:192.168.3.254
    kube2sky 1.14 容器 和skydns同pod
     etcd 2.2.2 容器 和skydns同pod
exechealthz 1.0 容器 和skydns同pod
dashboard 1.0.1 容器 http://192.168.80.137:8080/ui
nginx 容器
cAdvisor 容器 kubelet自动启动

http://192.168.80.137:4194

heapster 1.0.2 容器
influxDB 0.5 容器
grafana 2.6.0-2 容器 http://192.168.80.137:8080/api/v1/proxy/namespaces/

kube-system/services/monitoring-grafana/

 

Node IP:192.168.80.139

组件 版本 部署方式 安装目录或访问入口
docker 1.10.3 rpm /var/lib/docker
flannel 0.5.5 tar /root/flannel-0.5.5
kubernetes 1.2.4 tar /root/kubernetes
cAdvisor 容器 kubelet自动启动

http://192.168.80.139:4194

一、安装docker环境

1、安装

本次安装的是docker1.10.3,建议安装最新的docker环境。

使用的安装包为Redhat7.x准备所有环境依赖的rpm集合包,包内的rpm文件如下面rpm命令所涉。

将所有文件上传主机,使用下面命令进行安装:

————————

rpm -Uvh ./policycoreutils-2.2.5-20.el7.x86_64.rpm

rpm -Uvh ./audit-libs-python-2.4.1-5.el7.x86_64.rpm

rpm -Uvh ./checkpolicy-2.1.12-6.el7.x86_64.rpm

rpm -Uvh ./libcgroup-0.41-8.el7.x86_64.rpm

rpm -Uvh ./libsemanage-2.1.10-18.el7.x86_64.rpm

rpm -Uvh ./libsemanage-python-2.1.10-18.el7.x86_64.rpm

rpm -Uvh ./python-IPy-0.75-6.el7.noarch.rpm

rpm -Uvh ./setools-libs-3.3.7-46.el7.x86_64.rpm

rpm -Uvh ./policycoreutils-python-2.2.5-20.el7.x86_64.rpm

 

rpm -Uvh ./docker-engine-selinux-1.10.3-1.el7.centos.noarch.rpm

rpm -Uvh –nodeps –force ./device-mapper-libs-1.02.107-5.el7.x86_64.rpm ./device-mapper-1.02.107-5.el7.x86_64.rpm

rpm -Uvh –nodeps –force ./systemd-219-19.el7.x86_64.rpm ./systemd-libs-219-19.el7.x86_64.rpm ./kmod-20-5.el7.x86_64.rpm ./dracut-033-359.el7.x86_64.rpm ./initscripts-9.49.30-1.el7.x86_64.rpm  ./libgudev1-219-19.el7.x86_64.rpm ./systemd-sysv-219-19.el7.x86_64.rpm ./dracut-network-033-359.el7.x86_64.rpm ./dracut-config-rescue-033-359.el7.x86_64.rpm

rpm -Uvh ./docker-engine-1.10.3-1.el7.centos.x86_64.rpm

————————-

2、启动docker服务

启动docker服务命令:sudo service docker start

将docker加入随主机自启动列表:sudo chkconfig docker on

3、验证docker环境

执行命令:docker version,显示如下信息,则docker环境正确安装:

 

 

 

 

 

 

二、安装etcd服务

1、安装

本次安装的是etcd2.3.6。

将etcd-v2.3.6-linux-amd64.tar.gz上传主机,并解压。

tar -xzvf etcd-v2.3.6-linux-amd64.tar.gz

 

2、验证

export PATH=$PATH:/root/etcd-v2.3.6-linux-amd64

etcd -version

 

3、启动etcd服务

编辑shell脚本startEtcd.sh,内容如下:

——————————-

#!/bin/sh

export PATH=$PATH:/root/etcd-v2.3.6-linux-amd64

export ETCD_OPTS=”–listen-client-urls http://0.0.0.0:4001 –advertise-client-urls http://0.0.0.0:4001 –data-dir /var/lib/etcd/default.etcd”

 

nohup /root/etcd-v2.3.6-linux-amd64/etcd $ETCD_OPTS &

——————————-

启动命令:./startEtcd.sh

三、安装flannel虚拟网络环境

1、安装

本次安装的是flannel0.5.5。

将flannel-0.5.5-linux-amd64.tar.gz上传主机,并解压。

tar  -zxvf  flannel-0.5.5-linux-amd64.tar

2、在etcd中预注册flannel要使用虚拟地址段

etcdctl mk /coreos.com/network/config ‘{ “Network”: “172.19.0.0/16” }’

3、启动flannel

编辑shell脚本startFlannel.sh,内容如下:

——————–

#!/bin/sh

nohup /root/flannel-0.5.5/flanneld –etcd-endpoints=http://127.0.0.1:4001  &

———————

启动命令:./startFlanneld.sh

4、etcd中验证flannel地址分配

etcdctl ls /coreos.com/network/subnets

etcdctl get /coreos.com/network/subnets/172.19.3.0-24

这说明本地flannel使用的172.19.3.0网段地址。

5、生成docker相关参数,${FLANNEL_SUBNET}

./mk-docker-opts.sh

cat /run/flannel/subnet.env

6、给docker0虚拟网卡添加参数,重启

//ifconfig docker0 172.19.3.1/24

ifconfig docker0 ${FLANNEL_SUBNET}

ifconfig docker0 down

ifconfig docker0 up

7、重启docker服务

service docker stop

service docker start

8、验证

Ifconfig命令

Docker网卡的地址不再是172.17网段的地址,而是172.19.3地址(这个每次获取都会变)。

 这几个前置环境部署好后,接下来将部署K8S环境。

相关文章

KubeSphere 部署向量数据库 Milvus 实战指南
探索 Kubernetes 持久化存储之 Longhorn 初窥门径
征服 Docker 镜像访问限制!KubeSphere v3.4.1 成功部署全攻略
那些年在 Terraform 上吃到的糖和踩过的坑
无需 Kubernetes 测试 Kubernetes 网络实现
Kubernetes v1.31 中的移除和主要变更

发布评论