From aa4e10ac3a9c7ccb064a7152266c388c4badcb2b Mon Sep 17 00:00:00 2001 From: zhangx501 Date: Sat, 24 Aug 2019 12:30:25 +0800 Subject: [PATCH] =?UTF-8?q?zh-trans:=20website/content/zh/docs/user-journe?= =?UTF-8?q?ys/users/cluster-operato=E2=80=A6=20(#15916)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * zh-trans: website/content/zh/docs/user-journeys/users/cluster-operator/intermediate.md * Update intermediate.md * Update intermediate.md * Update intermediate.md --- .../users/cluster-operator/intermediate.md | 221 ++++++++++++++++++ 1 file changed, 221 insertions(+) create mode 100644 content/zh/docs/user-journeys/users/cluster-operator/intermediate.md diff --git a/content/zh/docs/user-journeys/users/cluster-operator/intermediate.md b/content/zh/docs/user-journeys/users/cluster-operator/intermediate.md new file mode 100644 index 0000000000..41b74a4201 --- /dev/null +++ b/content/zh/docs/user-journeys/users/cluster-operator/intermediate.md @@ -0,0 +1,221 @@ +--- +reviewers: +- chenopis +layout: docsportal +css: /css/style_user_journeys.css +js: https://use.fontawesome.com/4bcc658a89.js, https://cdnjs.cloudflare.com/ajax/libs/prefixfree/1.0.7/prefixfree.min.js +title: 中级 +track: "USERS > CLUSTER OPERATOR > INTERMEDIATE" +content_template: templates/user-journey-content +--- + + +{{% capture overview %}} + + +如果您是一个集群操作者,希望扩展对 Kubernetes 的理解,本页及其相关主题会扩展[基础集群操作者页面](/docs/user-journeys/users/cluster-operator/foundational)上提供的信息。在本页中,你可以获得如何管理一个完整生产集群的关键 Kubernetes 任务的信息。 + +{{% /capture %}} + +{{% capture body %}} + +## 使用 ingress,网络,存储和工作负载 + + +Kubernetes 的介绍通常讨论简单的无状态应用程序。当您进入更复杂的开发,测试和生产环境时,您需要考虑更复杂的情况: + + +通信: Ingress 和网络 + +* [Ingress](/docs/concepts/services-networking/ingress/) + + +存储:Volumes 和 PersistentVolumes + +* [Volumes](/docs/concepts/storage/volumes/) +* [Persistent Volumes](/docs/concepts/storage/persistent-volumes/) + + +工作负载 + +* [DaemonSets](/docs/concepts/workloads/controllers/daemonset/) +* [Stateful Sets](/docs/concepts/workloads/controllers/statefulset/) +* [Jobs](/docs/concepts/workloads/controllers/jobs-run-to-completion/) +* [CronJobs](/docs/concepts/workloads/controllers/cron-jobs/) + + +Pods + +* [Pod 生命周期](/docs/concepts/workloads/pods/pod-lifecycle/) + * [初始化容器](/docs/concepts/workloads/pods/init-containers/) + * [Pod 预置](/docs/concepts/workloads/pods/podpreset/) + * [容器生命周期挂钩](/docs/concepts/containers/container-lifecycle-hooks/) + + +以及 Pod 如何处理调度,优先级,中断: + +* [污点和容忍度](/docs/concepts/configuration/taint-and-toleration/) +* [Pod 和优先级](/docs/concepts/configuration/pod-priority-preemption/) +* [中断](/docs/concepts/workloads/pods/disruptions/) +* [分配 Pod 到工作节点](/docs/concepts/configuration/assign-pod-node/) +* [管理容器的计算资源](/docs/concepts/configuration/manage-compute-resources-container/) +* [配置最佳实践](/docs/concepts/configuration/overview/) + + +## 实施安全最佳实践 + + +保护集群的工作超出了 Kubernetes 本身的范围。 + +在Kubernetes中,你可以配置访问的控制: + +* [控制对 Kubernetes API 的访问](/docs/reference/access-authn-authz/controlling-access/) +* [身份认证](/docs/reference/access-authn-authz/authentication/) +* [使用准入控制](/docs/reference/access-authn-authz/admission-controllers/) + + +您还可以配置授权。也就是说,您不仅可以决定用户和服务如何向 API 服务器进行身份认证,或者确定他们是否可以访问,还可以决定他们有权访问哪些资源。基于角色的访问控制(RBAC)是控制对 Kubernetes 资源授权的推荐机制。其他授权模式可以用于更具体的使用场景。 + +* [授权概述](/docs/reference/access-authn-authz/authorization/) +* [使用 RBAC 授权](/docs/reference/access-authn-authz/rbac/) + +您应该创建 Secrets 来保存敏感数据,例如密码,令牌或者密钥。但请注意,Secret 可以提供的保护存在限制。请参阅 [Secrets 文档中的风险部分](/docs/concepts/configuration/secret/#risks)。 + + + + +## 实现自定义日志和监控 + + +监控集群的健康和状态非常重要。收集指标,日志,并提供对这些信息的访问是常见的需求。Kubernetes 提供了一些基本的日志记录结构,您可能需要使用其他工具来帮助汇总和分析日志数据。 + + +从 [Kubernetes 日志基础知识](/docs/concepts/cluster-administration/logging/) 开始,了解容器如何执行日志记录和常见模式。集群运维人员通常希望添加一些东西来收集和聚合这些日志。请参阅以下主题: + +* [使用 Elasticsearch 和 Kibana 记录日志](/docs/tasks/debug-application-cluster/logging-elasticsearch-kibana/) +* [使用 Stackdriver 记录日志](/docs/tasks/debug-application-cluster/logging-stackdriver/) + + +与日志聚合一样,许多集群使用其他软件来帮助捕获 metrics 并显示它们。这里是相关工具的概述:[用于监视计算,存储和网络资源的工具](/docs/tasks/debug-application-cluster/resource-usage-monitoring/)。Kubernetes 还支持[资源指标管道](/docs/tasks/debug-application-cluster/resource-metrics-pipeline/),还可以在水平 Pod 自动伸缩器(Horizontal Pod Autoscaler)中使用自定义 metrics。 + + +[Prometheus](https://prometheus.io/)是另一个 CNCF 项目,它是支持捕获和临时收集指标的常用选择。安装 Prometheus 有几种方式,包括使用[stable/prometheus](https://github.com/kubernetes/charts/tree/master/stable/prometheus) [helm](https://helm.sh/)chart,CoreOS 提供的[prometheus operator](https://github.com/coreos/prometheus-operator) 和 [kube-prometheus](https://github.com/coreos/prometheus-operator/tree/master/contrib/kube-prometheus),增加了 Grafana 仪表板和常用配置。 + + +[Minikube](https://github.com/kubernetes/minikube) 和某些 Kubernetes 集群的通常配置是[与 InfluxDB 和 Grafana 一起](https://github.com/kubernetes/heapster/blob/master/docs/influxdb.md)使用[Heapster](https://github.com/kubernetes/heapster)。这里有一个[如何在集群中安装这个配置的参考](https://blog.kublr.com/how-to-utilize-the-heapster-influxdb-grafana-stack-in-kubernetes-for-monitoring-pods-4a553f4d36c9)。截止 Kubernetes 1.11,根据[sig-instrumentation](https://github.com/kubernetes/community/tree/master/sig-instrumentation),Heapster 已经弃用。更多信息,请参阅 [Prometheus vs. Heapster vs. Kubernetes Metrics APIs](https://brancz.com/2018/01/05/prometheus-vs-heapster-vs-kubernetes-metrics-apis/) 。 + + +托管监控,APM 或数据分析服务,例如[Datadog](https://docs.datadoghq.com/integrations/kubernetes/) 或者 [Instana](https://www.instana.com/supported-integrations/kubernetes-monitoring/) 也提供 Kubernetes 集成。 + + +## 其他资源 + + +集群管理: + +* [集群故障排除](/docs/tasks/debug-application-cluster/debug-cluster/) +* [调试 Pod 和 Replication Controller](/docs/tasks/debug-application-cluster/debug-pod-replication-controller/) +* [调试初始化容器](/docs/tasks/debug-application-cluster/debug-init-containers/) +* [调试 Stateful Set](/docs/tasks/debug-application-cluster/debug-stateful-set/) +* [调试应用程序](/docs/tasks/debug-application-cluster/debug-application/) +* [使用资源管理器来调查您的集群](https://github.com/kubernetes/examples/blob/master/staging/explorer/README.md) + +{{% /capture %}}