第 5 章 Console [operator.openshift.io/v1]


描述
控制台提供了一种方法来配置操作器来管理控制台。兼容性级别 1:在主发行版本中至少提供 12 个月或 3 个次版本(以更长的时间为准)。
类型
object
必填
  • spec

5.1. 规格

属性类型描述

apiVersion

字符串

APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

字符串

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

对象

ConsoleSpec 是控制台所需行为的规格。

status

对象

ConsoleStatus 定义 Console 的观察状态。

5.1.1. .spec

描述
ConsoleSpec 是控制台所需行为的规格。
类型
object
属性类型描述

自定义

对象

自定义用于选择性地为 web 控制台提供一组较小的自定义选项。

ingress

object

Ingress 允许为控制台配置替代的 ingress。此字段适用于没有入口功能的集群,在无法访问路由时。

logLevel

字符串

Loglevel 是整个组件的意图型日志记录。它无法提供精细的控制,但管理操作员必须针对其操作对象解释的粗粒度日志记录选择是一个简单的方法。有效值为:"Normal", "Debug", "Trace", "TraceAll"。默认值为 "Normal"。

managementState

字符串

managementState 指明 Operator 是否应该管理组件

observedConfig

``

observedConfig 包含一个从集群状态观察到的稀疏配置。它存在于 spec 中,因为它是 Operator 的级别输入

operatorLogLevel

字符串

operatorLogLevel 是 Operator 本身的意图日志。它无法提供精细的控制,但管理操作员必须自行解释的粗粒度日志记录选择是一个简单的方法。有效值为:"Normal", "Debug", "Trace", "TraceAll"。默认值为 "Normal"。

plugins

数组(字符串)

插件定义启用的控制台插件名称列表。

providers

对象

提供程序包含使用特定服务提供商的配置。

route

对象

路由包含包含服务证书的主机名和 secret 引用。如果指定了自定义路由,则会使用提供的主机名创建新路由,该主机名下提供控制台。如果自定义主机名使用集群的默认路由后缀,则不需要服务证书的 Secret 规格。如果自定义主机名指向任意域,则需要手动 DNS 配置步骤。如果删除了自定义路由,则会维护默认控制台路由,以便为控制台保留默认主机名。如果没有指定,则使用默认路由。弃用

unsupportedConfigOverrides

``

unsupportedConfigOverrides 覆盖 Operator 计算的最终配置。红帽不支持使用此字段。滥用此字段可能会导致意外行为或与其他配置选项冲突。在使用此字段前,请参阅红帽支持的指导。使用此属性会阻止集群升级,必须在升级集群前删除它。

5.1.2. .spec.customization

描述
自定义用于选择性地为 web 控制台提供一组较小的自定义选项。
类型
object
属性类型描述

addPage

对象

addPage 允许在 Developer 视角中的 Add 页面中自定义操作。

brand

字符串

brand 是 Web 控制台的默认品牌,可通过提供品牌字段来覆盖。有有限的特定品牌选项。此字段控制控制台的元素,如徽标。无效的值将导致控制台推出部署。

customLogoFile

对象

customLogoFile 替换 masthead 和 about 对话框中的默认 OpenShift 徽标。它是对 openshift-config 命名空间中的 ConfigMap 的引用。这可以通过 'oc create configmap custom-logo --from-file=/path/to/file -n openshift-config' 等命令来创建。由于 ConfigMap 大小的限制,镜像大小必须小于 1 MB。ConfigMap 键应包含文件扩展名,以便控制台提供具有正确 MIME 类型的文件。推荐的徽标规格:Dimensions: Max height of 68px,首选最大宽度 200px SVG

customProductName

字符串

customProductName 是页面标题、徽标 alt 文本以及有关对话框而不是普通的 OpenShift 产品名称显示的名称。

developerCatalog

object

developerCatalog 允许配置显示的开发人员目录类别(filters)和类型(sub-catalogs)。

documentationBaseURL

字符串

Web 控制台的各种部分中显示了到外部文档的 DocumentationBaseURL 链接。提供 DocumentationBaseURL 将覆盖默认文档 URL。无效的值将导致控制台推出部署。

