3.3.2.2.4. Kubernetes Infra 参数


3.3.2.2.4.1. CHE_INFRA_KUBERNETES_MASTER__URL

配置 Infra 将使用的 Kubernetes 客户端 master URL。

默认
empty

3.3.2.2.4.2. CHE_INFRA_KUBERNETES_TRUST__CERTS

将 Kubernetes 客户端配置为使用可信证书的布尔值。

默认
false

3.3.2.2.4.3. CHE_INFRA_KUBERNETES_CLUSTER__DOMAIN

Kubernetes 集群域。如果没有设置,svc 名称将不包含有关集群域的信息。

默认
NULL

3.3.2.2.4.4. CHE_INFRA_KUBERNETES_SERVER__STRATEGY

定义向 Kubernetes infra 中向全局公开服务器的方式。OpenShift Dev Spaces 中实施的策略列表: default-host多主机单一主机

默认
multi-host

3.3.2.2.4.5. CHE_INFRA_KUBERNETES_SINGLEHOST_WORKSPACE_EXPOSURE

定义在单主机模式中公开工作区插件和编辑器的方式。支持的暴露 使用 Kubernetes 入口公开服务器。仅在 Kubernetes 上工作。网关 :使用 reverse-proxy 网关公开服务器。

默认
native

3.3.2.2.4.6. CHE_INFRA_KUBERNETES_SINGLEHOST_WORKSPACE_DEVFILE__ENDPOINT__EXPOSURE

定义如何在单主机服务器策略中公开 devfile 端点作为最终用户的应用程序。它们可以遵循单一主机策略,并在子路径上公开,或者可以在子域上公开。多主机 :在子域上公开 单主机: 在子路径上公开

默认
multi-host

3.3.2.2.4.7. CHE_INFRA_KUBERNETES_SINGLEHOST_GATEWAY_CONFIGMAP__LABELS

定义将设置为 ConfigMap 配置单主机网关的标签。

默认
app=che,component=che-gateway-config

3.3.2.2.4.8. CHE_INFRA_KUBERNETES_INGRESS_DOMAIN

在本例中为 che.infra.kubernetes.server_strategymulti-host时,在工作区中为服务器生成域

默认
empty

3.3.2.2.4.9. CHE_INFRA_KUBERNETES_NAMESPACE_CREATION__ALLOWED

指明 OpenShift Dev Spaces 服务器是否允许 OpenShift Dev Spaces 服务器为用户工作区创建项目,还是由集群管理员手动创建。OpenShift infra 也使用此属性。

默认
true

3.3.2.2.4.10. CHE_INFRA_KUBERNETES_NAMESPACE_DEFAULT

定义在用户未覆盖时创建用户工作区的 Kubernetes 默认命名空间。可以使用 < username> 和 &lt; userid> 占位符(例如: che-workspace-<username>)。在这种情况下,会为每个用户创建新命名空间。由 OpenShift infra 以及指定项目使用。&lt ;username&gt; 或 <userid > 占位符是必需的。

默认
<username>-che

3.3.2.2.4.11. CHE_INFRA_KUBERNETES_NAMESPACE_LABEL

定义 che-server 是否应该尝试标记工作空间命名空间。注意:强烈建议保留此属性的值设为 true。如果为 false,则新的工作区命名空间不会自动标记,因此 OpenShift Dev Spaces 运算符无法识别,使 DevWorkspace 的功能无法正常工作。如果为 false,则需要管理员使用 che.infra.kubernetes.namespace.labels 中指定的标签手动标记命名空间。如果要自己管理命名空间,请确定遵循 https://www.eclipse.org/che/docs/stable/administration-guide/provisioning-namespaces-in-advance/。命名空间中存在的任何额外标签都会保留,不会影响功能。另请注意,管理员可以自由地预先创建命名空间,即使此属性为 true,也手动标记命名空间。如果命名空间已符合标签要求,则不会执行对命名空间的更新。

默认
true

3.3.2.2.4.12. CHE_INFRA_KUBERNETES_NAMESPACE_ANNOTATE

定义 che-server 是否应该尝试注解工作区命名空间。

默认
true

3.3.2.2.4.13. CHE_INFRA_KUBERNETES_NAMESPACE_LABELS

要查找用于 OpenShift Dev Spaces Workspaces 的项目的标签列表。它们用于: - 查找与 che.infra.kubernetes.namespace.annotations 结合使用的用户准备项目。- 主动标记带有任何工作区的项目。注意:强烈建议不要更改此属性的值,因为 OpenShift Dev Spaces 运算符在协调 DevWorkspaces 时依赖于这些标签及其精确的值。如果更改了此配置,则 OpenShift Dev Spaces 操作器不会自动识别命名空间,除非使用默认标签和值进行手动标记。命名空间中的附加标签不会影响功能。

默认
app.kubernetes.io/part-of=che.eclipse.org,app.kubernetes.io/component=workspaces-namespace

3.3.2.2.4.14. CHE_INFRA_KUBERNETES_NAMESPACE_ANNOTATIONS

