分享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。

相关推荐
虎头金猫6 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
赵文宇(温玉)6 天前
CoreDNS的hosts插件的缺行配置导致k8s集群异常
容器·kubernetes·rancher
guo_wen_qiang6 天前
上传本地镜像到harbor中
docker·容器·持续部署
张洛闻Eren6 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
忆~遂愿6 天前
本地片库怎么在外面打开?Plex + cpolar 搭一套可远程访问的私人影音库
docker·容器
Thneonl6 天前
你的 Pod 为什么 Pending:调度器两阶段
后端·kubernetes
不吃香菜kkk、6 天前
CI/CD(GitOps)学习与部署手册
运维·云原生·容器·kubernetes·云计算·jenkins·argocd
九皇叔叔6 天前
Kubernetes 资源管理方式详解:命令式与声明式管理
docker·容器·k8s
程序猿小郑7 天前
Docker Compose 构建完整服务实战指南:从入门到最佳实践
docker·容器
ysu_03147 天前
【2026】K8s GPU调度空占怎么解?Kueue与Volcano Gang配置
云原生·kubernetes·gpu算力·volcano·ai基础设施·kueue·gang scheduling