站長資訊網
最全最豐富的資訊網站

CentOS 7下離線方式部署kubernetes 1.16.0

Kubernetes在2019年9月18日發布了年度的第三個版本1.16,這篇文章介紹一下如何使用Easypack的Ansible腳本方式在CentOS7上完成Kubernetes的一鍵安裝。

環境構成說明

設定項 詳細信息
構成 一主一從(同一臺機器)
IP 192.168.163.132
網卡名稱 enp0s3
Kubernetes 1.16.0
Docker 18.09.7
ETCD 3.3.13
FLANNEL 0.10.0

安裝步驟
步驟1:下載easypack

[root@host132 tmp]# git clone https://github.com/liumiaocn/easypack.git
Cloning into ‘easypack’…
…省略
[root@host132 tmp]#

步驟2: 下載相關離線二進制文件

注:目前直接使用download的role,會下載并打包生成1.15的kubernetes相關的二進制文件,然后手動下載kubernetes的二進制文件進行替換即可,下載目錄為:

https://dl.k8s.io/v1.16.0/kubernetes-server-linux-amd64.tar.gz

步驟3: 調整配置
只需要修改common_vars.yml的如下兩處設定即可

設定項 設定參數 設定值
var_all_in_one_hostip Master節點IP地址 192.168.163.132
var_flannel_opt_iface 網卡名稱 enp0s3

步驟4: 一鍵安裝
前提條件

條件1:  安裝ansible,建議版本2.4.2.0或以上
條件2:  本機連接的ssh設定完畢,簡單來說ssh-copy-id 192.168.163.132(請使用本機IP)執行完成

安裝命令:
ansible-playbook 10.all-in-one.yml

安裝示例

[root@host132 ansible]# ansible-playbook 10.all-in-one.yml

PLAY [all-in-one] **********************************************************************************************************************

TASK [clean : stop etcd service] *******************************************************************************************************
…省略
TASK [dashboard : create clusterrolebinding for dashboard] *****************************************************************************
changed: [localhost]

PLAY RECAP *****************************************************************************************************************************
localhost                  : ok=103  changed=95  unreachable=0    failed=0 

[root@host132 ansible]#

結果確認

版本確認

[root@host132 ansible]# kubectl version
Client Version: version.Info{Major:”1″, Minor:”16″, GitVersion:”v1.16.0″, GitCommit:”2bd9643cee5b3b3a5ecbd3af49d09018f0773c77″, GitTreeState:”clean”, BuildDate:”2019-09-18T14:36:53Z”, GoVersion:”go1.12.9″, Compiler:”gc”, Platform:”linux/amd64″}
Server Version: version.Info{Major:”1″, Minor:”16″, GitVersion:”v1.16.0″, GitCommit:”2bd9643cee5b3b3a5ecbd3af49d09018f0773c77″, GitTreeState:”clean”, BuildDate:”2019-09-18T14:27:17Z”, GoVersion:”go1.12.9″, Compiler:”gc”, Platform:”linux/amd64″}
[root@host132 ansible]#

節點確認

[root@host132 ansible]# kubectl get node -o wide
NAME              STATUS  ROLES    AGE  VERSION  INTERNAL-IP      EXTERNAL-IP  OS-IMAGE                KERNEL-VERSION          CONTAINER-RUNTIME
192.168.163.132  Ready    <none>  81s  v1.16.0  192.168.163.132  <none>        CentOS Linux 7 (Core)  3.10.0-957.el7.x86_64  docker://18.9.7
[root@host132 ansible]#

coredns與dashboard服務確認

[root@host132 ansible]# kubectl get services -n kube-system
NAME                  TYPE        CLUSTER-IP    EXTERNAL-IP  PORT(S)        AGE
kube-dns              ClusterIP  10.254.0.2    <none>        53/UDP,53/TCP  2m15s
kubernetes-dashboard  NodePort    10.254.28.13  <none>        443:33307/TCP  110s
[root@host132 ansible]#
[root@host132 ansible]# kubectl get pods -n kube-system
NAME                                    READY  STATUS    RESTARTS  AGE
coredns-59db588569-mx6vw                1/1    Running  0          2m24s
kubernetes-dashboard-7c54d59f66-l2pqx  1/1    Running  0          119s
[root@host132 ansible]#

