Kubernetes 基本术语集的汉语改写(v1.11)

这是什么? (Zhè shì ?)

我已经根据 Kubernetes 文档中的标准化术语表创建了翻译草案。如果有任何不自然之处或更易理解的解释建议,请在评论或其他方式中提出。

顺便提一句,目标文档的版本是 v1.11(https://kubernetes.io/docs/reference/glossary/?all=true)。

基本用语集合(标准术语表)

此术语集的目标是从广泛的 Kubernetes 技术中提取共同的项目并进行整理。其中包含了不仅限于 Kubernetes 特定技术术语,还包含有用内容的常见词汇。

注釈

注解(annotation)中的元数据是用来为对象添加除了识别用途之外的属性键值对(key-value)。元数据可以是小的、大的、结构化的或非结构化的。它还可以包含标签不允许的字符。像工具和库这样的客户端可以读取元数据。

应用架构师

负责应用程序的高级设计。
设计师(架构师)负责应用程序的实现,并通过可扩展且易于维护的方法,与周围的组件进行交互。周围的组件包括数据库、日志记录、基础设施和微服务。

应用程序开发人员

我是一名在Kubernetes集群中编写应用程序的开发人员。应用程序的开发者将专注于应用程序的某个部分。这个专注的范围因规模而大不相同。

审批人

我是负责审核和批准对Kubernetes代码的贡献的人。代码审核着重关注代码质量和准确性,而批准着重关注是否接受了贡献的整体视角。整体视角包括前后兼容性、API和标志的惯例遵守、轻微的性能和准确性问题以及与其他部件和系统的互动等。批准者的角色在于确定代码库的某一部分范围内。

CLA(貢献者許諾合意)

這是給予貢獻開源專案的貢獻者(或稱為貢獻者)的許可(或稱為授權)。
CLA被用來避免與貢獻的資源或知識產權(IP)相關的法律爭議。

证书

这是一个被加密的安全文件,用于验证与 Kubernetes 集群的连接。
通过证书,保证 Kubernetes 集群内的应用可以安全地连接到 Kubernetes API。经过证书认证的客户端可以访问该 API。

云控制器管理器

Kubernetes v1.6 开始引入了一个名为 cloud-controller-manager 的新二进制文件。cloud-controller-manager 是一个用于嵌入特定于云的控制循环的守护进程。云特定的控制循环最初包含在 kube-controller-manager 中。由于云服务提供商的开发和发布与 Kubernetes 项目不同,通过将云特定的代码抽象为 cloud-controller-manager 二进制文件,云服务提供商可以独立于核心 Kubernetes 代码进行演进。在 Kubernetes 1.8 中,cloud-controller-manager 是一个 alpha 功能(译者注:实验性引入)。在未来的版本中,它将成为与 Kubernetes 在任何云环境中集成的理想方式。

云服务提供商

クラウドプロバイダは、Kubernetesクラスタを実行できるクラウドコンピューティング基盤(プラットフォーム)を提供する会社です。彼らは、クラウドコンピューティング基盤(プラットフォーム)を提供するために、かつてのクラウドサービスプロバイダ(CSP)とも呼ばれます。彼らは、IaaS(インフラストラクチャスアーサービス)やPaaS(プラットフォームスアーサービス)などのサービスを提供することができます。クラウドプロバイダは、Kubernetesクラスタをホストするだけでなく、クラスタとの相互作用も提供します。

集群架构师 (jí jià shī)

我們的工作是設計與一個或多個 Kubernetes 叢集相關的基礎架構。
作為叢集架構師,我們會考慮分散式系統中的最佳實踐,例如高可用性和安全性。

集群操作员

我是负责设置、管理和监控集群的人员。
我的主要责任是确保集群正常运行,可能需要定期维护活动和更新。

备忘录:集群运算器与扩展 Kubernetes API 的操作者模式不同。

聚类(Cluster)

这是一组机器,被称为节点,通过Kubernetes来管理运行容器化的应用程序。
集群中至少包含一个主节点和多个工作节点。

代码贡献者

Kubernetes 开源代码库的开发和贡献者,
并且还包括参与一个或多个专业小组(SIG)的积极社区成员。

配置地图

这是一个用于存储非机密数据的键值对的 API 对象。它可以用于环境变量、命令行参数和卷的配置文件等。它可以将容器镜像和特定环境的设置分离,使应用程序轻松地移植。如果要存储机密数据,则需要使用 Secret(秘密)对象。

容器环境变量

容器环境变量是一种名称和值的组合,它提供在容器内部运行的容器中使用的信息。
通过容器环境变量,提供与运行容器化应用程序所需的信息以及与容器本身重要的信息有关的信息。例如,文件系统、容器自身的信息和服务的终结点以及其他集群资源等。

容器

是一种轻量级、可移植性强的可执行镜像,包括依赖于软件和软件的所有内容。
容器可以将应用程序与底层的主机基础设施(基础设备)分离,从而在不同的云和操作系统环境中快速部署,轻松进行扩展(规模的调整)。

贡献者

在Kubernetes项目和社区中,贡献是指通过编写代码、撰写文档和花费时间来为项目做出贡献的人。这些贡献包括提交拉取请求(PR)、问题(issue)、反馈、参加特定子工作组(SIG)以及组织社区活动。

控制器

通过监视集群共享状态,apiserver 和集群的当前状态尝试将其转换为期望状态的控制循环(control loop)。
目前Kubernetes提供的控制器包括复制控制器(replication controller)、端点控制器(endpoints controller)、命名空间控制器(namespace controller)和服务账户控制器(serviceaccounts controler)。

CronJob(定时任务)

管理定期计划执行的Job(任务)。
Cronjob(定时任务)对象类似于crontab文件的行,并使用Cron格式指定计划。

自定义资源定义(CustomResourceDefinition)

这是一个用于定义资源的自定义代码,可以在不完全构建自定义服务器的情况下将其添加到Kubernetes API服务器中。
通过自定义资源定义,可以根据自己的需求扩展Kubernetes API,以使其适应特定环境。

守护进程集(DaemonSet)

横断することで、クラスタ内のノードグループの間でポッドのコピーが動くように調整します。通常、ログ収集や監視アラートエージェントなどの展開用システムデーモンが使用し、すべてのノードで動作します。

部署

这是一个管理复制应用程序的API对象。
Pod的复制(副本)和Pod将在整个集群的节点上进行分发。

开发人员(开发者)(避免模糊性)

有时候用来指代应用程序开发人员、代码贡献人员和平台开发者。它是一个常用的术语,根据上下文具有不同的含义。

下游 (ダウンストリーム)(避免模糊性)

在 Kubernetes 生态系统中,当谈到核心 Kubernetes 代码库或其分支(分岐)的代码时,可能会提到的是对于代码的引述。

    • Kubernetes コミュニティ の場合:エコシステム全般、他のコード、依存するサードパーティ製ツールの場合、会話における downstram(ダウンストリーム) とは、たいていコアの Kubernetes コードベースに対してを意味します。例えば、Kubernetes の新機能を採用するにあたり、機能性を改善するためにはアプリケーションの ダウンストリーム(downstream) が適用されているかもしれません。

 

    GitHub や git の場合:通常はフォーク(分岐)したリポジトリを downstream (ダウンストリーム:下流)として参照します。一方でソース・リポジトリは upsteam(アップストリーム:上流)とみなします。

动态卷配置

用户可以要求自动创建存储空间。
通过动态自动准备,集群管理员无需预先准备存储空间。相反,它会根据用户的请求自动准备存储容量期限。动态卷的预准备是基于 API 对象 StorageClass,并用于自动扩展卷和指定由卷插件提供的参数时进行参考。

Helm Chart(领航图)

Helm(赫尔姆)工具是一个预先配置的包,用于管理由Kubernetes资源管理的资源。
Charts可以实现创建和共享Kubernetes应用程序的复现。一个Chart不仅可以实现简单部署(deploy)像memcached Pod一样简单的部署,还可以用于部署复杂的Web应用程序堆栈,如HTTP服务器、数据库、缓存等。

水平 Pod 自动缩放(HPA)

根据 CPU 使用率的目标和任意的度量目标,这个 API 资源可以自动扩展 Pod 的复制数。
HPA 通常用于 Replication Controller(复制控制器)、Deployments(部署)或 Replica Set(副本集)。然而,无法对像 DaemonSets(守护进程集) 这样的对象进行扩展,因此无法分配给它们。

形象()

拥有存储容器的实体,其中包含执行应用程序所需的软件集合。
这是一种将软件进行封装的方法,通过它可以将软件存储到容器注册表中,下载到本地系统并以应用程序的形式运行。可以在镜像中包含元数据(meta data)。元数据可用于指示执行什么操作,构建了什么内容,或者其他信息。

“入口(Ingress)”

In Chinese:

在集群内部连接服务通常由API对象来管理HTTP的连接。
Ingress可以提供负载均衡、SSL终止(认证功能)、基于名称的虚拟主机。

初始化容器

在运行任何应用容器之前,至少一个或多个初始化容器必须结束。
初始化容器类似于常规的应用容器,但有一个区别是初始化容器必须在启动任何应用容器之前完成执行。初始化容器会连续执行,也就是说,每个初始化容器必须在执行下一个初始化容器之前结束。

Istio(伊斯提奥)

提供了一个开放平台来集成微服务、管理流量、应用策略以及将远程测量数据集成起来的统一方法(不限于Kubernetes)。添加Istio不需要更改应用程序代码。它是通过将服务与网络之间的基础设施(基础架构)层与服务部署时组合在一起的方式来运行的,通常称为服务网格。Istio通过抽象化控制平面来管理底层集群的平台。

工作(Job)

执行直到有限或批量任务完成。创建一个或多个Pod对象,以便能够完全终止指定数量的对象。当Pod成功完成时,作业的处理也将完成。

Kops (科普斯)

kops 是一款用于创建、销毁、更新和操作具有高可用性的 Kubernetes 集群的命令行工具。注意:官方仅支持 AWS,而 GCE 和 VMware vSphere 仍处于 Alpha 版本。
kops 将自动构建(提供)以下内容给集群:

    • 完全にインストールを自動化

 

    • DNS をベースとしたクラスタ認識

 

    • 自己修復(self-healing):オートスケーリング・グループ内のすべてに対応

 

    • 限定的な OS のサポート(Debian が推奨、Ubuntu 16.04 はサポートされており、CentOS & RHEL は初期段階のサポート)

 

    • 高可用性(HA)のサポート

 

    直に自動構築(プロビジョン)するか Terrafrom マニフェストを作成する機能がある

您可以使用Kubeadm作为构建块自行构建集群。Kops是基于Kubeadm的运行。

Kubeadm的中文释义

使用kubeadm可以快速安装Kubernetes,并设置安全的集群。它可以安装控制平面和工作节点配置元素。

Kubectl
控制器

这是一个用于与Kubernetes API服务器进行通信的命令行工具。
您可以使用kubelet来创建、检查和更新Kubernetes对象。

Kubelet 简要来说

在群集的每个节点上执行的代理程序。它确保容器在Pod中得到可靠的运行。
kubelet获取PodSpec集,并提供了各种机制,以确保PodSpec中描述的容器能够持续稳定运行。kubelet不管理由Kubernetes以外创建的容器。

Kubernetes的应用程序接口

这是一个提供 Kubernetes 功能的 RESTful 接口和用于存储集群状态的应用程序。
Kubernetes 资源和 “意图记录” 均存储在 API 对象中,并且可以通过 RESTful 的 API 调用进行修改。通过声明性的方法,API 可以管理配置。用户可以直接与 Kubernetes API 进行交互,或通过像 kubectl 这样的工具进行交互。核心的 Kubernetes API 非常灵活,并且可以扩展以支持自定义资源。

标签(Label)

这些属性与用户识别对象和意义有关。标签是键值对的组合,可以分配给对象如Pod。它们可用于对象的分类和子集选择。

维护人员

他是一个在Kubernetes的多个领域活跃并且经验丰富的贡献者。他在项目的GitHub存储库中拥有所有权和写入权限。维护者工作遍布整个项目,致力于项目的健康维护和成功发展。此外,在代码开发和整体组织影响方面,他也做出了巨大的贡献。

托管服务

第三方服务提供商提供的软件是维护。受管理服务的例子包括AWS EC2、Azure SQL Database、GCP Pub/Sub,但可以使用任何与应用程序相关的软件提供。服务目录(Service Catalog)提供商通过服务代理(Service Brokers)提供受管理服务的列表显示,自动环境构建(提供),并提供服务运行。

成员

我是在K8s社区中不断活跃的贡献者。
成员可能会被分配问题或拉取请求,并参加GitHub团队以加入SIG(技术兴趣小组)。成员的拉取请求会自动运行预提交测试。我们期望成员积极地为社区做出贡献。

Minikube 是一种能够在本地快速部署和运行 Kubernetes 的工具。

Minikube 是用于在本地运行的工具,它在计算机上的虚拟机内运行一个单节点的集群。

命名空间(Namespace)

Kubernetes 通过使用抽象概念,在同一物理集群上支持多个虚拟集群。
命名空间的作用是对集群内的对象进行组织,并提供资源分割的方法。命名空间内的资源名称必须是唯一的,但不会对其他命名空间产生影响。

姓名

在提供给客户端的字符串中,使用诸如/api/v1/pods/some-name等资源URL来引用对象。
同时,可以仅通过名称来指定一个对象。然而,在删除对象时,可以使用相同的名称创建新对象。

网络政策

Pod组之间的通信方式以及与其他网络终端点的通信方式的指定。声明式的网络策略设置对于配置哪些Pod可以互相通信、与哪个命名空间允许通信以及将策略应用于哪个端口号等设置非常有用。网络策略资源使用标签来选择目标Pod,并定义适用于所选Pod的允许通信规则。网络策略的实现由网络供应商提供的网络插件进行支持。需要注意的是,在创建网络资源时未实施控制器的情况下不会产生任何影响。

节点

节点是Kubernetes中的工作机(操作机)。
工作机(操作机)可以是虚拟机或物理机,依赖于集群。它持有运行Pod所需的服务,并由主控组件进行管理。节点上的服务包括Docker、kubelet和kube-proxy。

持续性卷索取(持续性存储空间的请求)

当以持久卷宗(PersistentVolume)的形式请求存储资源时,容器可以将其作为卷(Volume)进行挂载。
要指定存储容量,需要根据如何连接到存储资源(仅读、可读写或既不是)以及如何进行请求(持续保留、重复使用或删除)进行设定。关于存储资源本身的详细信息,请参考PersistentVolume的规范。

持久卷积(持久存储:持久卷积)

这是一个用于表示存储(存储)构成要素的API对象在集群内。它是一个可插拔(可拆卸)的资源,与每个Pod的生命周期无关,并可以通常使用。
持久化卷(PersistentVolume:PV)通过提供API来抽象化如何提供和消费存储。如果需要预先创建存储(静态环境自动构建),则直接使用持久化卷。或者在需要的时候(按需)需要存储时,使用持久化卷的要求(PersistentVolumeClaims)作为替代。

平台开发者

我是一位负责将Kubernetes平台根据各个项目的需求进行定制的人员。

作为平台开发者,我会利用自定义资源(Custom Resources)和整合层扩展Kubernetes API等方法,为Kubernetes实例添加与平台应用程序专用功能相匹配的能力。此外,一些平台开发者还是贡献者,他们对Kubernetes社区的贡献正在推动其发展。其他开发工作则包括商业机密或特定于某个站点的扩展。

Pod安全策略

在创建和更新Pod时,启用细粒度认证。
在集群级资源上,对安全管理应该特别谨慎的对象是Pod的设计。通过使用PodSecurityPolicy对象,可以定义一系列情况,如必须执行Pod、将相关字段设置为默认值,以使其在系统中被接受。Pod安全策略的管理是与可选控制器一起实施的。

PodPreset(Pod预设)

这个 API 对象用于在创建Pod时输入诸如Secret、Volume Mount和环境变量等信息。
通过使用标准选择器在此对象中选择要引入信息的Pod。这样一来,podspec定义就不依赖于环境,并能够与特定环境的配置分离开来。

Pod(波德)

Pods are the smallest and simplest Kubernetes objects, representing a collection of containers running on a cluster. A pod primarily sets up a single primary container to execute, and optionally can run sidecar containers. Sidecar containers add auxiliary functionalities to the pod, such as log recording. Pods are collectively managed by deployments.

Pods are 最小且最简单的Kubernetes对象,表示在集群上运行的一组容器。一个pod主要设置一个主要容器来运行,并可选择运行sidecar容器。 sidecar容器给pod添加附加功能,比如日志记录。Pods由Deployments(部署)进行共同管理。

基于角色的访问控制 (RBAC):根据角色进行访问控制。

在管理身份验证的可行性时,管理员可以通过Kubernetes API动态设置访问策略的更改。
RBAC使用角色(role)和角色绑定(role bindings)来定义角色并根据其定义赋予用户权限。

副本集合(ReplicaSet)

ReplicaSet(副本集)是下一代的复制控制器。
与ReplicationController(复制控制器)类似,ReplicaSet可以同时运行指定的Pod副本(复制品)。而Replication Controller(复制控制器)仅支持基于相等性的选择器要求,ReplicaSet则支持标签用户指南中介绍的新的集合选择器要求。

复制控制器

这是一个用于保持指定实例数量始终运行的Kubernetes服务。根据设置给予的值,它会自动添加或删除正在运行的Pod实例。这确保了即使删除了某些Pod或错误地创建了许多Pod,也会始终返回指定数量的实例。

资源配额

对于每个命名空间,我们将设定资源使用量的总上限。
资源总上限不仅包括在命名空间内创建的对象数量的限制,还包括可能由项目内资源消耗的总资源量。

评论人(pinyin: )

作为项目的一部分,负责审核代码以确保质量和准确性的人员。审查者对代码库和软件工程原则都很熟悉。审查者的职责范围包括代码库的部分内容。

SIG (special interest group: 分科会) 可以被理解为专门关注某个特定领域的团体或组织。

这是一个负责恰当管理正在进行中的一部分以及大型Kubernetes开源项目不同方面的社区成员。
SIG内的成员共享对特定领域的推动兴趣,例如架构、API机制和文档。SIG需要遵循SIG控制指南,同时也可以拥有自己的贡献政策和沟通方式。

请查看kubernetes/community存储库以及当前SIG和工作组的详细信息。

秘密信息(機密情報:シークレット)

存储包含密码、OAuth令牌和ssh密钥等机密信息的信息。
有关如何控制和使用机密信息,以及减少意外泄漏风险的信息是通过加密实现的。您可以将机密信息作为挂载在卷中的文件来引用,或者使用kubelet获取pod.Secrets中的镜像,并将其用于ConfigMaps以供秘密数据和非秘密数据使用。

安全环境

securityContext字段定义了对于Pod或容器的权限和访问控制设置。其中包括运行时的UID和GID。

Pod(适用于所有容器)和容器的securityContext可用于指定容器进程使用的用户(runAsUser)、组(fsGroup)、能力、特权设置以及安全策略(SELinux/AppArmors/Seccomp)。

选择器

用户可以根据标签筛选资源列表。
选择器(Selector)可以使用标签从资源列表中进行筛选查询。

服务账户

提供了在Pod内部执行进程的一致性。
当Pod内的进程连接到集群时,将被API服务器作为个别服务帐户进行认证,例如default。
如果在创建Pod时未指定服务帐户,则会自动分配与命名空间相同的默认服务帐户。

服务经纪人 fú jì

由第三方提供和维护的托管服务的端点。服务经纪人实现了开放服务经纪人API规范,并为用于托管服务的应用程序提供了通用接口。服务目录提供了由服务经纪人提供的托管服务的列表,并提供了自动构建(配置)环境以供使用的手段。

服务目录

Kubernetes集群中运行的应用程序可以像云服务提供商提供的数据存储服务一样,通过扩展API方便地使用外部管理的软件提供。服务经纪人提供了外部托管服务的列表,以便自动构建环境(供应),并提供一种不需要详细了解每个服务的创建和管理方式的手段来使其可用。

服务

这是一个描述能够连接应用程序的Pod集合等的API对象。在这里可以描述端口号和负载均衡。访问点可以是集群的内部或外部。

有状态副本集

StatefulSet 控制器负责管理 Pod 集群的部署和伸缩,同时确保为每个 Pod 进行排序和提供唯一标识。与 Deployment 不同的是,StatefulSet 管理每个 Pod 的独特身份。尽管 Pod 是通过相同的 spec 创建的,但它们不能互相交换。换句话说,在重新调度期间,每个 Pod 都具有一致的标识符。
StatefulSet 在与其他控制器相同的模式下工作。通过 StatefulSet 控制器对期望状态进行定义,并根据需要更新以使当前状态达到期望状态。

储存类别(Storage Class)

存储类提供了描述各种可用存储类型的方法,以便于管理员进行维护。
当集群管理员确定服务质量级别、备份策略或任何策略时,将为其分配存储类。每个存储类都包含 provisioner(配置程序)、parameters(参数)和reclaimPolicy(再请求策略)字段。它们与持久卷一起使用,在动态配置时需要指定所需的类。用户可以通过使用StorageClass对象的名称来请求使用单独的类。

用户ID

为了唯一标识对象,Kubernetes系统生成的字符串。
在Kubernetes集群中创建的所有对象,在其存在期间都具有唯一标识UID,目的是明确区分以前存在的类似对象。

上游(即模糊性的回避)

可能提到了核心的Kubernetes或仓库分叉的源代码仓库。

    Kubernetes コミュニティ の場合:エコシステム全般、他のコード、依存するサードパーティ製ツールの場合、会話における upstream(アップストリーム) とは、たいていコアの Kubernetes コードベースを意味します。例えば コミュニティ・メンバ が upstream への移行を提案する場合があるでしょう。これはプラグインやサードパーティ製のツールではなく、コアのコードベースの移行を意味します。 * GitHub や git の場合:通常はソース・リポジトリを upstream (アップストリーム:上流)として参照します。一方でフォーク(分岐)したリポジトリは downsteam(ダウンストリーム:下流)とみなします。

音量插件(Volume Plugin)

卷插件使得容器(Pod)能够启用存储集成。
卷插件会将用于容器的存储卷(存储空间)连接(以使Pod能够识别卷的区域)并挂载(使其作为可读写的文件系统)。

音量(Volume)

这是一个用来存储数据的目录,容器可以在Pod内使用。
Kubernetes卷将在Pod中保留,只要它被引入Pod中。
因此,卷的存在时间比任何容器都要长。因此,Pod中的卷将在重新启动容器时保持数据不变。

工作小组(WG)

在讨论和实施中,出于短期和有限的调整目的,并且可能在项目的委员会、专业委员会(SIG)和多个专业委员会之间重复出现。
工作小组是组织中个人完成特定任务的方式,相对容易建立,并可在非活动时取消。

请查看kubernetes/community存储库以及分科会和工作组的列表,以获取更详细的信息。

容器技术

Docker是一种提供操作系统级别虚拟化的软件技术,被称为容器。
Docker通过使用Linux内核的cgroup和命名空间(namespace)以及可以集成的OverlayFS等文件系统等来实现资源的独立(分离:isolation)功能,使得独立的容器可以在一个Linux实例(实体)中运行,以防止启动和操作虚拟机(VM)时的开销。

etcd(易提迪)

使用一致性和高可用性的键值存储,用于支持Kubernetes集群的所有数据存储。请始终有针对Kubernetes集群中etcd数据的备份计划。有关etcd的详细信息,请参阅etcd文档。

Kubernetes API服务器

这是一种在Master上公开Kubernetes API的组件(构成要素)。它是Kubernetes控制平面的前端。
它被设计成可以水平扩展,但为了扩展,需要部署额外的实例。请参考高可用性集群的建立。

kube-controller-manager是Kubernetes的控制器管理器。

在主服务器上执行控制器的配置元素(组件)。从逻辑上讲,每个控制器都是一个独立的进程,但为了减少复杂性,所有内容都会编译为一个二进制文件,并作为一个进程执行。

kube-proxy可以进行网络代理和负载均衡。

kube-proxy是在集群内每个节点上运行的网络代理。
kube-proxy负责转发请求。kube-proxy可以转发TCP和UDP流,也可以跨越后端功能集使用轮询TCP和UDP转发。

Kubernetes调度器

这是主节点的组件。它监视最近创建的Pod,并选择一个可执行Pod的节点来执行,前提是该节点尚未被分配。

在考虑决定调度时,需要考虑个别元素和整体资源需求。这包括硬件和软件的限制,策略的约束,或者亲和性的指定,数据的本地存储,工作流之间不会干扰,以及截止日期等。

广告
将在 10 秒后关闭
bannerAds