https://v3-0.docs.kubesphere.io/zh/docs/pluggable-components/
1.应用商店:
---一个可以在内部实现数据和应用共享、并制定应用交付流程的行业标准的组件。
-在安装后启用应用商店
1)以 admin 身份登录控制台,点击左上角的平台管理,选择集群管理。
2)点击自定义资源 CRD,在搜索栏中输入 clusterconfiguration,点击结果查看其详细页面。
3)在资源列表中,点击 ks-installer 右边的三个点,选择编辑配置文件。
4)在该 YAML 文件中,搜寻到 openpitrix,将 enabled 的 false 改为 true。完成后,点击右下角的更新,保存配置。
5)您可以使用 Web Kubectl 工具执行以下命令来检查安装过程:
sudo kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l app=ks-install -o jsonpath='{.items[0].metadata.name}') -f6)验证组件的安装
a.进入服务组件,检查 OpenPitrix 的状态
b.执行以下命令来检查 Pod 的状态:
kubectl get pod -n openpitrix-system
如果组件运行成功,输出结果如下:
NAME READY STATUS RESTARTS AGE
hyperpitrix-generate-kubeconfig-pznht 0/2 Completed 0 1h6m
hyperpitrix-release-app-job-hzdjf 0/1 Completed 0 1h6m
openpitrix-hyperpitrix-deployment-fb76645f4-crvmm 1/1 Running 0 1h6m
2.DevOps
基于 Jenkins 的 KubeSphere DevOps 系统是专为 Kubernetes 中的 CI/CD 工作流设计的,它提供了一站式的解决方案,帮助开发和运维团队用非常简单的方式构建、测试和发布应用到 Kubernetes。它还具有插件管理、Binary-to-Image (B2I)、Source-to-Image (S2I)、代码依赖缓存、代码质量分析、流水线日志等功能。
DevOps 系统为用户提供了一个自动化的环境,应用可以自动发布到同一个平台。它还兼容第三方私有镜像仓库(如 Harbor)和代码库(如 GitLab/GitHub/SVN/BitBucket)。它为用户提供了全面的、可视化的 CI/CD 流水线,打造了极佳的用户体验,而且这种兼容性强的流水线能力在离线环境中非常有用。
有关更多信息,请参见 DevOps 用户指南。
步骤同上:
4)搜寻到 devops,将 enabled 的 false 改为 true
6)进入服务组件,检查 DevOps 的状态
3.日志系统
---用于存储日志数据。不建议在生产环境中使用内置 Elasticsearch。
KubeSphere 为日志收集、查询和管理提供了一个强大的、全面的、易于使用的日志系统。它涵盖了不同层级的日志,包括租户、基础设施资源和应用。用户可以从项目、工作负载、Pod 和关键字等不同维度对日志进行搜索。与 Kibana 相比,KubeSphere 基于租户的日志系统中,每个租户只能查看自己的日志,从而可以在租户之间提供更好的隔离性和安全性。除了 KubeSphere 自身的日志系统,该容器平台还允许用户添加第三方日志收集器,如 Elasticsearch、Kafka 和 Fluentd。
有关更多信息,请参见日志查询。
步骤同上:
4)搜寻到 logging,将 enabled 的 false 改为 true
-默认情况下,如果启用了日志系统,KubeKey 将安装内置 Elasticsearch。对于生产环境,如果您想启用日志系统,强烈建议在 config-sample.yaml 中设置以下值,尤其是 externalElasticsearchUrl 和 externalElasticsearchPort。在安装前提供以下信息后,KubeKey 将直接对接您的外部 Elasticsearch,不再安装内置 Elasticsearch。
es: # Storage backend for logging, tracing, events and auditing.
elasticsearchMasterReplicas: 1 # total number of master nodes, it's not allowed to use even number
elasticsearchDataReplicas: 1 # total number of data nodes
elasticsearchMasterVolumeSize: 4Gi # Volume size of Elasticsearch master nodes
elasticsearchDataVolumeSize: 20Gi # Volume size of Elasticsearch data nodes
logMaxAge: 7 # Log retention time in built-in Elasticsearch, it is 7 days by default.
elkPrefix: logstash # The string making up index names. The index name will be formatted as ks-<elk_prefix>-log
externalElasticsearchUrl: # The URL of external Elasticsearch
externalElasticsearchPort: # The port of external Elasticsearch
6)进入服务组件,检查 Logging 的状态,
4.事件系统
KubeSphere 事件系统使用户能够跟踪集群内部发生的事件,例如节点调度状态和镜像拉取结果。这些事件会被准确记录下来,并在 Web 控制台中显示具体的原因、状态和信息。要查询事件,用户可以快速启动 Web 工具箱,在搜索栏中输入相关信息,并有不同的过滤器(如关键字和项目)可供选择。事件也可以归档到第三方工具,例如 Elasticsearch、Kafka 或 Fluentd。
有关更多信息,请参见事件查询。
4)搜寻到 events,将 enabled 的 false 改为 true。
-Elasticsearch同上
6)进入服务组件,检查 Logging 的状态。
5.告警和通知系统
---告警和通知需要同时启用。
告警和通知是可观察性的两个重要构件,与监控和日志密切相关。KubeSphere 中的告警系统与其主动式故障通知 (Proactive Failure Notification) 系统相结合,使用户可以基于告警策略了解感兴趣的活动。当达到某个指标的预定义阈值时,会向预先配置的收件人发出告警,您可以自行设置通知方式,包括 Email、企业微信和 Slack 等。有了功能强大的告警和通知系统,您就可以迅速发现并提前解决潜在问题,避免您的业务受影响。
有关更多信息,请参见告警策略和告警信息。
4)搜寻到 alerting 和 notification,将 enabled 的 false 改为 true。
6)进入平台管理, 可以看到告警消息和告警策略。
6.审计日志
KubeSphere 审计日志系统提供了一套与安全相关并按时间顺序排列的记录,按顺序记录了与单个用户、管理人员或系统其他组件相关的活动。对 KubeSphere 的每个请求都会生成一个事件,然后写入 Webhook,并根据一定的规则进行处理。
有关更多信息,请参见审计日志查询。
4)搜寻到 auditing,将 enabled 的 false 改为 true。
-Elasticsearch同上
6)进入服务组件,检查 Logging 的状态。
7.服务网格
---支持灰度发布策略、流量拓扑、流量管理和分布式链路追踪。
KubeSphere 服务网格基于 Istio,将微服务治理和流量管理可视化。它拥有强大的工具包,包括熔断机制、蓝绿部署、金丝雀发布、流量镜像、分布式链路追踪、可观察性和流量控制等。KubeSphere 服务网格支持代码无侵入的微服务治理,帮助开发者快速上手,Istio 的学习曲线也极大降低。KubeSphere 服务网格的所有功能都旨在满足用户的业务需求。
有关更多信息,请参见灰度发布。
4)搜寻到 servicemesh,将 enabled 的 false 改为 true。
6)进入服务组件,查看 Istio 的状态。
8.网络策略
用户可以在 KubeSphere 中配置原生 Kubernetes 的网络策略。网络策略是一种以应用为中心的结构,使您能够指定如何允许 Pod 通过网络与各种网络实体进行通信。通过网络策略,用户可以在同一集群内实现网络隔离,这意味着可以在某些实例 (Pod) 之间设置防火墙。
有关更多信息,请参见网络策略。
4)搜寻到 networkpolicy,将 enabled 的 false 改为 true。
6)进入平台管理, 网络管理中看到网络策略
9.Metrics Server
KubeSphere 支持用于部署的 Pod 弹性伸缩程序 (HPA)。在 KubeSphere 中,Metrics Server 控制着 HPA 是否启用。您可以根据不同类型的指标(例如 CPU 和内存使用率,以及最小和最大副本数),使用 HPA 对象对部署 (Deployment) 自动伸缩。通过这种方式,HPA 可以帮助确保您的应用程序在不同情况下都能平稳、一致地运行。
4)搜寻到 metrics_server,在 enabled 一行将 false 更改为 true。
6)执行以下命令以验证 Metrics Server 的 Pod 在正常运行。
kubectl get pod -n kube-system
如果 Metrics Server 安装成功,那么集群可能会返回以下输出 (metrics-server-5ddd98b7f9-jjdln):
NAME READY STATUS RESTARTS AGE
calico-kube-controllers-59d85c5c84-m4blq 1/1 Running 0 28m
....
metrics-server-5ddd98b7f9-jjdln 1/1 Running 0 7m17s
....