perspectives

数组

透视图允许启用/禁用用户在视角切换器下拉菜单中可见的视角。

perspectives[]

object

视角定义了集群管理员要在视角切换器下拉菜单中显示/隐藏的视角

projectAccess

对象

ProjectAccess 允许在 Developer 视角 Project 访问页面中自定义可用 ClusterRole 列表,供项目 admin 用于指定角色到其他用户,并限制项目中的访问。如果设置,列表将替换默认的 ClusterRole 选项。

quickStarts

对象

Quickstarts 允许在控制台中自定义可用的 ConsoleQuickStart 资源。

5.1.3. .spec.customization.addPage

描述
addPage 允许在 Developer 视角中的 Add 页面中自定义操作。
类型
object
属性类型描述

disabledActions

数组(字符串)

disabledActions 是未向用户显示的操作列表。列表中的每个操作都由其 ID 表示。

5.1.4. .spec.customization.customLogoFile

描述
customLogoFile 替换 masthead 和 about 对话框中的默认 OpenShift 徽标。它是对 openshift-config 命名空间中的 ConfigMap 的引用。这可以通过 'oc create configmap custom-logo --from-file=/path/to/file -n openshift-config' 等命令来创建。由于 ConfigMap 大小的限制,镜像大小必须小于 1 MB。ConfigMap 键应包含文件扩展名,以便控制台提供具有正确 MIME 类型的文件。推荐的徽标规格:Dimensions: Max height of 68px,首选最大宽度 200px SVG
类型
object
属性类型描述

key

字符串

键允许指向 configmap 中的特定键/值。这对逻辑文件引用非常有用。

name

字符串

 

5.1.5. .spec.customization.developerCatalog

描述
developerCatalog 允许配置显示的开发人员目录类别(filters)和类型(sub-catalogs)。
类型
object
属性类型描述

类别

array

开发人员目录中显示的类别。

categories[]

对象

DeveloperConsoleCatalogCategory 用于开发人员控制台目录。

types

object

Type 允许启用或禁用用户可以在 Developer 目录中看到的子目录类型。如果省略时,将显示所有子目录类型。

5.1.6. .spec.customization.developerCatalog.categories

描述
开发人员目录中显示的类别。
类型
array

5.1.7. .spec.customization.developerCatalog.categories[]

描述
DeveloperConsoleCatalogCategory 用于开发人员控制台目录。
类型
object
必填
  • id
  • label
属性类型描述

id

字符串

ID 是 URL 中用来在控制台中启用深度链接的标识符。ID 是必需的,且必须具有 1-32 URL 安全(A-Z、a-z、0-9、- 和 _)。

label

字符串

标签定义类别显示标签。它是必需的,且必须具有 1-64 个字符。

subcategories

array

subcategories 定义子类别列表。

subcategories[]

对象

DeveloperConsoleCatalogCategoryMeta 是开发人员目录类别的密钥标识符。

tags

数组(字符串)

tags 是与类别匹配的字符串列表。所选类别显示所有在类别和项目之间至少有一个重叠标签的项目。

5.1.8. .spec.customization.developerCatalog.categories[].subcategories

描述
subcategories 定义子类别列表。
类型
array

5.1.9. .spec.customization.developerCatalog.categories[].subcategories[]

描述
DeveloperConsoleCatalogCategoryMeta 是开发人员目录类别的密钥标识符。
类型
object
必填
  • id
  • label
属性类型描述

id

字符串

ID 是 URL 中用来在控制台中启用深度链接的标识符。ID 是必需的,且必须具有 1-32 URL 安全(A-Z、a-z、0-9、- 和 _)。

label

字符串

标签定义类别显示标签。它是必需的,且必须具有 1-64 个字符。

tags

数组(字符串)

tags 是与类别匹配的字符串列表。所选类别显示所有在类别和项目之间至少有一个重叠标签的项目。

5.1.10. .spec.customization.developerCatalog.types

描述
Type 允许启用或禁用用户可以在 Developer 目录中看到的子目录类型。如果省略时,将显示所有子目录类型。
类型
object
必填
  • state
属性类型描述

disabled

数组(字符串)

