Choerodon猪齿鱼实践之集群管理(二)
通过之前的文章《Choerodon实践之集群管理(一)》,我们了解到了Choerodon集群与k8s集群之间的关联、集群权限管理以及节点详情查看的功能。那如何更加灵活便捷地对k8s集群进行监控呢?又怎么对监控组件进行安装、配置与管理呢?本文旨在为大家介绍Choerodon平台中的组件管理以及集群监控的功能。
功能背景
因为集群管理员或运维人员需要知道集群中所有节点以及节点下各个Pod的资源使用情况,为了收集与展示这些指标,Choerodon集群管理模块主要使用了Prometheus来实现对集群的监控。同时,Choerodon还在界面中提供了直接安装、配置与卸载Prometheus等监控组件的入口,用户可在此通过界面化的形式高效快速地在集群中完成各组件的安装与配置。
除此之外,为了实现在Kubernetes集群中使用 HTTPS 协议的功能,Choerodon在环境资源中支持了对证书的管理,同时为了确保集群中的证书有效且是最新的,并能在到期前按照配置的时间续订证书,Choerodon又提供了对cert-manager组件的支持,用户在组件管理界面即可实现对cert-manager组件的安装与卸载。
组件管理功能
集群管理中组件管理模块目前支持对cert-manager和监控组件(Prometheus、Grafana、AlertManager)进行安装与管理,用于管理集群下所有组件
CertManager
cert-manager 是一个云原生证书管理开源项目,用于确保集群中的证书有效且是最新的,并能在到期前按照配置的时间续订证书,支持 Let’s Encrypt, HashiCorp Vault 这些免费证书的签发。而在Kubernetes集群中,我们可以通过 Kubernetes Ingress 和 Let’s Encrypt 实现外部服务的自动化 HTTPS。
在Kubernetes集群中使用 HTTPS 协议,需要一个证书管理器、一个证书自动签发服务,主要通过 Ingress 来发布 HTTPS 服务,因此需要Ingress Controller并进行配置,启用 HTTPS 及其路由。
安装cert-manager
在“集群管理-组件管理”页面,选中CertManager组件,点击安装按钮,即可在集群中安装该组件。(此操作仅能在“运行中”状态的集群下执行)
对于Choerodon 0.20版本之前已安装CertManager组件的集群,此处会直接展示出该组件是已安装的状态。若是在升级0.20后新建的集群,则需在此处自主安装CertManager组件。
若集群未安装CertManager组件,将不能在集群对应的环境下进行“创建证书”的操作。
卸载cert-manager
在“集群管理-组件管理”页面,选中CertManager组件,点击卸载按钮即可。(此操作仅能在“运行中”状态的集群下执行)
监控组件
监控组件用于帮助监控集群中资源的使用情况,该组件包括了Prometheus、Grafana和AlertManager。其中Prometheus用于实现对监控数据的获取、存储以及查询;Grafana可作为可视化界面来展示监控数据;AlertManager则是Prometheus体系中的告警组件。
监控组件的结构图如下:
安装监控组件
在“集群管理-组件管理”页面,选中监控组件,点击安装按钮,右侧会弹出安装监控组件的配置页面,需填入:admin密码(即Grafana组件admin账户的登录密码)、域名地址(即Grafana的访问地址)、并且为其中的3个组件分别选择一个满足条件的PV(对应组件需要使用到的PV,需要提前在PV管理中创建)。配置完成后,点击安装即可。(此操作仅能在“运行中”状态的集群下执行)
监控组件安装成功后,即可在“集群管理-集群监控”页面看到集群监控的数据。
修改监控组件
监控组件安装成功后,仅支持修改域名地址(即Grafana的访问地址)。
卸载监控组件
在“集群管理-组件管理”页面,选中监控组件,点击卸载按钮即可。(此操作仅能在“运行中”状态的集群下执行)
集群监控功能
集群监控功能用于展示集群中所有节点以及节点下各个Pod的资源使用情况,如CPU、内存、网络吞吐和带宽占用、磁盘I/O和磁盘使用等指标。
在“组件管理”页面中成功安装了监控组件后,只要在页面中成功登录Grafana(此处可以使用有集群权限的Choerodon账号直接登录),即可查看集群监控数据。
集群监控界面如下:
若想查看集群下某个节点以及节点中Pods的CPU、内存的使用情况,须在树结构中点击对应的节点,最后选择“节点监控”Tab页即可。
总结
组件管理与集群监控使得Choerodon集群管理的功能更加完善。集群管理员与运维人员可以通过界面更高效地对各个组件进行安装、配置与管理。而通过集群监控功能,集群管理员与运维人员又能更便捷地监控到集群中资源的使用情况。
关于猪齿鱼
Choerodon 猪齿鱼作为开源多云应用敏捷全链路技术平台,是基于开源技术Kubernetes,Istio,knative,Gitlab,Spring Cloud来实现本地和云端环境的集成,实现企业多云/混合云应用环境的一致性。平台通过提供精益敏捷、持续交付、容器环境、微服务、DevOps等能力来帮助组织团队来完成软件的生命周期管理,从而更快、更频繁地交付更稳定的软件。
更加详细的内容,请参阅Release Notes和官网。
大家也可以通过以下社区途径了解猪齿鱼的最新动态、产品特性,以及参与社区贡献:
欢迎加入Choerodon猪齿鱼社区,共同为企业数字化服务打造一个开放的生态平台。
作者:毛智伟
出处:Choerodon
欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。