若要查找项目为 OpenShift Dev Spaces 用户工作区准备的注解列表。只有与 che.infra.kubernetes.namespace.namespace.labels 匹配的项目才会与这些注解匹配。与 che.infra.kubernetes.namespace.labels che.infra.kubernetes.namespace.annotations 匹配的项目将优先用于用户工作区。可以使用 < username&gt; 占位符将项目指定为 concrete 用户。它们用于: - 查找与 che.infra.kubernetes.namespace.labels 结合的用户准备项目 - 主动为项目附带任何工作区。

默认
che.eclipse.org/username=<username>

3.3.2.2.4.15. CHE_INFRA_KUBERNETES_SERVICE__ACCOUNT__NAME

定义应绑定到所有工作区 Pod 的 Kubernetes 服务帐户名称。Kubernetes 基础架构不会创建服务帐户的 OpenShift Dev Spaces Operator,应存在它。OpenShift 基础架构将检查项目是否有预定义(如果 che.infra.openshift.project 尚未为空):- 如果预定义,则服务帐户必须存在 - 如果它是 'NULL' 或空字符串,则基础架构将根据工作区创建新的 OpenShift 项目,并使用所需的角色准备工作区服务帐户

默认
NULL

3.3.2.2.4.16. CHE_INFRA_KUBERNETES_WORKSPACE__SA__CLUSTER__ROLES

指定可选、用于 workspace 服务帐户的额外集群角色。集群角色名称必须已存在 OpenShift Dev Spaces Operator,并且 OpenShift Dev Spaces 服务帐户需要能够创建 Role Binding,以将这些集群角色与工作区服务帐户关联。名称用逗号分开。此属性弃用 che.infra.kubernetes.cluster_role_name

默认
NULL

3.3.2.2.4.17. CHE_INFRA_KUBERNETES_USER__CLUSTER__ROLES

要分配给其命名空间中的用户的集群角色

默认
NULL

3.3.2.2.4.18. CHE_INFRA_KUBERNETES_WORKSPACE__START__TIMEOUT__MIN

定义限制 Kubernetes 工作空间开始时间的等待时间。

默认
8

3.3.2.2.4.19. CHE_INFRA_KUBERNETES_INGRESS__START__TIMEOUT__MIN

定义 Kubernetes Ingress 就绪的时间(分钟)的超时时间(以分钟为单位)

默认
5

3.3.2.2.4.20. CHE_INFRA_KUBERNETES_WORKSPACE__UNRECOVERABLE__EVENTS

如果工作区启动了一个不可恢复的事件,则立即停止工作区,而不等待超时。此 SHOULD 中没有包括 mere "Failed" 原因,因为可能会捕获无法恢复的事件。失败的容器启动由 OpenShift Dev Spaces 服务器明确处理。

默认
FailedMount,FailedScheduling,MountVolume.SetUpfailed,Failed to pull image,FailedCreate,ReplicaSetCreateError

3.3.2.2.4.21. CHE_INFRA_KUBERNETES_INGRESS_ANNOTATIONS__JSON

定义用于公开服务器的 ingress 的注解。值取决于入口控制器的类型。OpenShift 基础架构会忽略此属性,因为它使用 Routes 而不是 Ingresses。对于单一主机部署策略的 OpenShift Dev Spaces Operator 正常工作,必须使用控制器支持 URL 重新编写 URL(因此该 URL 可以指向不同的服务器,而服务器不需要支持更改应用程序 root)。che.infra.kubernetes.ingress.path.rewrite_transform 属性定义应如何转换 ingress 的路径来支持 URL 重新编写,并且此属性定义了在 ingress 本身上指示所选入口控制器实际执行的注解集,从而有可能在转换路径上构建转换(如果由所选入口控制器的要求)。例如,推荐使用 Nginx ingress controller 0.22.0 及更新的版本: {"Ingress.kubernetes.io/rewrite-target": "/$1","ingress.kubernetes.io/ssl-redirect": "false",\ "ingress.kubernetes.io/proxy-connect-timeout": "3600","ingress.kubernetes.io/proxy-read-timeout": "3600", "nginx.org/websocket-services ":"<service-name>"}che.infra.kubernetes.ingress.path.rewrite_transform "应设置为 "%s(.*) "。对于早于 0.22.0 的 nginx ingress 控制器,rewrite-target 应该设置为 merely /,路径应设置为 %s (请参阅 che.infra.kubernetes.ingress.path.rewrite_transform 属性)。如需了解入口控制器如何使用入口路径中的正则表达式的说明,以及如何实现 URL 重新编写,请参阅 Nginx ingress 控制器文档。

默认
NULL

3.3.2.2.4.22. CHE_INFRA_KUBERNETES_INGRESS_PATH__TRANSFORM

定义如何声明应公开服务器的入站路径的方法。%s 代表服务器的基本公共 URL,可保证以正斜杠结尾。此属性必须为 String.format() 方法的有效输入,并且仅包含对 %s 的具体参考。请参阅 che.infra.kubernetes.ingress.annotations_json 属性的描述,以查看在指定入口注解和路径时这两个属性间如何。如果没有定义,此属性默认为 %s (不带引号),这意味着路径不会以任何与入口控制器一起使用的方法转换。

