华为云云原生实践之基于CCE Kubernetes编排实战【与云原生的故事】

网友投稿 1101 2022-05-28

基于CCE Kubernetes编排实战

购买华为云CCE集群

登录华为云控制台,点击“服务列表”->“容器”->“云容器引擎CCE”,进入云容器引擎CCE控制台

选择标准版CCE集群,点击“创建”

选择相关的配置

配置参数如下:

① 计费模式:按需计费

② 区域:华北-北京四

③ 集群名称:ccetest

④ 版本:v1.19

⑤ 集群管理规模:50节点

⑥ 控制节点数:1

勾选协议

⑦ 虚拟私有云:预置环境预置的VPC

⑧ 所在子网:预置环境预置的子网

⑨ 网络模型:容器隧道网络

⑩ 容器网段:勾选“自动选择”其他参数默认

集群配置后,单击“下一步:创建节点”进入“创建节点”步骤。

配置参数如下:

①创建节点:现在添加

②计费模式:按需计费

③当前区域:华北-北京四

④可用区:任意

华为云云原生实践之基于CCE Kubernetes编排实战【与云原生的故事】

⑤节点类型:虚拟机节点

⑥节点名称: cce01-node1

⑦节点规格:c6s.xlarge.2 4核|8GB

操作系统配置

① 操作系统:选择公共镜像 EulerOS 2.5

② 系统盘:选择默认值,高IO,40G

弹性IP 选择“自动创建”,配置如下:

② 规格:全动态BGP

③ 计费模式:按带宽计费

④ 带宽类型:独享

⑤ 带宽大小 :5M

⑥ 登录方式:选择“密码”

⑦密码:自定义

其它参数默认

单击“下一步:安装插件”。系统资源插件必须要安装。其他默认即可

购买弹性云服务器

进入控制台,点击“服务列表”->“计算”->“弹性云服务器 ECS”

单击“购买弹性云服务器”

基础配置参数如下:

①计费模式:按需计费

②区域:北京四

③可用区:随机分配

④CPU架构:x86计算

⑤规格:通用计算增强型 | c6s.large.2 | 2vCPUs | 4 GiB

⑥镜像:公共镜像 | CentOS 7.6 64bit(40GB)

⑦主机安全:开通主机安全

⑧系统盘:高IO | 40 G

“下一步:网络配置”

网络配置参数如下:

①网络:必须与CCE集群所在的VPC相同

②扩展网卡:默认配置

③安全组:选择以分配的华为云账号命名的安全组

④弹性公网IP:现在购买

⑤线路:全动态BGP

⑥公网带宽:按流量计费

⑦带宽大小:5MB

“下一步:高级配置”

高级配置参数如下:

①云服务器名称:ecs-k8s

②登录凭证:密码

③密码:自定义

其余参数默认即可

“下一步:确认配置”阅读并勾选同意协议,“立即购买”

登录弹性云服务器

SSH 登录服务器

ssh root@120.46.133.117 #yes 输入密码

安装kubernetes客户端

下载kubectl

①下载kubectl配置文件。云容器引擎控制,“资源管理 > 集群管理”,点击命令行工具下拉菜单,然后点击kubectl 进入kubelet配置页面。

②在集群详情页中的“kubectl”页签下,在页面的步骤二中找到下载kubectl配置文件,点击”此处“,在弹出的弹框内点击“此处”

将下载的kubectl配置文件kubeconfig.json上传到ecs-k8s中

scp /home/user/Desktop/kubeconfig.json root@120.46.133.117:/root

安装和配置kubectl,弹性云服务器ecs-k8s

cd ~ wget https://sandbox-experiment-resource-north-4.obs.cn-north-4.myhuaweicloud.com/cce-kube-layout/kubernetes-client-linux-amd64.tar.gz ls tar -zxvf kubernetes-client-linux-amd64.tar.gz cp /root/kubernetes/client/bin/kubectl /home/ cp kubeconfig.json /home/ cd /home

添加kubectl可执行权限,并将文件移动到/usr/local/bin目录

chmod +x kubectl mv kubectl /usr/local/bin

将配置文件复制到$HOME/.kube/config文件中

mkdir $HOME/.kube cp kubeconfig.json $HOME/.kube/config

切换kubectl的访问模式为VPC网络内接入访问

kubectl config use-context internal

验证kubectl安装结果

kubectl cluster-info

Kubernetes组件实操

查看Kubernetes状态

# (1)查看节点状态。 kubectl get node #(2)查看现有namespace。 kubectl get namespace #(3)创建namespace。 kubectl create namespace new-namespace #(4)再次查看namespace列表。 kubectl get namespace #(5)删除新创建的namespace。 kubectl delete namespace new-namespace

Deployment实验

#(1)创建一个Deployment。 kubectl create deployment mydep --image=nginx #(2)通过命令行查看Deployment。 kubectl get deploy #(3)使用kubectl describe命令查看资源对象的详细信息。 kubectl describe deployment mydep

通过CCE控制台查看Deployment

点击控制台中的工作负载—>无状态负载,可以看到创建的工作负载mydep。

使用kubectl命令行工具查看对象

#(1)使用kubectl get命令,get all可以查看所有对象。 kubectl get all #(2)查看指定namespace的对象。 kubectl get all -n kube-system #(3)以交互模式查看对象的变化,按ctrl+c退出交互模式 kubectl get deployment -w #(4)查看完整的对象信息。 kubectl get deployment -o wide

创建自定义Deployment

#(1)在master节点创建/labfile/deployfile目录,用于保存配置文件。后续创建deployment的yaml文件保存在此处。 cd / mkdir labfile cd labfile/ mkdir deployfile cd deployfile/ #(2)创建deployment文件。 vim nginx-deployment.yaml

部署nginx-deployment

kubectl apply -f nginx-deployment.yaml

查看创建结果

kubectl describe deployment nginx-deployment kubectl get deployment

查看Pod

kubectl get pod

弹性伸缩Deployment

# 编辑之前创建的nginx-deployment.yaml文件,将副本数量“replicas”改为5。 vim nginx-deployment.yaml

按Esc键退出编辑,输入":wq"保存并退出,然后应用变更后的nginx-deployment.yaml文件

kubectl apply -f nginx-deployment.yaml

查看pod状态,确认Pod数量是否正确。

kubectl get pod

删除创建的deployment。

kubectl delete deployment nginx-deployment

DaemonSet实验

DaemonSet配置文件

mkdir /labfile/daemonfile cd /labfile/daemonfile/ # 创建DaemonSet的yaml文件。

创建DaemonSet

kubectl apply -f DaemonSet.yaml

查看创建的DaemonSet。

kubectl get daemonset --namespace=kube-system kubectl get pod --namespace=kube-system -o wide

DaemonSet自动恢复

kubectl get pod --namespace=kube-system

Docker Kubernetes 云原生 云容器引擎 CCE 云端实践

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:kafka性能调优解密(一)-- Broker端
下一篇:17.1 Linux LAMP环境搭建的前期准备
相关文章