0
点赞
收藏
分享

微信扫一扫

在AI云原生时代应该如何应对复杂的算力环境

青鸾惊鸿 2024-06-14 阅读 9

目录

引言

一、为什么需要监控K8s集群?

二、Rancher监控K8s集群的优势

三、Rancher和k8s的区别

四、Rancher 安装及配置

(一)安装rancher

1.下载镜像

2.运行容器

3.登录Rancher平台

4.添加集群

5.查看集群

6.Rancher 部署监控系统

7.使用Rancher仪表盘管理 k8s 集群

7.1 创建名称空间

7.2 创建Deployment资源

7.3 创建 service

7.4 访问测试

8.其它操作


引言

随着容器化技术的快速发展,Kubernetes已经成为企业部署和管理微服务、云原生应用的首选。然而,随着集群规模的扩大和复杂性的增加,如何有效地监控K8s集群的性能、资源使用情况以及应用的健康状况,成为了运维人员必须面对的挑战。Rancher作为一款开源的企业级K8s管理平台,提供了强大的监控能力,帮助用户实现集群的全方位掌控。

一、为什么需要监控K8s集群?

监控K8s集群的重要性不言而喻。首先,通过监控可以实时了解集群的资源使用情况,包括CPU、内存、磁盘、网络等关键指标,从而确保集群的稳定性和可用性。其次,监控可以帮助运维人员快速发现集群中的异常和故障,及时进行干预和修复,避免业务中断。此外,监控还可以为集群的扩容、优化和迁移提供数据支持,帮助企业实现更高效的资源利用和管理

二、Rancher监控K8s集群的优势

Rancher作为一款集成化的K8s管理平台,为用户提供了全面的监控能力。以下是Rancher监控K8s集群的几个优势:

易用性:Rancher提供了直观的图形化界面,用户可以通过简单的操作就能实现对集群的实时监控和告警管理。

灵活性:Rancher支持多种监控插件和工具,如Prometheus、Grafana等,用户可以根据自己的需求选择合适的监控方案。

可扩展性:Rancher的监控能力可以随着集群规模的扩大而扩展,满足各种规模的K8s集群监控需求。

安全性:Rancher遵循严格的权限管理策略,确保只有授权的用户才能访问和修改监控数据。

三、Rancher和k8s的区别

Rancher 和 k8s 都是用来作为容器的调度与编排系统。但是 rancher 不仅能够管理应用容器,更重要的一点是能够管理 k8s 集群。 Rancher2.x 底层基于 k8s 调度引擎,通过 Rancher 的封装,用户可以在不熟悉 k8s 概念的情况下轻松的通过 Rancher 来部署容器到k8s集群当中。

四、Rancher 安装及配置

环境准备

主机名IP地址主机类型资源配额
master01192.168.83.30k8s集群控制节点4C4G
node01192.168.83.40k8s集群工作节点4C4G
node02192.168.83.50k8s集群工作节点4C4G
rancher192.168.83.60Rancher节点4C8G

(一)安装rancher

1.下载镜像

2.运行容器

在Rancher节点,即服务端,进行操作

[root@rancher ~]#docker run -d --restart=unless-stopped -p 80:80 -p 443:443 --privileged --name rancher rancher/rancher:v2.5.7
bffc75ab763fc0fc43f87a159ec1cd98f450ce8a6b0c336e28c123b78cc142d1
[root@rancher ~]#docker ps
CONTAINER ID   IMAGE                    COMMAND           CREATED         STATUS         PORTS                                                                      NAMES
bffc75ab763f   rancher/rancher:v2.5.7   "entrypoint.sh"   4 seconds ago   Up 2 seconds   0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp   rancher

3.登录Rancher平台

浏览器访问Rancher服务端IP地址,由于没有SSL证书,忽略直接进入即可

第一次访问可能会拒绝,需要刷新界面,而后选择中文,输入密码,默认用户名称为admin

登录后如是英文页面,可点击右下角语言选项选择中文

4.添加集群

