K8S系列文章之 kubeasz部署K8S环境

自动化安装方式(kubeasz)*

生产环境推荐(首次安装下载相关配置和安装包)是基于Ansible实现的部署工具

简单介绍

每一具体k8s集群的详细配置参数文件

Ansible 任务配置文件

镜像安装包

安装部署步骤

前提 : 保证Ansible所在主机节点可以免密访问其他所有受控主机节点

(配置免密登录)

SSH免密登陆

配置从部署节点能够ssh免密登陆所有节点,并且设置python软连接

复制代码
cd  ~/.ssh
​
ssh-keygen -t rsa
​
#$IP为所有节点地址包括自身,按照提示输入yes 和root密码,ip地址为内网ip
ssh-copy-id $IP 
​
# 为每个节点设置python软链接
ssh $IP ln -s /usr/bin/python3 /usr/bin/python

编排K8S集群

  • 下载安装脚本
复制代码
wget https://github.com/easzlab/kubeasz/releases/download/3.3.1/ezdown
chmod +x ./ezdown
  • 下载kubeasz代码、二进制、默认容器镜像(更多关于ezdown的参数,运行./ezdown 查看)

复制代码
# 国内环境
./ezdown -D
# 海外环境
#./ezdown -D -m standard
  • 创建集群配置实例
复制代码
# 容器化运行kubeasz
./ezdown -S
​
# 创建新集群 k8s-01
docker exec -it kubeasz ezctl new k8s-01
2021-01-19 10:48:23 DEBUG generate custom cluster files in /etc/kubeasz/clusters/k8s-01
2021-01-19 10:48:23 DEBUG set version of common plugins
2021-01-19 10:48:23 DEBUG cluster k8s-01: files successfully created.
2021-01-19 10:48:23 INFO next steps 1: to config '/etc/kubeasz/clusters/k8s-01/hosts'
2021-01-19 10:48:23 INFO next steps 2: to config '/etc/kubeasz/clusters/k8s-01/config.yml'
  • 修改'/etc/kubeasz/clusters/k8s-01/hosts'
复制代码
vim /etc/kubeasz/clusters/k8s-01/hosts
​
# 修改为
# 'etcd' cluster should have odd member(s) (1,3,5,...)
[etcd]
192.168.59.135
192.168.59.141
#192.168.59.142
​
# master node(s)
[kube_master]
192.168.59.135
​
# work node(s)
[kube_node]
192.168.59.141
#192.168.59.142
  • 开始安装
复制代码
#建议配置命令alias,方便执行
echo "alias dk='docker exec -it kubeasz'" >> /root/.bashrc
source /root/.bashrc
​
# 一键安装,等价于执行docker exec -it kubeasz ezctl setup k8s-01 all
dk ezctl setup k8s-01 all
​
# 或者分步安装,具体使用 dk ezctl help setup 查看分步安装帮助信息
# dk ezctl setup k8s-01 01
# dk ezctl setup k8s-01 02
# dk ezctl setup k8s-01 03
# dk ezctl setup k8s-01 04
...

执行dk ezctl setup k8s-01 all ,最终成功安装结束

  • 断开SSH连接再重新连接,可以发现安装K8S成功
复制代码
 kubectl version         # 验证集群版本     
 kubectl get node        # 验证节点就绪 (Ready) 状态
 kubectl get pod -A      # 验证集群pod状态,默认已安装网络插件、coredns、metrics-server等
 kubectl get svc -A      # 验证集群服务状态 

查看节点信息

相关推荐
java_logo34 分钟前
Docker 部署 MinIO 全指南
运维·windows·mongodb·docker·容器
李憨憨--1 小时前
掌握 Kubernetes 的可观测性 (Tracestore)、安全性 (OPA)、自动化 (Flagger) 和自定义指标
kubernetes
三坛海会大神5553 小时前
k8s(九)安全机制
安全·容器·kubernetes
三坛海会大神5553 小时前
k8s(十二)Rancher详解
容器·kubernetes·rancher
没有bug.的程序员4 小时前
分布式架构未来趋势:从云原生到智能边缘的演进之路
java·分布式·微服务·云原生·架构·分布式系统
AI云原生4 小时前
云原生系列Bug修复:Docker镜像无法启动的终极解决方案与排查思路
运维·服务器·python·docker·云原生·容器·bug
啊啊啊啊8435 小时前
k8s lngress与安全机制
安全·容器·kubernetes
三坛海会大神5555 小时前
k8s(八)Ingress详解
云原生·容器·kubernetes
荣光波比5 小时前
K8S(十三)—— Helm3从入门到实战:简化Kubernetes应用部署与管理
云原生·容器·kubernetes
007php00713 小时前
百度面试题解析:微服务架构、Dubbo、Redis及其一致性问题(一)
redis·百度·docker·微服务·容器·职场和发展·架构