目标任务:

1、Kubernetes集群部署架构规划

2、部署Etcd数据库集群

3、在Node节点安装Docker

4、部署Flannel网络插件

5、在Master节点部署组件(api-server,schduler,controller-manager)

6、在Node节点部署组件(kubelet,kube-proxy)

7、查看集群状态

8、运行⼀个测试示例

9、部署Dashboard(Web UI) 可选

准备环境

三台机器,所有机器相互做解析 centos7.6
关闭防⽕墙和selinux
关闭交换空间
临时关闭:swapoff -a
永久关闭:
vi /etc/fstab
找到如下内容:注释或删除
#/dev/sdX none swap sw 0 0

核心组件:

192.168.229.11 k8s-master 
kube-apiserver,kube-controller-manager,kube-scheduler,etcd

192.168.229.12 k8s-node1
kubelet,kube-proxy,docker,flannel,etcd

192.168.229.13 k8s-node2
kubelet,kube-proxy,docker,flannel,etcd

三台机器都做域名解析

通过ping做连通测试

三台都做

部署Etcd集群

生成cfssl证书

下载cfssl⼯具:下载的这些是可执行的二进制命令直接用就可以了

放在usr/local/bin下面,方便直接使用命令

生成Etcd证书:
创建以下三个文件:

#生成ca中⼼的证书请求文件

生成服务器的证书(向ca发送请求)请求文件

生成ca认证证书:      

通过认证文件去签发证书

server.pem 要用的证书
server-key.pem 要用的私钥

安装Etcd:

二进制包下载地址:

Release v3.2.12 · etcd-io/etcd · GitHubDistributed reliable key-value store for the most critical data of a distributed system - Release v3.2.12 · etcd-io/etcdicon-default.png?t=O83Ahttps://github.com/coreos/etcd/releases/tag/v3.2.12

以下部署步骤在规划的三个etcd节点操作⼀样,唯⼀不同的是etcd配置文件中的服务器IP要写当前的:解压二进制包:以下步骤三台机器都操作:

源码安装etcd

 wget https://github.com/etcd-io/etcd/releases/download/v3.2.12/etcd-v3.2.12-linux-amd64.tar.gz

// bin目录执行文件   cfg存启动命令 ssl存证书,刚才生成的cert/ .pem证书

三台都操作

创建etcd配置文件:

配置systemd管理etcd:

因为etcd是通过二进制安装的,不能直接通过systemctl操作

需要编写定义和管理 etcd 服务的启动、停止和其他操作

把/usr/lib/systemd/system/etcd.service通过master传给其他两台机器

master下操作:
如果多重执行了 就无需传递了

传输证书:

把刚才生成的证书拷贝到配置文件中的位置:(将master上面生成的证书scp到剩余两台机器上面)

直接拷贝到剩余两台etcd机器:

全部启动并设置开启启动

检查etcd的状态

若出现如上结果,说明健康,成功

在Node节点安装Docker

若之前安装过,先卸载
# yum remove docker \
docker-client \ 
docker-client-latest \ 

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部