[root@master01 rancher]#curl --insecure -sfL https://192.168.83.60/v3/import/kvcpwhv4r5rlqbvccgznpxkmrkmmd9bzvl5nc46n2t9zjhs6rtttps_c-s2frn.yaml | kubectl apply -f -
error: no objects passed to apply
#第一次失败,需要再执行一次
[root@master01 rancher]#curl --insecure -sfL https://192.168.83.60/v3/import/kvcpwhv4r5rlqbvccgznpxkmrkmmd9bzvl5nc46n2t9zjhs6rtttps_c-s2frn.yaml | kubectl apply -f -
clusterrole.rbac.authorization.k8s.io/proxy-clusterrole-kubeapiserver created
clusterrolebinding.rbac.authorization.k8s.io/proxy-role-binding-kubernetes-master created
namespace/cattle-system created
serviceaccount/cattle created
clusterrolebinding.rbac.authorization.k8s.io/cattle-admin-binding created
secret/cattle-credentials-a0245e9 created
clusterrole.rbac.authorization.k8s.io/cattle-admin created
deployment.apps/cattle-cluster-agent created
------------------------------------------------------------------------------------
[root@master01 rancher]#kubectl get ns cattle-system
NAME              STATUS   AGE
cattle-system     Active   118s
[root@master01 rancher]#kubectl get all -n cattle-system 
NAME                                        READY   STATUS    RESTARTS   AGE
pod/cattle-cluster-agent-7cc4d8b7df-cjpwk   1/1     Running   0          59s

NAME                                   READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/cattle-cluster-agent   1/1     1            1           2m33s

NAME                                              DESIRED   CURRENT   READY   AGE
replicaset.apps/cattle-cluster-agent-54b795cff7   0         0         0       2m33s
replicaset.apps/cattle-cluster-agent-7cc4d8b7df   1         1         1       59s

5.查看集群

6.Rancher 部署监控系统

7.使用Rancher仪表盘管理 k8s 集群

点击【仪表盘】进入 k8s 集群仪表盘界面

7.1 创建名称空间

在master01服务器中查看

[root@master01 ~]#kubectl get ns rancher-test 
NAME           STATUS   AGE
rancher-test   Active   37s
7.2 创建Deployment资源

在master01服务器中查看

[root@master01 ~]#kubectl get deployments.apps,pod -n rancher-test 
NAME                                 READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/nginx-rancher-test   3/3     3            3           80s

NAME                                      READY   STATUS    RESTARTS   AGE
pod/nginx-rancher-test-6978bb677f-4ngph   1/1     Running   0          80s
pod/nginx-rancher-test-6978bb677f-dptg5   1/1     Running   0          80s
pod/nginx-rancher-test-6978bb677f-qzx5n   1/1     Running   0          80s
7.3 创建 service

在master01服务器中查看

[root@master01 ~]#kubectl get deployments.apps,pod,svc -n rancher-test 
NAME                                 READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/nginx-rancher-test   3/3     3            3           6m6s

NAME                                      READY   STATUS    RESTARTS   AGE
pod/nginx-rancher-test-6978bb677f-4ngph   1/1     Running   0          6m6s
pod/nginx-rancher-test-6978bb677f-dptg5   1/1     Running   0          6m6s
pod/nginx-rancher-test-6978bb677f-qzx5n   1/1     Running   0          6m6s

NAME                        TYPE       CLUSTER-IP     EXTERNAL-IP   PORT(S)        AGE
service/nginx-rancher-svc   NodePort   10.96.136.41   <none>        80:32000/TCP   35s
7.4 访问测试

访问集群任意节点的32000端口

8.其它操作

管理告警通知:Rancher支持多种告警通知方式,如邮件、Slack等。用户可以设置告警规则,当集群中的某个指标超过阈值时,系统将自动发送告警通知给指定的接收者。

例如添加通知

通过Rancher的监控功能,用户可以实现对K8s集群的全方位掌控。无论是实时查看集群状态、快速定位故障还是进行性能优化,Rancher都能提供有力的支持。随着容器化技术的不断发展,Rancher将继续优化和完善其监控能力,为企业提供更加稳定、高效和安全的K8s管理方案。

举报

相关推荐

0 条评论