原来一直想偷懒直接使用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 Ready30s v1.12.5 192.168.1.43 Ready 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.1443/TCP 90m nginx NodePort 10.0.0.208 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 中都可以打开。如下:
网页标题:Kubernetes之集群二进制部署
当前URL:http://lswzjz.com/article/ijecds.html