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

相关推荐
BullSmall1 天前
Anolis OS 8.10 完整安装 Docker CE(生产可用,解决 podman 冲突)
docker·容器·podman
heimeiyingwang1 天前
【架构实战】可观测性三支柱:日志、指标、链路的融合
elasticsearch·架构·kubernetes
至乐活着1 天前
Ansible自动化运维实战:从零部署高可用Nginx+静态网站集群
ansible·自动化运维·devops·playbook·配置管理
CodexDave1 天前
数据库连接池耗尽:排查顺序与三层兜底
服务器·前端·数据库·git·云原生·容器·kubernetes
java_logo1 天前
ELK Docker Compose 部署指南:轻松搭建日志检索平台
elk·elasticsearch·docker·容器·kibana·logstash·轩辕镜像
ShallWeL1 天前
Orin 上用 Docker 跑通目标检测功能
人工智能·目标检测·docker·容器
辰同学ovo1 天前
用“舞台换景”讲清 Docker 的 Restart 与 Recreate
运维·docker·容器
名字还没想好☜1 天前
Kubernetes Ingress 实战:域名路由、TLS 证书与 502/404 排查
运维·云原生·容器·kubernetes·ingress
Zhu7581 天前
在k8s部署alist 3.62.0
云原生·容器·kubernetes
关关长语2 天前
Wsl解决MySQL容器跨域权限问题
mysql·docker·容器