中级

USERS > CLUSTER OPERATOR > INTERMEDIATE
Introduction
sections in this doc

如果您是一个集群操作者,希望扩展对 Kubernetes 的理解,本页及其相关主题会扩展基础集群操作者页面上提供的信息。在本页中,你可以获得如何管理一个完整生产集群的关键 Kubernetes 任务的信息。

使用 ingress,网络,存储和工作负载

Kubernetes 的介绍通常讨论简单的无状态应用程序。当您进入更复杂的开发,测试和生产环境时,您需要考虑更复杂的情况:

通信: Ingress 和网络

存储:Volumes 和 PersistentVolumes

工作负载

Pods

以及 Pod 如何处理调度,优先级,中断:

实施安全最佳实践

保护集群的工作超出了 Kubernetes 本身的范围。

在Kubernetes中,你可以配置访问的控制:

您还可以配置授权。也就是说,您不仅可以决定用户和服务如何向 API 服务器进行身份认证,或者确定他们是否可以访问,还可以决定他们有权访问哪些资源。基于角色的访问控制(RBAC)是控制对 Kubernetes 资源授权的推荐机制。其他授权模式可以用于更具体的使用场景。

您应该创建 Secrets 来保存敏感数据,例如密码,令牌或者密钥。但请注意,Secret 可以提供的保护存在限制。请参阅 Secrets 文档中的风险部分

实现自定义日志和监控

监控集群的健康和状态非常重要。收集指标,日志,并提供对这些信息的访问是常见的需求。Kubernetes 提供了一些基本的日志记录结构,您可能需要使用其他工具来帮助汇总和分析日志数据。

Kubernetes 日志基础知识 开始,了解容器如何执行日志记录和常见模式。集群运维人员通常希望添加一些东西来收集和聚合这些日志。请参阅以下主题:

与日志聚合一样,许多集群使用其他软件来帮助捕获 metrics 并显示它们。这里是相关工具的概述:用于监视计算,存储和网络资源的工具。Kubernetes 还支持资源指标管道,还可以在水平 Pod 自动伸缩器(Horizontal Pod Autoscaler)中使用自定义 metrics。

Prometheus是另一个 CNCF 项目,它是支持捕获和临时收集指标的常用选择。安装 Prometheus 有几种方式,包括使用stable/prometheus helmchart,CoreOS 提供的prometheus operatorkube-prometheus,增加了 Grafana 仪表板和常用配置。

Minikube 和某些 Kubernetes 集群的通常配置是与 InfluxDB 和 Grafana 一起使用Heapster。这里有一个如何在集群中安装这个配置的参考。截止 Kubernetes 1.11,根据sig-instrumentation,Heapster 已经弃用。更多信息,请参阅 Prometheus vs. Heapster vs. Kubernetes Metrics APIs

托管监控,APM 或数据分析服务,例如Datadog 或者 Instana 也提供 Kubernetes 集成。

其他资源

反馈