关闭防火墙、selinux

master 节点 2core 4G  10.0.0.101

node 1节点 2core 4G   10.0.0.102

node 2节点 2core 4G   10.0.0.103

node 3节点 2core 4G   10.0.0.104

一、master 组件部署

yum -y install etcd    #部署 etcd 组件

systemctl start etcd && systemctl enable etcd    #启动 etcd 服务

                 etcdctl  --help   #查看 etcd 命令参数
 
                 etcdctl mk --help  #创建 key 和 value

                 etcdctl set  --help  #建立key值

                 etcdctl get  --help  #查看key值

yum -y install kubernetes-master   #部署 master 组件

cp /etc/kubernetes/apiserver  /etc/kubernetes/apiserver-'date+%F'   #备份 apiserver 配置文件

vim   /etc/kubernetes/apiserver    #编辑 apiserver 配置文件

systemctl enable kube-apiserver.service  kube-controller-manager.service  kube-scheduler.service  &&  systemctl restart kube-apiserver.service  kube-controller-manager.service  kube-scheduler.service    #启动服务,至此,四个组件的服务已全部启动


systemctl status kube-apiserver.service  kube-controller-manager.service  kube-scheduler.service    #查看各个服务运行状态

kubectl  get  componentstatuses    #查看组件状态   (componentstatuses可以简写为cs)

二、node 组件部署

yum -y install kubernetes-node     #安装 node 组件

ll /etc/kubernetes/    #查看文件(proxy,config,kubelet-管理pod生命周期,定期上报apiserver)

vim /etc/kubernetes/config   #修改配置文件,修改与接口交互的 master 节点地址


vim /etc/kubernetes/kubelet  #修改管理pod文件,定期与aipserver交互,需要知道apiserver地址

systemctl restart kubelet.service kube-proxy.service  &&  systemctl enable kubelet.service kube-proxy.service    #启动服务并设置为开机自启

 以上配置在每个 node 节点都需要配置

在master节点查看 

etcdctl  ls /registry/minions   #多出一个minions,属于node节点的地址

kubectl  get nodes  #查看 node 控制节点状态

kubectl  get cs  #查看 master 节点状态   

kubectl  get no,cs    #同时查看 node 和 msater 节点状态

 

三、所有节点(master+node)部署 flanne 网络插件

master 节点 &&  node节点都做(涉及etcd存储的在master节点),修改配置时注意ip和端口
yum -y install flannel    #安装网络插件

vim /etc/etcd/etcd.conf   #修改监听端口,监听所有的

systemctl restart etcd  #重启 etcd 服务

vim /etc/sysconfig/flanneld  #修改网络路径 /oldboyedu/linux/config

etcdctl mk /oldboyedu/linux/config '{"Network":"172.18.0.0/16","Backend":{"type":"Vxlan"}}'       #docker0占用172.17,所以此处用的是172.18  

systemctl enable flanneld.service && systemctl restart flanneld.service #启动 flanneld 服务

systemctl restart docker && ifconfig  #可以看到多出一块 flannel 的网卡

iptables -p forward accept  && iptables save   #默认node节点不互通,执行这个指令进行通信放行

ping  ip   #测试主机通信,此时全部互通。

 

 

四、部署 master 为镜像仓库

配置一个 docker 镜像加速

配置命令自动补全 

yum  -y install  bash-completion
 
source  /usr/share/bash-completion/bash_completion

域名解析_集群所有节点都要设置

10.0.0.101   master

10.0.0.102   node1

10.0.0.103   node2

10.0.0.104   node3

下载镜像

docker pull registry     #下载镜像

启动 registry 私有镜像仓库

docker run -d -p 5000:5000 --restart=always --name oldboyedu-image-registory  -v /lodboyedu/data:/var/lib/registry  registry  

etcdctl  ls  /   #查看私有镜像

 为镜像打标签上传到私有仓库(默认传到的是官方仓库)

docker tag mysql:8.0 docker201.oldboyedu.com:5000/oldboyedu/mysql:8.0

添加信任仓库,默认协议是https,而私有仓库是http协议——每个节点都要做

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