disabled 是未向用户显示的开发人员目录类型(sub-catalogs ID)列表。通过控制台插件添加类型(sub-catalogs),可用的类型(sub-catalog ID)可在集群配置页面上提供,或在控制台中编辑 YAML 时。示例:"Devfile", "HelmChart", "BuilderImage",如果列表为空,或添加了所有可用的子目录类型,则应隐藏完整的开发人员目录。

enabled

数组(字符串)

enabled 是开发人员目录类型(sub-catalogs ID)的列表,它将向用户显示。通过控制台插件添加类型(sub-catalogs),可用的类型(sub-catalog ID)可在集群配置页面上提供,或在控制台中编辑 YAML 时。示例:"Devfile", "HelmChart", "BuilderImage",如果列表不是空的,则不会向用户显示一个新的类型,直到它添加到列表为止。如果列表为空,则会显示完整的开发人员目录。

state

string

State 定义是否应启用或禁用目录类型列表。

5.1.11. .spec.customization.perspectives

描述
透视图允许启用/禁用用户在视角切换器下拉菜单中可见的视角。
类型
数组

5.1.12. .spec.customization.perspectives[]

描述
视角定义了集群管理员要在视角切换器下拉菜单中显示/隐藏的视角
类型
object
必填
  • id
  • 可见性
属性类型描述

id

string

id 定义视角的 id。示例:"dev", "admin"。可用的视角 id 可以在 yaml 编辑器旁边的代码片段部分找到。不正确的或未知 ID 将被忽略。

pinnedResources

数组

pinnedResources 定义默认固定资源列表,如果用户没有自定义这些固定资源本身,用户会在视角导航中看到这些固定资源。可以通过 kubectl api-resources 读取可用的 Kubernetes 资源列表。控制台还会提供一个配置 UI 和 YAML 片断,用于列出可固定到导航的可用资源。不正确的或未知资源将被忽略。

pinnedResources[]

object

PinnedResourceReference 包括组、版本和资源类型

可见性

object

可见性定义了视角的状态,以及该视角是否需要访问检查。

5.1.13. .spec.customization.perspectives[].pinnedResources

描述
pinnedResources 定义默认固定资源列表,如果用户没有自定义这些固定资源本身,用户会在视角导航中看到这些固定资源。可以通过 kubectl api-resources 读取可用的 Kubernetes 资源列表。控制台还会提供一个配置 UI 和 YAML 片断,用于列出可固定到导航的可用资源。不正确的或未知资源将被忽略。
类型
数组

5.1.14. .spec.customization.perspectives[].pinnedResources[]

描述
PinnedResourceReference 包括组、版本和资源类型
类型
object
必填
  • group
  • resource
  • version
属性类型描述

group

string

Group 是资源的 API 组。为 core 组输入空字符串。这个值应该只包含小写字母数字字符、连字符和句点。示例: ""、"apps"、"build.openshift.io"等。

resource

string

resource 是被引用的类型。它通常是小写的资源类型的复数形式。这个值应该只包含小写字母数字字符和连字符。示例:"deployments", "deploymentconfigs", "pods" 等。

version

string

version 是资源的 API 版本。这个值应该只包含小写字母数字字符。示例:"v1", "v1beta1", 等。

5.1.15. .spec.customization.perspectives[].visibility

描述
可见性定义了视角的状态,以及该视角是否需要访问检查。
类型
object
必填
  • state
属性类型描述

accessReview

object

accessReview 定义 required 和 missing access review 检查。

state

string

State 定义透视图为 enabled 或 disabled 或 access review check。

5.1.16. .spec.customization.perspectives[].visibility.accessReview

描述
accessReview 定义 required 和 missing access review 检查。
类型
object
属性类型描述

missing

数组

missing 定义权限检查列表。只有在至少有一个检查失败时,才会显示视角。省略时,会跳过访问审核,并且不会显示视角,除非需要根据所需访问查看列表的配置进行配置。

missing[]

object

ResourceAttributes 包含对 Authorizer 接口的资源请求的授权属性

required

数组

