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

相关推荐
misakivv1 小时前
k8s 分布式存储平台 -- Longhorn
分布式·云原生·容器·kubernetes
hrlees3 小时前
从零开始Ubuntu24.04上Docker构建自动化部署(二)Docker-安装docker-compose
docker·容器·自动化
人类群星闪耀时3 小时前
自动化运维的利器:Ansible、Puppet和Chef详解
运维·自动化·ansible
程序那点事儿4 小时前
数据订阅与消费中间件Canal 服务搭建(docker)
docker·中间件·容器
BUG弄潮儿4 小时前
k8s 部署 prometheus
容器·kubernetes·prometheus
企鹅侠客5 小时前
ansible实用模块
ansible
@sinner8 小时前
Docker实践与应用:深度探索与丰富案例
docker·容器
Rainbond云原生8 小时前
Rainbond 助力城建智控,从传统开发到敏捷开发转型
云原生·kubernetes·开源·云计算
onejson8 小时前
docker 进入容器运行命令
容器
是芽芽哩!9 小时前
【Kubernetes】常见面试题汇总(四十七)
云原生·容器·kubernetes