2023云计算技能大赛容器云


容器云部署

一.前期准备

1.准备虚拟机

使用Centos_7.9.2009镜像创建两台虚拟机,配置好网络IP,关闭防火墙,将chinaskills_cloud_paas_v2.0.2.iso镜像上传至root目录下,将root密码设置为000000

节点IP 角色 备注
192.168.200.10 Master Kubernetes 集群 master 节点、Harbor 仓库节点
192.168.200.20 Worker Kubernetes 集群 node 节点

2.基础环境准备

将上传在root目录的安装包(chinaskills_cloud_paas_v2.0.2.iso)中的文件提取到/opt目录

mount /root/chinaskills_cloud_paas_v2.0.2.iso /mnt/
cp -rf /mnt/* /opt
umount /root/chinaskills_cloud_paas_v2.0.2.iso

3.安装kubeeasy

kubeeasy 为 Kubernetes 集群专业部署工具,极大的简化了部署流程。

mv /opt/kubeeasy /usr/bin/kubeeasy

4.安装依赖包

此步骤主要完成 docker-ce、git、unzip、vim、wget 等工具的安装。

可通过命令 tail -f /var/log/kubeinstall.log 查看安装详情或排查错误

kubeeasy install depend \ 
--host 192.168.200.10,192.168.200.20 \ # 所有主机节点 IP
--user root \  # 主机登录用户,默认为root
--password 000000 \ # 主机登录密码,所有节点需保持密码一致
--offline-file /opt/dependencies/base-rpms.tar.gz # 离线安装包路径

5.配置SSH免密

(1) 在master节点,检测集群节点连通性

kubeeasy check ssh \ 
--host 192.168.200.10,192.168.200.20 \ 
--user root \ 
--password 000000

(2)在master节点,完成所有节点间的免密

kubeeasy create ssh-keygen \
--master 192.168.200.10 \ # master节点
--worker 192.168.200.20 \ # 所有worker节点
--user root 
--password 000000

二.部署Kubernetes 集群(K8s)

1.Kubernetes 集群

(1) 本次安装的 Kubernetes 版本为 v1.22.1,在 master 节点执行以下命令部署 Kubernetes 集群

kubeeasy install kubernetes \ 
--master 192.168.200.10 \ 
--worker 192.168.200.20 \ 
--user root \ 
--password 000000 \ 
--version 1.22.1 \ # Kubernetes 版本,此处只能为 1.22.1
--offline-file /opt/kubernetes.tar.gz

(2) 部署完成后查看集群状态 :kubectl cluster-info

Kubernetes control plane is running at https://apiserver.cluster.local:6443 
CoreDNS is running at 

https://apiserver.cluster.local:6443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy To further debug and diagnose cluster problems, 

use 'kubectl cluster-info dump'.
# 若在node节点无法查看,需要将master节点的.kube发放到node节点

(3) 查看节点负载情况:kubectl top nodes --use-protocol-buffers

NAME CPU(cores)    CPU%   MEMORY(bytes)  MEMORY% 
k8s-master-node1   389m     4% 6926Mi      43% 
k8s-worker-node1   875m    10% 3365Mi      21%

(4) 登录一道云云开发平台

在浏览器访问http://master_IP:30080, 设置admin用户密码为(00000000),并登录平台

容器云登录界面

三.部署 KubeVirt 集群

在 master 节点执行以下命令安装 KubeVirt:

kubeeasy add --virt kubevirt

查看 Pod:

kubectl -n kubevirt get pods

容器云kubevirt

四.部署 Istio

在 master 节点执行以下命令安装 istio:

kubeeasy add --istio istio

查看Pod

kubectl -n istio-system get pods

容器云istio

查看 Istio 版本信息:

istioctl version
# 结果如下
client version: 1.12.0 
control plane version: 1.12.0 
data plane version: 1.12.0 (2 proxies)

相关的可视化界面

Grafans http://master_ip:33000
Prometheus http://master_ip:30090
Jaeger http://master_ip:30686
kiali  http://master_ip:200001

五.部署Harbor仓库

kubeeasy add --registry harbor

部署完成后查看 Harbor 仓库状态

systemctl status harbor

在浏览器通过http://master_ip 访问harbor 管理员账户(admin/Harbor12345)

到此,搭建完成

六.基础运维

1.重置集群

若集群部署失败或出现故障,可重置集群重新部署,重置命令如下:

kubeeasy reset  #重置完成后,从安装依赖重新开始

2.添加节点

(1)在 master 节点执行以下命令,给新节点安装依赖包:

kubeeasy install depend \
--host 10.24.2.12 \ # 10.24.2.12 为新增节点的 IP 地址
--user root \ 
--password 000000 \ 
--offline-file /opt/dependencies/base-rpms.tar.gz

(2)在 master 节点执行以下命令,将新节点加入集群:

kubeeasy add \ 
--worker 10.24.2.12\ # 10.24.2.12 为新增节点的 IP 地址
--user root \ 
--password 000000 \ 
--offline-file /opt/kubernetes.tar.gz

文章作者: I W
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 I W !
  目录