dashboard的token確認

[root@host132 ansible]# dashboard_secret=`kubectl get secrets -n kube-system | grep dashboard-admin | awk ‘{print $1}’`
[root@host132 ansible]# kubectl describe secret -n kube-system ${dashboard_secret} | grep -E ‘^token’ | awk ‘{print $2}’
eyJhbGciOiJSUzI1NiIsImtpZCI6Imt2OG1UdHFzT0t5Tnp6VjRtNlZORmt6Tk5LRzhFRG01WTlXaU16LUVZNFkifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkYXNoYm9hcmQtYWRtaW4tdG9rZW4tNzdsbDgiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGFzaGJvYXJkLWFkbWluIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiZDk1NmJjYzItN2ZiNS00NDdmLThlNWEtNjM3ZTQ2NmNkOTc3Iiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOmRhc2hib2FyZC1hZG1pbiJ9.sImW-gcsHr7NJjEbIOOO1TRB0ZlF-CFRb9AXq8O38qf9E0xSZPUXeRFf8i9AST1HDZn8ugAv77TVtzj8AJaL4hxz6LylQpjhkpBxkpRMA7A7V8nhaYPxSvZUJBSpj_h2NcXNrpj7m0_V0axk9VguE_kcuTWlr2sR7x35Xmf-lxWS0yQAUkvaX26F59IBVCXZ2_A5cHWbfBvufBcGPrhKuVfJiHTUyDLha37Ze1OCCsPJP-HDnwniJsdIac89M9w9QZ1qNrtRXAlKLN24pXg_Ki5dkmYU4ImkF4YRsHAfzqkmaYHc-UoKUzJET1UqjHyqKoK64JuNHeer4RwADBF7CQ
[root@host132 ansible]#

dashboard確認

使用https://localhost:33307登陸dashboard界面,選擇token方式,并粘貼上述token信息

CentOS 7下離線方式部署kubernetes 1.16.0

 登陸之后即可看到dashboard可視化界面展示的Kubernetes相關的信息

CentOS 7下離線方式部署kubernetes 1.16.0

常見問題 見 http://www.hospitaldelafe.com/Linux/2019-09/160728.htm

贊(0)
分享到: 更多 (0)
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
亚洲色精品三区二区一区| 亚洲国产精品婷婷久久| 亚洲日韩欧洲无码av夜夜摸| 久久99精品久久久久久清纯| 久9视频这里只有精品| 奇米精品视频一区二区三区| 久久这里只精品99re免费| 国产偷国产偷精品高清尤物| 亚洲午夜精品久久久久久浪潮| 亚洲日韩AV一区二区三区四区| 日韩电影在线观看第一区| 精品中文字幕久久久久久| 久久精品无码一区二区三区免费| 精品乱码一卡2卡三卡4卡网| 国产69精品久久久久777| 亚欧在线精品免费观看一区| 99国产精品免费观看视频| 久久久久久久99精品免费| 久久亚洲国产精品一区二区 | 中文无码精品一区二区三区| 国产乱子伦精品免费视频| 国产成人精品曰本亚洲79ren| 亚洲成人国产精品| 大桥未久在线精品视频在线| 日本Aⅴ大伊香蕉精品视频| 精品免费AV一区二区三区| 日韩精品人成在线播放| 日韩乱码中文字幕视频| 日韩在线精品一二三区| 久草这里只有精品| 亚洲成人国产精品| 精品国产91久久久久久久a| 久久精品国产亚洲5555| 国产一区二区精品久久岳| 99精品在线播放| 国内精品久久久久影院一蜜桃| 国产精品无圣光一区二区| 国产精品日本一区二区不卡视频| 久热re这里只有精品视频| 日韩精品久久无码中文字幕| 精品熟女少妇av免费久久|