默认
NULL

3.3.2.2.4.23. CHE_INFRA_KUBERNETES_INGRESS_LABELS

要添加到 OpenShift Dev Spaces 服务器创建的每个 Ingress 的额外标签,以便明确识别。

默认
NULL

3.3.2.2.4.24. CHE_INFRA_KUBERNETES_POD_SECURITY__CONTEXT_RUN__AS__USER

定义由 Kubernetes Infra 创建的 Pod 的安全上下文,OpenShift infra 会忽略它

默认
NULL

3.3.2.2.4.25. CHE_INFRA_KUBERNETES_POD_SECURITY__CONTEXT_FS__GROUP

定义由 Kubernetes Infra 创建的 Pod 的安全上下文。特殊的补充组,适用于 Pod 中的所有容器。OpenShift infra 会忽略它。

默认
NULL

3.3.2.2.4.26. CHE_INFRA_KUBERNETES_POD_TERMINATION__GRACE__PERIOD__SEC

定义将由 OpenShift 基础架构创建的 Pod 宽限期。默认值: 0。它允许快速停止 Pod,并显著减少停止工作区所需的时间。如果 OpenShift Dev Spaces Operator 已在 OpenShift 配方中明确设置了 terminationGracePeriodSeconds,则它不会被覆盖。

默认
0

3.3.2.2.4.27. CHE_INFRA_KUBERNETES_TLS__ENABLED

创建启用了传输层安全(TLS)的 Ingresses。在 OpenShift 基础架构中,路由将启用 TLS。

默认
false

3.3.2.2.4.28. CHE_INFRA_KUBERNETES_TLS__SECRET

创建使用 TLS 的工作空间入口时使用的 secret 名称。OpenShift 基础架构会忽略此属性。

默认
empty

3.3.2.2.4.29. CHE_INFRA_KUBERNETES_TLS__KEY

用于工作区入口的 TLS Secret 的数据。 证书和密钥 应使用 Base64 算法进行编码。OpenShift 基础架构会忽略这些属性。

默认
NULL

3.3.2.2.4.30. CHE_INFRA_KUBERNETES_TLS__CERT

应该用于工作区 Ingress 的 TLS Secret 的证书数据。证书应该采用 Base64 算法进行编码。OpenShift 基础架构会忽略此属性。

默认
NULL

3.3.2.2.4.31. CHE_INFRA_KUBERNETES_RUNTIMES__CONSISTENCY__CHECK__PERIOD__MIN

定义将执行运行时一致性检查的期间。如果运行时状态不一致,则会自动停止运行时。值必须大于 0 或 -1,其中 -1 表示根本不执行检查。默认情况下禁用它,因为当 OpenShift Dev Spaces 服务器没有用户调用操作时,OpenShift Dev Spaces Server 无法与 Kubernetes API 交互。它适用于以下配置: - OpenShift Dev Spaces 服务器所在的同一命名空间中创建工作区对象; - cluster-admin 服务帐户令牌被挂载到 OpenShift Dev Spaces Server Pod 中。它不适用于以下配置: - OpenShift Dev Spaces Server 使用来自 OAuth 供应商的令牌与 Kubernetes API 通信。

默认
-1

3.3.2.2.4.32. CHE_INFRA_KUBERNETES_TRUSTED__CA_SRC__CONFIGMAP

OpenShift Dev Spaces 服务器命名空间中的 ConfigMap 名称,带有额外的 CA TLS 证书,以传播到所有用户的工作区。如果在 OpenShift 4 基础架构上设置属性,并且 che.infra.openshift.trusted_ca.dest_configmap_labels 包含 config.openshift.io/inject-trusted-cabundle=true 标签,则集群 CA 捆绑包将会被推广。

默认
NULL

3.3.2.2.4.33. CHE_INFRA_KUBERNETES_TRUSTED__CA_DEST__CONFIGMAP

带有额外 CA TLS 证书的工作区命名空间中的 ConfigMap 名称。包含 che.infra.kubernetes.trusted_ca.src_configmap 的副本,但在工作区命名空间中。此 ConfigMap 的内容挂载到所有工作区容器中,包括插件代理。不要更改 ConfigMap 名称,除非与已存在的 ConfigMap 冲突。OpenShift Dev Spaces Operator 可以调整生成的 ConfigMap 名称最终使其在项目中是唯一的。原始名称将存储在 che.original_name 标签中。

默认
ca-certs

3.3.2.2.4.34. CHE_INFRA_KUBERNETES_TRUSTED__CA_MOUNT__PATH

配置应挂载 CA 捆绑包的工作区容器的路径。由 che.infra.kubernetes.trusted_ca.dest_configmap 指定的 ConfigMap 内容已被挂载。

默认
/public-certs

3.3.2.2.4.35. CHE_INFRA_KUBERNETES_TRUSTED__CA_DEST__CONFIGMAP__LABELS

要添加到用户工作区中的 CA 证书 ConfigMap 中的以逗号分隔的标签列表。请参阅 che.infra.kubernetes.trusted_ca.dest_configmap 属性。

默认
empty

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.