必需定义权限检查列表。只有在所有检查都成功时才会显示视角。省略时,会跳过访问审核,并且不会显示视角,除非需要根据缺少访问查看列表的配置进行配置。

required[]

object

ResourceAttributes 包含对 Authorizer 接口的资源请求的授权属性

5.1.17. .spec.customization.perspectives[].visibility.accessReview.missing

描述
missing 定义权限检查列表。只有在至少有一个检查失败时,才会显示视角。省略时,会跳过访问审核,并且不会显示视角,除非需要根据所需访问查看列表的配置进行配置。
类型
数组

5.1.18. .spec.customization.perspectives[].visibility.accessReview.missing[]

描述
ResourceAttributes 包含对 Authorizer 接口的资源请求的授权属性
类型
object
属性类型描述

group

字符串

Group 是 Resource 的 API 组。"*"代表所有。

name

字符串

Name 是为"get"请求的资源的名称,或删除"delete"。"" (空)表示全部。

namespace

字符串

namespace 是所请求操作的命名空间。目前,对于集群范围的资源 "" (empty),没有命名空间和所有命名空间"" (空)之间的差别,对于集群范围的资源 "" (空)代表"all"表示来自 SubjectAccessReview 或 SelfSubjectAccessReview 的命名空间范围资源

resource

字符串

资源是现有资源类型之一。"*"表示全部。

subresource

字符串

子资源是现有资源类型之一。""表示 none。

verb

字符串

verb 是一个 kubernetes 资源 API 动词,如: get, list, watch, create, update, delete, proxy. "*" 表示所有。

version

字符串

version 是资源的 API 版本。"*"表示所有。

5.1.19. .spec.customization.perspectives[].visibility.accessReview.required

描述
必需定义权限检查列表。只有在所有检查都成功时才会显示视角。省略时,会跳过访问审核,并且不会显示视角,除非需要根据缺少访问查看列表的配置进行配置。
类型
数组

5.1.20. .spec.customization.perspectives[].visibility.accessReview.required[]

描述
ResourceAttributes 包含对 Authorizer 接口的资源请求的授权属性
类型
object
属性类型描述

group

字符串

Group 是 Resource 的 API 组。"*"代表所有。

name

字符串

Name 是为"get"请求的资源的名称,或删除"delete"。"" (空)表示全部。

namespace

字符串

namespace 是所请求操作的命名空间。目前,对于集群范围的资源 "" (empty),没有命名空间和所有命名空间"" (空)之间的差别,对于集群范围的资源 "" (空)代表"all"表示来自 SubjectAccessReview 或 SelfSubjectAccessReview 的命名空间范围资源

resource

字符串

资源是现有资源类型之一。"*"表示全部。

subresource

字符串

子资源是现有资源类型之一。""表示 none。

verb

字符串

verb 是一个 kubernetes 资源 API 动词,如: get, list, watch, create, update, delete, proxy. "*" 表示所有。

version

字符串

version 是资源的 API 版本。"*"表示所有。

5.1.21. .spec.customization.projectAccess

描述
ProjectAccess 允许在 Developer 视角 Project 访问页面中自定义可用 ClusterRole 列表,供项目 admin 用于指定角色到其他用户,并限制项目中的访问。如果设置,列表将替换默认的 ClusterRole 选项。
类型
object
属性类型描述

availableClusterRoles

数组(字符串)

availableClusterRoles 是 ClusterRole 名称列表,可通过项目访问标签页分配给用户。

5.1.22. .spec.customization.quickStarts

描述
Quickstarts 允许在控制台中自定义可用的 ConsoleQuickStart 资源。
类型
object
属性类型描述

disabled

数组(字符串)

disabled 是用户未显示的 ConsoleQuickStart 资源名称的列表。

5.1.23. .spec.ingress

描述
Ingress 允许为控制台配置替代的 ingress。此字段适用于没有入口功能的集群,在无法访问路由时。
类型
object
属性类型描述

clientDownloadsURL

string

clientDownloadsURL 是一个 URL,用作下载客户端二进制文件的地址。如果没有指定,则使用下载路由主机名。没有入口(ingress)功能的集群需要此字段,因为无法访问路由。控制台 Operator 将监控 URL,并在延长期间无法访问时可能会降级。必须使用 HTTPS 方案。

