上面左边是我的个人微信,如需进一步沟通,请加微信。 右边是我的公众号“Openstack私有云”,如有兴趣,请关注。
原来一直想偷懒直接使用kubernetes的kubeadmin 部署工具自动化部署,但是,由于软件安装源的问题,对相关模块的相互关系都不熟悉,另外,由于工作上面也没有用到,没有足够的热情,这个实验一直没能完成 ,后面订阅了一个订阅号专门介绍kubernetes这一块的内容,还是老老实实跟着老师傅通过二进制包进行安装,这样也可以对k8s的整个体系结构会更加了解。参考了这个网址:
https://blog.51cto.com/lizhenliang/2325770
还是使用pve虚拟化环境创建测试虚拟机,2核CPU,内存4G,硬盘32G,2网卡:
安装环境
软件 | 版本 |
---|
操作系统 | CentOS7.2_x64 |
Docker | 18-ce |
Kubernetes | 1.12 |
角色 | IP | 组件 |
---|
k8s-master | 192.168.1.41 | kube-apiserver,kube-controller-manager,kube-scheduler,etcd |
k8s-node1 | 192.168.1.42 | kubelet,kube-proxy,docker,flannel,etcd |
k8s-node2 | 192.168.1.43 | kubelet,kube-proxy,docker,flannel,etcd |
详细的操作过程详见:“转载:Kubernetes v1.12 二进制部署集群(HTTPS+RBAC)”
下面是验证内容:
在master节点查看集群状态:
# kubectl get node
NAME STATUS ROLES AGE VERSION
192.168.1.42 Ready <none> 30s v1.12.5
192.168.1.43 Ready <none> 13s v1.12.5
# kubectl get cs
NAME STATUS MESSAGE ERROR
controller-manager Healthy ok
scheduler Healthy ok
etcd-0 Healthy {"health": "true"}
etcd-2 Healthy {"health": "true"}
etcd-1 Healthy {"health": "true"}
运行一个测试示例
创建一个Nginx Web,测试集群是否正常工作:
# kubectl run nginx --image=nginx --replicas=3
# kubectl expose deployment nginx --port=88 --target-port=80 --type=NodePort
查看Pod,Service:
# kubectl get pods
NAME READY STATUS RESTARTS AGE
nginx-dbddb74b8-dlkfl 1/1 Running 0 44s
nginx-dbddb74b8-m558r 1/1 Running 0 44s
nginx-dbddb74b8-pwdc9 1/1 Running 0 44s
# kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.0.0.1 <none> 443/TCP 90m
nginx NodePort 10.0.0.208 <none> 88:48882/TCP 26s
访问集群中部署的Nginx,打开浏览器输入:http://192.168.1.42:48882/ http://192.168.1.43:48882/ ,在两个node中,192.168.1.42和192.168.1.43 中都可以打开。如下: