分享kubernetes部署:基于Ansible自动安装kubernetes

基于Ansible自动安装kubernetes

环境准备

我们以如下机器环境为例:

开放端口:

控制平面节点

工作节点

请按如上中规定的开放端口,或关闭防火墙:

systemctlstopfirewalld&&\

systemctldisablefirewalld

安装常用工具

sudoyuminstall-yyum-utilswgetvimmtrcurltelentlsofgitunzip

下载安装工具

cd/opt/

(部分内容已省略)

检测端口

执行端口检测工具[checkout_k8s_port.sh],用来检测k8s所需端口是否已经开放,保证k8s安装成功,使用步骤如下

cd/opt/kubernetes/

shcheckout_k8s_port.sh192.168.2.100192.168.2.101192.168.2.102192.168.2.103

脚本后参数为k8s环境服务器IP,多个服务器IP以空格分隔。

修改hostname

hostnamectlset-hostnamek8snode100

hostnamectlset-hostnamek8snode101

hostnamectlset-hostnamek8snode102

hostnamectlset-hostnamek8snode103

安装ansible

cd/opt/kubernetes

shkubeadm-ha/ansible/install.sh

使用指南

00-安装须知 01-集群安装 02-节点管理 03-证书轮换 04-集群升级

05-集群备份 06-集群恢复 07-集群重置 08-离线安装 09-扩展阅读

根据规划选择相应配置文件设置

cdkubeadm-ha

viexample/hosts.m-master.hostname.ini

一句命令拥有一个高可用kubernetes集群:

ansible-playbook-iexample/hosts.m-master.hostname.ini90-init-cluster.yml

如果安装失败,可以尝试升级内核后再进行安装。

升级内核,默认安装集群是不会升级内核的,若需升级内核,请执行(内核升级完成后请手动重启所有节点):

ansible-playbook-iexample/hosts.s-master.hostname.ini00-kernel.yml

生成证书secret

kubectlcreatesecretgenerickubernetes-dashboard-certs--from-file=/opt/ssl/xxx.com.key--from-file=/opt/ssl/xxx.com.pem

k8s-dashboard通过ingress暴露访问

修改域名(需要开启443端口)

cd/opt/kubernetes

vimplugins/kubernetes-dashboard/ingress-dashboard.yaml

执行脚本

kubectlapply-fplugins/kubernetes-dashboard/ingress-dashboard.yaml

创建用户

kubectlapply-fplugins/kubernetes-dashboard/create-user.yaml

获取登陆token

shplugins/kubernetes-dashboard/get-user-token.sh

访问dashboard

如果域名没有配置解析,可以修改本机hosts文件

192.168.2.217dashboard-test.com

https://dashboard-test.com

输入token后登录

根据以上内容可以了解到基于Ansible自动安装kubernetes的流程,想了解更多详情,可以持续关注易族智汇javashop

相关推荐
小黑_深呼吸1 小时前
k8s平台:手动部署Grafana
运维·学习·kubernetes·grafana·prometheus
小马爱打代码5 小时前
K8S - GitOps 入门实战 - 自动发布与秒级回滚
云原生·容器·kubernetes
jk英菲尼迪6 小时前
Windows系统安装Docker(Win10系统升级,然后安装)
运维·docker·容器
野生绿箭侠9 小时前
Docker 部署 flink1.19.2
运维·docker·容器
小马爱打代码11 小时前
K8S - 命名空间实战 - 从资源隔离到多环境管理
云原生·容器·kubernetes
qq74223498411 小时前
AI开发者的Docker实践:汉化(中文),更换镜像源,Dockerfile,部署Python项目
python·docker·容器
欧先生^_^12 小时前
删除k8s某命名空间,一直卡住了怎么办?
云原生·容器·kubernetes
阿湯哥16 小时前
外部访问 Kubernetes 集群中 MQ 服务的方案
云原生·容器·kubernetes
PolarisHuster17 小时前
如何查看k8s获取系统是否清理过docker镜像
docker·容器·kubernetes
matrixlzp17 小时前
K8S Secret 快速开始
云原生·容器·kubernetes