consoleURL

string

consoleURL 是用作基本控制台地址的 URL。如果没有指定,则使用控制台路由主机名。没有入口(ingress)功能的集群需要此字段,因为无法访问路由。确保在这个 URL 中设置适当的入口。控制台 Operator 将监控 URL,并在延长期间无法访问时可能会降级。必须使用 HTTPS 方案。

5.1.24. .spec.providers

描述
提供程序包含使用特定服务提供商的配置。
类型
object
属性类型描述

statuspage

对象

状态页面包含 statuspage.io 页面的 ID,其中提供了状态信息。

5.1.25. .spec.providers.statuspage

描述
状态页面包含 statuspage.io 页面的 ID,其中提供了状态信息。
类型
object
属性类型描述

pageID

字符串

pageID 是页面的 Statuspage 分配的唯一 ID。这必须是公共页面。

5.1.26. .spec.route

描述
路由包含包含服务证书的主机名和 secret 引用。如果指定了自定义路由,则会使用提供的主机名创建新路由,该主机名下提供控制台。如果自定义主机名使用集群的默认路由后缀,则不需要服务证书的 Secret 规格。如果自定义主机名指向任意域,则需要手动 DNS 配置步骤。如果删除了自定义路由,则会维护默认控制台路由,以便为控制台保留默认主机名。如果没有指定,则使用默认路由。弃用
类型
object
属性类型描述

hostname

字符串

hostname 是所需的自定义域,控制台将在其中可用。

secret

对象

secret 指向 openshift-config 命名空间中的 secret,其中包含自定义证书和密钥,需要由集群管理员手动创建。引用的 Secret 需要包含以下键值对: - "tls.crt" - 指定自定义证书 - "tls.key" - 指定自定义证书的私钥(如果自定义主机名使用集群的默认路由后缀),则不需要服务证书的 Secret 规格。

5.1.27. .spec.route.secret

描述
secret 指向 openshift-config 命名空间中的 secret,其中包含自定义证书和密钥,需要由集群管理员手动创建。引用的 Secret 需要包含以下键值对: - "tls.crt" - 指定自定义证书 - "tls.key" - 指定自定义证书的私钥(如果自定义主机名使用集群的默认路由后缀),则不需要服务证书的 Secret 规格。
类型
object
必填
  • name
属性类型描述

name

字符串

name 是引用的 secret 的 metadata.name

5.1.28. .status

描述
ConsoleStatus 定义 Console 的观察状态。
类型
object
属性类型描述

conditions

array

conditions 是条件及其状态列表

conditions[]

对象

OperatorCondition 只是标准条件字段。

generations

array

生成用于确定项目是否需要协调或更改是否需要反应。

generations[]

对象

GenerationStatus 追踪给定资源的生成,以便可以对强制更新的决策进行。

observedGeneration

整数

observedGeneration 是您处理的最后生成更改

readyReplicas

整数

readyReplicas 表示有多少副本就绪并处于所需的状态

version

字符串

版本是此可用性适用的级别

5.1.29. .status.conditions

描述
conditions 是条件及其状态列表
类型
array

5.1.30. .status.conditions[]

描述
OperatorCondition 只是标准条件字段。
类型
object
必填
  • type
属性类型描述

lastTransitionTime

字符串

 

message

字符串

 

reason

字符串

 

status

字符串

 

type

字符串

 

5.1.31. .status.generations

描述
生成用于确定项目是否需要协调或更改是否需要反应。
类型
array

5.1.32. .status.generations[]

描述
GenerationStatus 追踪给定资源的生成,以便可以对强制更新的决策进行。
类型
object
属性类型描述

group

字符串

组是您要跟踪的内容组

hash

字符串

hash 是为没有生成的情况下为资源设置的可选字段,它们是敏感内容,如 secret 和 configmaps

lastGeneration

整数

lastGeneration 是涉及的工作负载控制器的最后生成

name

字符串

name 是您要跟踪的内容的名称

namespace

字符串

命名空间(namespace)是您要跟踪的事情

resource

字符串

资源是您要跟踪的资源类型

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.