7.3. 为 Topology 插件管理标签和注解
7.3.1. 连接到源代码编辑器或源 复制链接链接已复制到粘贴板!
将以下注解添加到工作负载资源中,如 Deployments,以使用源代码编辑器导航到关联应用程序的 Git 存储库:
annotations: app.openshift.io/vcs-uri: <GIT_REPO_URL>
annotations:
app.openshift.io/vcs-uri: <GIT_REPO_URL>
添加以下注解以导航到特定分支:
annotations: app.openshift.io/vcs-ref: <GIT_REPO_BRANCH>
annotations:
app.openshift.io/vcs-ref: <GIT_REPO_BRANCH>
如果已安装并配置了 Red Hat OpenShift Dev Spaces,并且 Git URL 注解也会添加到工作负载 YAML 文件中,点编辑代码 decorator 将您重定向到 Red Hat OpenShift Dev Spaces 实例。
当您使用 OCP Git 导入流部署应用时,您不需要添加标签,因为导入流会这样做。否则,您需要手动将标签添加到工作负载 YAML 文件中。
您还可以使用 decorator 使用您要访问的编辑 URL 添加 app.openshift.io/edit-url
注解。
7.3.2. 实体注解/标签 复制链接链接已复制到粘贴板!
要使 RHDH 检测实体是否具有 Kubernetes 组件,请在实体的 catalog-info.yaml
文件中添加以下注解:
annotations: backstage.io/kubernetes-id: <BACKSTAGE_ENTITY_NAME>
annotations:
backstage.io/kubernetes-id: <BACKSTAGE_ENTITY_NAME>
在资源中添加以下标签,以便 Kubernetes 插件从请求的实体获取 Kubernetes 资源:
labels: backstage.io/kubernetes-id: <BACKSTAGE_ENTITY_NAME>`
labels:
backstage.io/kubernetes-id: <BACKSTAGE_ENTITY_NAME>`
在使用标签选择器时,上述标签必须存在于资源上。
7.3.3. 命名空间注解 复制链接链接已复制到粘贴板!
流程
要使用定义的命名空间识别 Kubernetes 资源,请添加
backstage.io/kubernetes-namespace
注解:annotations: backstage.io/kubernetes-namespace: <RESOURCE_NS>
annotations: backstage.io/kubernetes-namespace: <RESOURCE_NS>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果将
backstage.io/kubernetes-namespace
注解添加到catalog-info.yaml
文件中,则无法使用源代码编辑器访问 Red Hat OpenShift Dev Spaces 实例。要检索实例 URL,您需要 CheCluster 自定义资源(CR)。因为 CheCluster CR 在 openshift-devspaces 命名空间中创建,因此如果命名空间注解值不是 openshift-devspaces,则不会检索实例 URL。
7.3.4. 标签选择器查询注解 复制链接链接已复制到粘贴板!
您可以自行编写自定义标签,RHDH 用来查找 Kubernetes 资源。标签选择器优先于 ID 注解:
annotations: backstage.io/kubernetes-label-selector: 'app=my-app,component=front-end'
annotations:
backstage.io/kubernetes-label-selector: 'app=my-app,component=front-end'
如果您在配置 Red Hat Dev Spaces 时有多个实体,并希望多个实体支持重定向到 Red Hat Dev Spaces 实例的编辑代码 decorator,您可以将 backstage.io/kubernetes-label-selector 注解添加到每个实体的 catalog-info.yaml 文件中。
annotations: backstage.io/kubernetes-label-selector: 'component in (<BACKSTAGE_ENTITY_NAME>,che)'
annotations:
backstage.io/kubernetes-label-selector: 'component in (<BACKSTAGE_ENTITY_NAME>,che)'
如果使用前面的标签选择器,您必须将以下标签添加到资源中,以便 Kubernetes 插件从请求的实体获取 Kubernetes 资源:
labels: component: che # add this label to your che cluster instance labels: component: <BACKSTAGE_ENTITY_NAME> # add this label to the other resources associated with your entity
labels:
component: che # add this label to your che cluster instance
labels:
component: <BACKSTAGE_ENTITY_NAME> # add this label to the other resources associated with your entity
您还可以为带有唯一标签的标签选择器编写您自己的自定义查询,以区分您的实体。但是,您需要确保将这些标签添加到与包括 CheCluster 实例在内的实体关联的资源中。
7.3.5. 节点中显示的图标 复制链接链接已复制到粘贴板!
要在拓扑节点中显示运行时图标,请在工作负载资源中添加以下标签,如 Deployment:
labels: app.openshift.io/runtime: <RUNTIME_NAME>
labels:
app.openshift.io/runtime: <RUNTIME_NAME>
另外,您可以包含以下标签来显示运行时图标:
labels: app.kubernetes.io/name: <RUNTIME_NAME>
labels:
app.kubernetes.io/name: <RUNTIME_NAME>
< RUNTIME_NAME>
支持的值包括:
- django
- dotnet
- drupal
- go-gopher
- golang
- Grails
- jboss
- jruby
- js
- nginx
- nodejs
- openjdk
- perl
- phalcon
- php
- python
- Quarkus
- Rails
- redis
- rh-spring-boot
- rust
- java
- rh-openjdk
- ruby
- spring
- spring-boot
其他值会导致节点无法呈现图标。
7.3.6. 应用程序分组 复制链接链接已复制到粘贴板!
要显示可视组中部署或 pod 等工作负载资源,请添加以下标签:
labels: app.kubernetes.io/part-of: <GROUP_NAME>
labels:
app.kubernetes.io/part-of: <GROUP_NAME>
7.3.7. 节点连接器 复制链接链接已复制到粘贴板!
流程
要显示使用可视连接器的部署或 pod 等工作负载资源,请添加以下注解:
+
annotations: app.openshift.io/connects-to: '[{"apiVersion": <RESOURCE_APIVERSION>,"kind": <RESOURCE_KIND>,"name": <RESOURCE_NAME>}]'
annotations:
app.openshift.io/connects-to: '[{"apiVersion": <RESOURCE_APIVERSION>,"kind": <RESOURCE_KIND>,"name": <RESOURCE_NAME>}]'
如需有关标签和注解的更多信息,请参阅 OpenShift 应用的标签和注解指南。