diff --git a/content/en/docs/_custom-en/clusterManagement/pods/pods-para-podList_whizard.adoc b/content/en/docs/_custom-en/clusterManagement/pods/pods-para-podList_whizard.adoc new file mode 100644 index 000000000..ae41dd9fb --- /dev/null +++ b/content/en/docs/_custom-en/clusterManagement/pods/pods-para-podList_whizard.adoc @@ -0,0 +1,35 @@ +// :ks_include_id: 9b12ede280884331985685925cf5dfc4 +* 容器组列表提供以下信息: ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|容器组的名称。 + +|状态 +|容器组的状态。 + +include::pods-para-podStatus_overview.adoc[] +// pod 状态不一样 + +|节点 +|容器组所在的节点和节点的 IP 地址。 + +include::pods-para-podIpPool.adoc[] + +// |应用 +// |容器组所属的应用。 + +|项目 +|容器组所属的项目。 + +|集群 +|容器组所属的集群。 + +|更新时间 +|容器组的更新时间。 +|=== +-- diff --git a/content/en/docs/_custom-en/clusterManagement/pods/pods-para-podStatus_overview.adoc b/content/en/docs/_custom-en/clusterManagement/pods/pods-para-podStatus_overview.adoc new file mode 100644 index 000000000..12593cfc4 --- /dev/null +++ b/content/en/docs/_custom-en/clusterManagement/pods/pods-para-podStatus_overview.adoc @@ -0,0 +1,13 @@ +// :ks_include_id: 8cc83a9c58b8460cbcf369b1a07288b1 + +* **运行中**:容器组已分配给某个节点,容器组中的所有容器都已被创建,至少有一个容器正在运行、启动或重启。 + +* **等待中**:容组器已被系统接受,但有至少一个容器尚未创建也未运行。此状态下,容器组可能正在等待调度,或等待容器镜像下载完成。 + +* **成功完成**:容器组中的所有容器都成功终止(以 0 退出码终止),并且不再重启。 + +* **失败**:容器组中的所有容器都已终止,并且至少有一个容器以非 0 退出码终止。 + +* **未知**:系统无法获取容器组状态。出现这种状态通常是由于系统与容器组所在的主机通信失败。 + +// 已完成 vs 成功完成:https://github.com/kubesphere/project/issues/3983#issuecomment-2246982909 \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-createARoute.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-createARoute.adoc index 1c1ac0ecf..f845bf92c 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-createARoute.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-createARoute.adoc @@ -1,2 +1,2 @@ // :ks_include_id: 797c5d8830fe45bfb4452dd98086d8ed -本节介绍如何创建应用路由。 +This section describes how to create an Ingress. diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-deleteMultipleRoutes.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-deleteMultipleRoutes.adoc index 9319461db..cc104848d 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-deleteMultipleRoutes.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-deleteMultipleRoutes.adoc @@ -1,9 +1,9 @@ // :ks_include_id: 4f3a812c48b342fdb0cec7f38b00ce81 -本节介绍如何删除应用路由。 +This section describes how to delete an Ingress. // Warning include::../../../../_ks_components-en/admonitions/warning.adoc[] -删除应用路由后将无法通过应用路由访问其后端的服务,请谨慎执行此操作。 +After deleting an Ingress, you will no longer be able to access its backend services through the Ingress. Please proceed with caution. -include::../../../../_ks_components-en/admonitions/admonEnd.adoc[] +include::../../../../_ks_components-en/admonitions/admonEnd.adoc[] \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-editRouteAnnotations.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-editRouteAnnotations.adoc index 4624887ba..48eea5958 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-editRouteAnnotations.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-editRouteAnnotations.adoc @@ -1,2 +1,2 @@ // :ks_include_id: 9a1f0d5fdb294c79a6051a90fe1a17be -本节介绍如何编辑应用路由注解。 +This section describes how to edit Ingress annotations. \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-editRouteInformation.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-editRouteInformation.adoc index bc44f6f7c..65e8bdefd 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-editRouteInformation.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-editRouteInformation.adoc @@ -1,4 +1,4 @@ // :ks_include_id: ab9cb5143fe449bb900ce47e7fb62049 -本节介绍如何编辑应用路由信息。 +This section describes how to edit Ingress information. -您可以编辑应用路由的别名和描述。{ks_product-en}不支持编辑已创建应用路由的名称。 +You can edit the alias and description of an Ingress. KubeSphere does not support editing the name of an already created Ingress. \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-editingRutingRules.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-editingRutingRules.adoc index e3aa5e477..fe18d1e25 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-editingRutingRules.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-editingRutingRules.adoc @@ -1,2 +1,2 @@ // :ks_include_id: b4c404ff621146f799e720597d3aac84 -本节介绍如何编辑路由规则。 +This section describes how to edit routing rules. diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-routes.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-routes.adoc index 7a1918009..42263b327 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-routes.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-routes.adoc @@ -1,4 +1,4 @@ // :ks_include_id: c69900173bca4b109a4b8a178ce15e64 -本节介绍如何管理应用路由。 +This section describes how to manage ingresses. -应用路由用于对服务进行聚合并提供给集群外部访问。每个应用路由包含域名及其子路径到不同服务的映射规则。来自客户端的业务流量先发送给集群网关或项目网关,集群网关或项目网关根据应用路由中定义的规则将业务流量转发给不同的服务,从而实现对多个服务的反向代理。 \ No newline at end of file +Ingresses are used to aggregate services and provide external access. Each ingress contains a domain name and its sub-paths mapped to different services. Business traffic from clients is first sent to the cluster gateway or project gateway, which then forwards the traffic to different services based on the rules defined in the ingress, thereby achieving reverse proxy for multiple services. \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-viewARouteList.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-viewARouteList.adoc index c90792cf4..988897b67 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-viewARouteList.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-viewARouteList.adoc @@ -1,2 +1,2 @@ // :ks_include_id: 74e87c7e7c4a42b59f6c9013b617a2f7 -本节介绍如何查看应用路由列表。 +This section describes how to view the Ingress list. \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-viewRouteDetails.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-viewRouteDetails.adoc index 973006db1..3944ae313 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-viewRouteDetails.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-desc-viewRouteDetails.adoc @@ -1,2 +1,2 @@ // :ks_include_id: c74f0c52dbf440a98ed71f677036f155 -本节介绍如何查看应用路由详情。 +This section describes how to view Ingress details. \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-note-annotations.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-note-annotations.adoc index d4b9a91aa..e84adffd7 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-note-annotations.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-note-annotations.adoc @@ -2,6 +2,6 @@ // Note include::../../../../_ks_components-en/admonitions/note.adoc[] -{ks_product-en}的集群网关和项目网关底层基于 Nginx Ingress Controller 实现。您可以在应用路由上设置注解控制网关的行为。有关更多信息,请参阅 link:https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/[Nginx Ingress Controller 官方文档]。 +The cluster gateway and project gateway in KubeSphere are implemented based on Nginx Ingress Controller. You can set annotations on the Ingress to control the behavior of the gateway. For more information, see link:https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/[Nginx Ingress Controller Documentation]. include::../../../../_ks_components-en/admonitions/admonEnd.adoc[] diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-createARoute.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-createARoute.adoc index e76b41733..ef9976f16 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-createARoute.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-createARoute.adoc @@ -1,24 +1,24 @@ // :ks_include_id: 570405898db841389a0ce7ed42a9a8e3 -. 在**基本信息**页签,设置应用路由的基本信息,然后点击**下一步**。 +. On the **Basic Information** tab, set the basic information for the Ingress, then click **Next**. + -- [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|名称 -|应用路由的名称。名称只能包含小写字母、数字和连字符(-),必须以小写字母或数字开头和结尾,最长 253 个字符。 +|Name +|The name of the Ingress. The name can only contain lowercase letters, numbers, and hyphens (-), must start and end with a lowercase letter or number, and can be up to 253 characters long. -|别名 -|应用路由的别名。不同应用路由的别名可以相同。别名只能包含中文、字母、数字和连字符(-),不得以连字符(-)开头或结尾,最长 63 个字符。 +|Alias +|The alias of the Ingress. Different Ingresses can have the same alias. The alias can only contain Chinese characters, letters, numbers, and hyphens (-), cannot start or end with a hyphen (-), and can be up to 63 characters long. -|描述 -|应用路由的描述。描述可包含任意字符,最长 256 个字符。 +|Description +|The description of the Ingress. The description can contain any characters and can be up to 256 characters long. |=== -- -. 在**路由规则**页签,点击**添加路由规则**,设置路由规则参数,然后点击**下一步**。 +. On the **Routing Rules** tab, click **Add Routing Rule**, set the routing rule parameters, then click **Next**. + -- ifdef::multicluster[] @@ -28,14 +28,14 @@ endif::[] include::routes-para-routingRules.adoc[] -- -. 在**高级设置**页签,为应用路由设置标签和注解,然后点击**创建**。 +. On the **Advanced Settings** tab, set labels and annotations for the Ingress, then click **Create**. + -- -* 点击**添加**可设置多条标签或注解。 +* Click **Add** to set multiple labels or annotations. -* 在已创建的标签或注解右侧点击image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18]可删除标签或注解。 +* Click image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18] on the right side of a created label or annotation to delete it. include::routes-note-annotations.adoc[] -应用路由创建完成后将显示在应用路由列表中。 --- +After the Ingress is created, it will be displayed in the Ingress list. +-- \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-deleteASingleRoute.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-deleteASingleRoute.adoc index 09b73480f..88f5ff69a 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-deleteASingleRoute.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-deleteASingleRoute.adoc @@ -1,4 +1,4 @@ // :ks_include_id: 1e5380a648764bae9ac650a53316501d -. 在需要删除的应用路由右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**删除**。 +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the ingress you want to delete, then select **Delete** from the dropdown list. -. 在**删除应用路由**对话框,输入应用路由的名称,然后点击**确定**。 +. In the **Delete Ingress** dialog, enter the name of the ingress, then click **OK**. \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-deleteRoutes.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-deleteRoutes.adoc index 536468c05..787c0697e 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-deleteRoutes.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-deleteRoutes.adoc @@ -1,8 +1,8 @@ // :ks_include_id: 6ec380c8bcbe4e1589334e0b050b0b6c -. 选择需要删除的应用路由左侧的复选框,然后在应用路由列表上方点击**删除**。 +. Select the checkbox on the left side of the Ingresses you want to delete, then click **Delete** above the ingress list. -. 在**批量删除应用路由**对话框,输入应用路由的名称,然后点击**确定**。 +. In the **Delete Multiple Ingresses** dialog, enter the names of the Ingresses, then click **OK**. + -- include::../../note-separateNamesByComma.adoc[] --- +-- \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-editRouteAnnotations.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-editRouteAnnotations.adoc index bb9c9bf62..532bab746 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-editRouteAnnotations.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-editRouteAnnotations.adoc @@ -1,12 +1,12 @@ // :ks_include_id: 2ead4c416e934d44b2a8a404251bdfe8 -. 在需要操作的应用路由右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑注解**。 +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the ingress you want to edit, then select **Edit Annotations** from the dropdown list. -. 在**编辑注解**对话框,设置注解键值对,然后点击**确定**。 +. In the **Edit Annotations** dialog, set the annotation key-value pairs, then click **OK**. + -- -* 点击**添加**可设置多条注解。 +* Click **Add** to set multiple annotations. -* 在已创建的注解右侧点击image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18]可删除注解。 +* Click image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18] on the right side of a created annotation to delete it. include::routes-note-annotations.adoc[] --- +-- \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-editRouteInformation.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-editRouteInformation.adoc index 63873270a..bbd7d287f 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-editRouteInformation.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-editRouteInformation.adoc @@ -1,17 +1,17 @@ // :ks_include_id: 9f1f9315fbc0466396a168bfa897683f -. 在需要操作的应用路由右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑信息**。 +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the Ingress you want to edit, then select **Edit Information** from the dropdown list. -. 在**编辑信息**对话框,设置应用路由的别名和描述,然后点击**确定**。 +. In the **Edit Information** dialog, set the alias and description of the ingress, then click **OK**. + -- [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|别名 -|应用路由的别名。不同应用路由的别名可以相同。别名只能包含中文、字母、数字和连字符(-),不得以连字符(-)开头或结尾,最长 63 个字符。 +|Alias +|The alias of the ingress. Different ingresses can have the same alias. The alias can only contain Chinese characters, letters, numbers, and hyphens (-), and cannot start or end with a hyphen (-), with a maximum length of 63 characters. -|描述 -|应用路由的描述信息。描述可包含任意字符,最多包含 256 个字符。 +|Description +|The description information of the ingress. The description can contain any characters, with a maximum of 256 characters. |=== --- +-- \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-editRoutingRules.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-editRoutingRules.adoc index 5eb07ec8d..8d56238be 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-editRoutingRules.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-editRoutingRules.adoc @@ -1,8 +1,8 @@ // :ks_include_id: b0e0fbee5bf54cfda0ac0d8847b90185 -. 在需要操作的应用路由右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑路由规则**。 +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the ingress you want to edit, then select **Edit Routing Rules** from the dropdown list. -. 在**编辑路由规则**对话框,设置路由规则,然后点击**确定**。 +. In the **Edit Routing Rules** dialog, set the routing rules, then click **OK**. + -- include::routes-para-routingRules.adoc[] --- +-- \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-openDetailsPage.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-openDetailsPage.adoc index 0e7bcfcb7..929a78650 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-openDetailsPage.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-openDetailsPage.adoc @@ -1,2 +1,2 @@ // :ks_include_id: 01c521d890b44fab91dfa6803d6a6bb5 -. 在应用路由列表中点击一个应用路由的名称打开其详情页面。 +. Click the name of an Ingress in the Ingress list to open its details page. diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-searchForRoutes.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-searchForRoutes.adoc index 1b3de39de..5d1730f61 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-searchForRoutes.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-searchForRoutes.adoc @@ -1,2 +1,2 @@ // :ks_include_id: a3a4d6c4c46d4b8dbf054da9c20cd804 -* 在列表上方点击搜索框并设置搜索条件,可按名称搜索应用路由。 +* Click the search box at the top of the list to search for Ingresses by name. \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-viewRouteDetails-for-kubefed.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-viewRouteDetails-for-kubefed.adoc index 2b9693b76..a32bc8315 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-viewRouteDetails-for-kubefed.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-oper-viewRouteDetails-for-kubefed.adoc @@ -1,70 +1,71 @@ // :ks_include_id: 02ac1cebc06f4893a036c2e77c21d999 -. 在应用路由详情页面左侧的**属性**区域查看应用路由的详细信息。 +. On the Ingress details page, view the detailed information of the Ingress in the **Attributes** area on the left. + -- [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -// |集群 -// |应用路由的所属集群。 +// |Cluster +// |The cluster to which the Ingress belongs. -|项目 -|应用路由的所属项目。 +|Project +|The project to which the Ingress belongs. -|应用 -|应用路由对应的应用。 +|App +|The app corresponding to the Ingress. -// |网关地址 +// |Gateway Address // | // include::../gatewaySettings/gatewaySettings-para-address.adoc[] -|创建时间 -|应用路由的创建时间。 +|Creation Time +|The creation time of the Ingress. -|创建者 -|创建应用路由的用户。 +|Creator +|The user who created the Ingress. |=== -- -. 在应用路由详情页面右侧的**资源状态**页签查看应用路由的路由规则。 +. On the Ingress details page, view the routing rules of the Ingress in the **Resource Status** tab on the right. + -- -**资源状态**页签显示当前应用路由的所有路由规则。 +The **Resource Status** tab displays all routing rules of the current Ingress. + [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|域名和端口 -|应用路由的域名和节点端口号。节点端口号仅在集群网关或项目网关的外部访问为 NodePort 时显示。 +|Domain and Port +|The domain name and node port number of the Ingress. The node port number is only displayed when the external access mode of the cluster gateway or project gateway is NodePort. -* 如果集群网关或项目网关的外部访问模式为 NodePort,客户端需要通过 DNS 服务或本地 **hosts** 文件将域名解析为集群中任意节点的 IP 地址,并通过域名、路径和端口号(例如 **example.com/test:30240**)访问应用路由。 +* If the external access mode of the cluster gateway or project gateway is NodePort, clients need to resolve the domain name to the IP address of any node in the cluster through DNS service or local **hosts** file, and access the Ingress through the domain name, path, and port number (e.g., **example.com/test:30240**). -* 如果集群网关或项目网关的外部访问模式为 LoadBalancer,客户端需要通过 DNS 服务或本地 **hosts** 文件将域名解析为项目网关负载均衡器的 IP 地址,并通过域名和路径(例如 **example.com/test**)访问应用路由。 +* If the external access mode of the cluster gateway or project gateway is LoadBalancer, clients need to resolve the domain name to the IP address of the project gateway load balancer through DNS service or local **hosts** file, and access the Ingress through the domain name and path (e.g., **example.com/test**). -|协议 -|应用路由支持的协议,取值为**HTTP** 或 **HTTPS**。 +|Protocol +|The protocol supported by the Ingress, with values of **HTTP** or **HTTPS**. -|证书 -|应用路由协议为 HTTPS 时,所使用的包含证书和私钥的保密字典的名称。仅在应用路由协议为 HTTPS 时显示。 +|Certificate +|The name of the secret containing the certificate and private key used when the Ingress protocol is HTTPS. Only displayed when the Ingress protocol is HTTPS. -|路径 -|域名的路径,每条路径对应一个服务。 +|Path +|The path of the domain name, with each path corresponding to a service. -|服务 -|域名路径所对应的服务的名称。 +|Service +|The name of the service corresponding to the domain name path. -|端口 -|域名路径所对应的服务的端口号。 +|Port +|The port number of the service corresponding to the domain name path. |=== -在路由规则右侧点击**访问服务**可访问应用路由的后端服务。 +Click **Access Service** on the right side of the routing rule to access the backend service of the Ingress. -- -. 在应用路由详情页面右侧点击**元数据**页签查看应用路由的**标签**和**注解**。 +. On the Ingress details page, click the **Metadata** tab on the right to view the **Labels** and **Annotations** of the Ingress. -. 在应用路由详情页面右侧点击**事件**页签查看应用路由的事件。 +. On the Ingress details page, click the **Events** tab on the right to view events related to the Ingress. + -- include::../clusterManagement-para-eventsTab.adoc[] --- +-- \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/routes/routes-para-routingRules.adoc b/content/en/docs/_custom-en/clusterManagement/routes/routes-para-routingRules.adoc index 4f97c8493..4ef122d50 100644 --- a/content/en/docs/_custom-en/clusterManagement/routes/routes-para-routingRules.adoc +++ b/content/en/docs/_custom-en/clusterManagement/routes/routes-para-routingRules.adoc @@ -1,27 +1,27 @@ // :ks_include_id: cd11a468685d4e6fadc53bf1c8827311 -* 点击**添加路由规则**可设置路由规则。您可以设置多条路由规则,每条规则对应一个域名。 +* Click **Add Routing Rule** to set routing rules. You can set multiple routing rules, each corresponding to a domain name. -* 将光标悬停在已创建的路由规则上,然后在右侧点击image:/images/ks-qkcp/zh/icons/pen-light.svg[pen,18,18]可编辑路由规则的设置。 +* Hover the cursor over a created routing rule, then click image:/images/ks-qkcp/zh/icons/pen-light.svg[pen,18,18] on the right side to edit the routing rule settings. -* 将光标悬停在已创建的路由规则上,然后在右侧点击image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18]可删除路由规则。 +* Hover the cursor over a created routing rule, then click image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18] on the right side to delete the routing rule. [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|域名 -|用户自定义的域名。 +|Domain +|The user-defined domain name. -|协议 -|应用路由支持的协议,参数值可以为 **HTTP** 或 **HTTPS**。 +|Protocol +|The protocol supported by the Ingress. The value can be **HTTP** or **HTTPS**. -|保密字典 -|应用路由协议为 **HTTPS** 时,用于提供证书和密钥的保密字典。该保密字典必须包含 **tls.cert** 和 **tls.key** 字段,分别存储 Base64 编码的证书和私钥。 +|Secret +|The Secret used to provide the certificate and key when the Ingress protocol is **HTTPS**. This Secret must contain the **tls.cert** and **tls.key** fields, which store the Base64-encoded certificate and private key, respectively. -|路径 -|域名路径及其与服务端口的映射关系。 +|Path +|The domain path and its mapping relationship with the service port. -* 点击**添加**可设置多条路径。 +* Click **Add** to set multiple paths. -* 在已创建的路径右侧点击image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18]可删除路径。 +* Click image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18] on the right side of a created path to delete the path. |=== \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/services/services-oper-editServiceSettings-for-kubefed.adoc b/content/en/docs/_custom-en/clusterManagement/services/services-oper-editServiceSettings-for-kubefed.adoc index 759cf775c..3863d1c4a 100644 --- a/content/en/docs/_custom-en/clusterManagement/services/services-oper-editServiceSettings-for-kubefed.adoc +++ b/content/en/docs/_custom-en/clusterManagement/services/services-oper-editServiceSettings-for-kubefed.adoc @@ -1,17 +1,17 @@ // :ks_include_id: f0f32c026c8a44b7ac18acbadf465ea5 -. 在需要操作的服务右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑设置**。 +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the service you want to operate, then select **Edit Settings** from the dropdown list. -. 在**编辑设置**对话框的**服务设置**页签,修改服务的设置。 +. On the **Service Settings** tab, modify the service settings. -* 对于内部访问模式为 ExternalName 的服务,您可以修改外部服务的地址。 +* For services with an internal access mode of ExternalName, you can modify the address of the external service. -* 对于其他服务,您可以修改服务的内部访问模式、工作负载选择器和端口。 +* For other services, you can modify the internal access mode, workload selector, and ports. + -- include::services-para-serviceSettings.adoc[] -- -. 在**编辑设置**对话框的**集群差异设置**页签,为不同集群中的服务基于端口进行差异化设置,然后点击**确定**。 +. On the **Cluster Differences** tab, differentiate the service based on ports in different clusters, then click **OK**. + -- // include::../../../multi-clusterProjectManagement/services/services-oper-setClusterDiff.adoc[] diff --git a/content/en/docs/_custom-en/clusterManagement/services/services-oper-openServiceExternalAccessSettings.adoc b/content/en/docs/_custom-en/clusterManagement/services/services-oper-openServiceExternalAccessSettings.adoc index 8fbcf2984..7e59f9065 100644 --- a/content/en/docs/_custom-en/clusterManagement/services/services-oper-openServiceExternalAccessSettings.adoc +++ b/content/en/docs/_custom-en/clusterManagement/services/services-oper-openServiceExternalAccessSettings.adoc @@ -1,5 +1,5 @@ // :ks_include_id: f8bbecbf87544c4f9173c8107364d8ee -. 在服务详情页面右侧点击**访问信息**页签查看服务的访问信息。 +. On the service details page, click the **Access Information** tab on the right to view the service's access information. -. 点击页面右侧的image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后从下拉列表中选择**编辑外部访问**。 \ No newline at end of file +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the page, then select **Edit External Access** from the dropdown list. \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/services/services-oper-searchForServices.adoc b/content/en/docs/_custom-en/clusterManagement/services/services-oper-searchForServices.adoc index 2799e7f68..fc6a56449 100644 --- a/content/en/docs/_custom-en/clusterManagement/services/services-oper-searchForServices.adoc +++ b/content/en/docs/_custom-en/clusterManagement/services/services-oper-searchForServices.adoc @@ -1,2 +1,2 @@ // :ks_include_id: d085604adc244a4cbb580fb88485f275 -* Click the search box at the top of the list and search for services by name. +* Click the search box at the top of the list to search for services by name. diff --git a/content/en/docs/_custom-en/clusterManagement/services/services-oper-viewServiceDetails-for-kubefed.adoc b/content/en/docs/_custom-en/clusterManagement/services/services-oper-viewServiceDetails-for-kubefed.adoc index eb2174b88..9ab637347 100644 --- a/content/en/docs/_custom-en/clusterManagement/services/services-oper-viewServiceDetails-for-kubefed.adoc +++ b/content/en/docs/_custom-en/clusterManagement/services/services-oper-viewServiceDetails-for-kubefed.adoc @@ -1,19 +1,19 @@ // :ks_include_id: ec83e4ff0eb74cdaa02d3a52062d9bc5 -. 在服务详情页面左侧的**属性**区域查看服务的资源属性。 +. On the service details page, view the service's resource attributes in the **Attributes** area on the left. + -- [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -// |集群 -// |服务所属的集群。 +// |Cluster +// |The cluster to which the service belongs. -|项目 -|服务所属的项目。 +|Project +|The project to which the service belongs. -|类型 +|Type | include::services-para-internalAccess.adoc[] @@ -21,94 +21,94 @@ include::services-para-virtualip-headless.adoc[] include::services-para-externalName.adoc[] -|应用 -|服务所属的应用名称。您可以创建一个包含多个服务的应用,每个服务都对应一个工作负载。 +|App +|The name of the app to which the service belongs. You can create an app that includes multiple services, each corresponding to a workload. -// |虚拟 IP 地址 -// |服务供集群内部访问的虚拟 IP 地址,仅对 VirtualIP 类型的服务显示。 +// |Virtual IP Address +// |The virtual IP address for internal access within the cluster, only displayed for VirtualIP type services. -// |外部 IP 地址 -// |服务供集群外部访问的 IP 地址,仅在服务启用外部访问时显示。 +// |External IP Address +// |The IP address for external access outside the cluster, only displayed when the service has external access enabled. -// |会话保持 -// |是否已启用会话保持功能,取值可以为: +// |Session Persistence +// |Whether session persistence is enabled, with possible values: -// * **已启用**:已启用会话保持。如果服务有多个容器组,在一定时间内(默认值为 10800 秒),来自相同客户端 IP 地址的请求将被转发给同一个容器组。 +// * **Enabled**: Session persistence is enabled. If the service has multiple pods, requests from the same client IP address will be forwarded to the same pod within a certain time (default is 10800 seconds). -// * **未启用**:未启用会话保持。如果服务有多个容器组,来自相同客户端 IP 地址的请求将被随机转发给不同的容器组。 +// * **Not Enabled**: Session persistence is not enabled. If the service has multiple pods, requests from the same client IP address will be randomly forwarded to different pods. -// |选择器 -// |服务的容器组选择器。容器组选择器由一个多个容器组标签组成,服务会将客户端请求转发给具有全部指定标签的容器组。 +// |Selector +// |The pod selector for the service. The pod selector consists of one or more pod labels, and the service will forward client requests to pods that have all the specified labels. // |DNS -// |服务在集群内部的域名,可在集群内部访问。 +// |The internal domain name of the service, accessible within the cluster. -// |端点 -// |服务的目标容器组的虚拟 IP 地址和容器端口。 +// |Endpoints +// |The virtual IP address and container port of the target pods for the service. -|创建时间 -|服务的创建时间。 +|Creation Time +|The creation time of the service. -|更新时间 -|服务的最后更新时间。 +|Update Time +|The last update time of the service. -|创建者 -|创建服务的用户。 +|Creator +|The user who created the service. |=== -- -. 在服务详情页面右侧的**资源状态**页签查看服务的容器组副本数量和容器组。 +. On the service details page, view the number of pod replicas and pods for the service in the **Resource Status** tab on the right. + -- [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|容器组副本数量 -|设置每个集群的容器组副本数。 +|Pod Replicas +|The number of pod replicas for each cluster. -|容器组 +|Pods | -服务中运行的所有容器组。展开下拉框可以选择查看特定集群中的容器组信息。 +All pods running in the service. Expand the dropdown to view pod information for specific clusters. include::../nodes/nodes-para-podList.adoc[] |=== -- -. 在服务详情页面右侧的**访问信息**页签查看服务的访问信息。 +. On the service details page, view the service's access information in the **Access Information** tab on the right. + -- [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|内部域名 -|可通过 ..svc 格式的域名从集群内部访问服务。 +|Internal Domain Name +|The service can be accessed from within the cluster using a domain name in the format ..svc. -|虚拟 IP 地址 -|服务供集群内部访问的虚拟 IP 地址。 +|Virtual IP Address +|The virtual IP address for internal access within the cluster. -|端口 -|为使容器能够被正常访问,{ks_product-en}平台上定义了以下端口类型: +|Ports +|To ensure that containers can be accessed normally, {ks_product-en} defines the following port types: -* 容器端口:容器中的应用程序监听的端口,只能在容器组内部访问。 +* Container Port: The port on which the application in the container is listening, only accessible within the pod. -* 服务端口:服务虚拟 IP 地址的端口,只能在集群内部访问,发送到服务端口的请求将被转发给容器端口。 +* Service Port: The port of the service's virtual IP address, only accessible within the cluster, and requests sent to the service port will be forwarded to the container port. -* 节点端口:节点主机上的端口,可以从集群外部访问,发送到节点端口的请求将被转发给服务端口。NodePort 或 LoadBalancer 类型的服务具有节点端口。 +* Node Port: The port on the node host, accessible from outside the cluster, and requests sent to the node port will be forwarded to the service port. NodePort or LoadBalancer type services have node ports. -// |工作负载 -// |显示管理容器组的工作负载的名称、更新时间、类型、状态和当前修改记录。 +// |Workload +// |Displays the name, update time, type, status, and current revision record of the workload that manages the pods. -// |容器组 +// |Pods // | // include::../nodes/nodes-para-podList.adoc[] |=== -- -. 在服务详情页面右侧点击**元数据**页签查看服务的标签和注解。 +. On the service details page, click the **Metadata** tab on the right to view the service's labels and annotations. -. 在服务详情页面右侧点击**事件**页签查看服务相关的事件。 +. On the service details page, click the **Events** tab on the right to view events related to the service. + -- include::../clusterManagement-para-eventsTab.adoc[] diff --git a/content/en/docs/_custom-en/clusterManagement/workloads/createWorkload/workloads-multi-project-para-workloadList.adoc b/content/en/docs/_custom-en/clusterManagement/workloads/createWorkload/workloads-multi-project-para-workloadList.adoc index d1c2f74af..81275328b 100644 --- a/content/en/docs/_custom-en/clusterManagement/workloads/createWorkload/workloads-multi-project-para-workloadList.adoc +++ b/content/en/docs/_custom-en/clusterManagement/workloads/createWorkload/workloads-multi-project-para-workloadList.adoc @@ -1,24 +1,24 @@ // :ks_include_id: cad509443a554a38ab6ce4a11e4d2b73 -* 工作负载列表提供以下信息: +* The workload list provides the following information: + -- [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|名称 -|工作负载的名称和描述信息。 +|Name +|The name and description of the workload. -|状态 +|Status | -工作负载的正常容器组副本数、期望容器组副本数和运行状态。工作负载状态包括以下类型: +The number of normal pod replicas, the desired number of pod replicas, and the running status of the workload. The workload status includes the following types: include::../workloads-para-workloadStatus.adoc[] -|应用 -|工作负载所声明的应用。 +|App +|The app declared by the workload. -|更新时间 -|工作负载的更新时间。 +|Update Time +|The update time of the workload. |=== --- +-- \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/workloads/createWorkload/workloads-para-temporaryVolume.adoc b/content/en/docs/_custom-en/clusterManagement/workloads/createWorkload/workloads-para-temporaryVolume.adoc index aa41cab8c..9fb3d61ac 100644 --- a/content/en/docs/_custom-en/clusterManagement/workloads/createWorkload/workloads-para-temporaryVolume.adoc +++ b/content/en/docs/_custom-en/clusterManagement/workloads/createWorkload/workloads-para-temporaryVolume.adoc @@ -1,18 +1,18 @@ // :ks_include_id: cc570a193fc8465392e3f53790581f56 -为容器挂载临时卷。临时卷具有以下特点: +Mount a temporary volume for the container. Temporary volumes have the following characteristics: -* 由系统自动在容器组所在的节点的存储系统中创建。 +* Automatically created by the system in the storage system of the node where the pod is located. -* 由系统自动管理,容量上限为节点的存储容量。 +* Automatically managed by the system, with a capacity limit equal to the storage capacity of the node. -* 无法保存持久化数据,容器组创建时由系统自动创建临时卷,容器组删除时由系统自动删除临时卷。 +* Cannot save persistent data. The system automatically creates a temporary volume when the pod is created and automatically deletes the temporary volume when the pod is deleted. [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|卷名称 -|临时卷的名称。 +|Volume Name +|The name of the temporary volume. include::workloads-para-volumeMountModePath.adoc[] diff --git a/content/en/docs/_custom-en/clusterManagement/workloads/workloads-desc-adjustTheNumberOfPodReplicas.adoc b/content/en/docs/_custom-en/clusterManagement/workloads/workloads-desc-adjustTheNumberOfPodReplicas.adoc index 10b15c025..2b01413af 100644 --- a/content/en/docs/_custom-en/clusterManagement/workloads/workloads-desc-adjustTheNumberOfPodReplicas.adoc +++ b/content/en/docs/_custom-en/clusterManagement/workloads/workloads-desc-adjustTheNumberOfPodReplicas.adoc @@ -1,2 +1,2 @@ // :ks_include_id: 04ecee90589140c28c84ab59ddd6aeb7 -This section explains how to adjust the replica count of pods in a workload. +This section explains how to adjust the number of pod replicas in a workload. diff --git a/content/en/docs/_custom-en/clusterManagement/workloads/workloads-multi-project-oper-createAWorkload-ClusterDiff.adoc b/content/en/docs/_custom-en/clusterManagement/workloads/workloads-multi-project-oper-createAWorkload-ClusterDiff.adoc index b38edbaa0..9e3db2c6d 100644 --- a/content/en/docs/_custom-en/clusterManagement/workloads/workloads-multi-project-oper-createAWorkload-ClusterDiff.adoc +++ b/content/en/docs/_custom-en/clusterManagement/workloads/workloads-multi-project-oper-createAWorkload-ClusterDiff.adoc @@ -1,11 +1,13 @@ // :ks_include_id: 436a1f9062db4517a30c7da15aad1061 -. 在**基本信息**页签,设置工作负载的基本信息,然后点击**下一步**。 +. On the **Basic Information** tab, set the basic information for the workload, then click **Next**. -. 在**容器组设置**页签,为工作负载管理的容器组设置副本数量、容器、更新策略、安全上下文、调度规则和元数据,然后点击**下一步**。 +. On the **Pod Settings** tab, set the number of replicas, containers, update strategy, security context, scheduling rules, and metadata for the pods managed by the workload, then click **Next**. -. 在**存储设置**页签,为工作负载管理的容器挂载卷,然后点击**下一步**。 +. On the **Storage Settings** tab, mount volumes for the containers managed by the workload, then click **Next**. -. 在**高级设置**页签,为工作负载管理的容器组指定节点,并设置工作负载的元数据。 +. On the **Advanced Settings** tab, specify nodes for the pods managed by the workload and set the metadata for the workload. -. 在**集群差异设置**页签,为不同集群中的工作负载基于容器、端口和环境变量进行差异化设置,然后点击**创建**。工作负载创建完成后将显示在工作负载列表中。 \ No newline at end of file +. On the **Cluster Differences** tab, differentiate the workload based on containers, ports, and environment variables in different clusters, then click **Create**. ++ +After the workload is created, it will be displayed in the workload list. \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/workloads/workloads-multi-project-oper-openListPage.adoc b/content/en/docs/_custom-en/clusterManagement/workloads/workloads-multi-project-oper-openListPage.adoc index 43a0cd5ae..ac0abd828 100644 --- a/content/en/docs/_custom-en/clusterManagement/workloads/workloads-multi-project-oper-openListPage.adoc +++ b/content/en/docs/_custom-en/clusterManagement/workloads/workloads-multi-project-oper-openListPage.adoc @@ -1,2 +1,2 @@ // :ks_include_id: d908eb90806d4d4ba8b6cbb65a3b96e1 -. 在**工作负载**页面,点击**部署**或**有状态副本集**打开工作负载列表。 \ No newline at end of file +. On the **Workloads** page, click **Deployments** or **StatefulSets** to open the workload list. \ No newline at end of file diff --git a/content/en/docs/_custom-en/clusterManagement/workloads/workloads-multi-project-oper-searchForWorkloads.adoc b/content/en/docs/_custom-en/clusterManagement/workloads/workloads-multi-project-oper-searchForWorkloads.adoc index a336a271a..996a1a42b 100644 --- a/content/en/docs/_custom-en/clusterManagement/workloads/workloads-multi-project-oper-searchForWorkloads.adoc +++ b/content/en/docs/_custom-en/clusterManagement/workloads/workloads-multi-project-oper-searchForWorkloads.adoc @@ -1,2 +1,2 @@ // :ks_include_id: 2f8f4e8c4cba43e0b81959fc339f9ca5 -* 在列表上方点击搜索框并设置搜索条件,可按名称搜索工作负载。 +* Click the search box at the top of the list to search for workloads by name. diff --git a/content/en/docs/_custom-en/multi-clusterProjectManagement/apps/apps-oper-viewResourceStatus.adoc b/content/en/docs/_custom-en/multi-clusterProjectManagement/apps/apps-oper-viewResourceStatus.adoc index 2a0e1adcf..350d8d0cc 100644 --- a/content/en/docs/_custom-en/multi-clusterProjectManagement/apps/apps-oper-viewResourceStatus.adoc +++ b/content/en/docs/_custom-en/multi-clusterProjectManagement/apps/apps-oper-viewResourceStatus.adoc @@ -1,23 +1,23 @@ // :ks_include_id: 0432dd129aa949c9b90b43831d5d0157 -. 在应用详情页面右侧的**资源状态**页签查看组成应用的服务。 +. On the app details page, view the services that make up the app in the **Resource Status** tab on the right. + -- -**服务**区域提供以下信息: +The **Services** area provides the following information: [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|有状态服务 -|组成该应用的有状态服务的名称。 +|Stateful Service +|The name of the stateful service that makes up the app. -|无状态服务 -|组成该应用的无状态服务的名称。 +|Stateless Service +|The name of the stateless service that makes up the app. -|内部域名 -|可通过 ..svc 格式的域名从集群内部访问服务。 +|Internal Domain Name +|The service can be accessed from within the cluster using a domain name in the format ..svc. -|虚拟 IP 地址 -|服务供集群内部访问的虚拟 IP 地址。 +|Virtual IP Address +|The virtual IP address for internal access within the cluster. |=== -- \ No newline at end of file diff --git a/content/en/docs/_custom-en/multi-clusterProjectManagement/apps/apps-para-details.adoc b/content/en/docs/_custom-en/multi-clusterProjectManagement/apps/apps-para-details.adoc index 06bd4879d..9479ef9b0 100644 --- a/content/en/docs/_custom-en/multi-clusterProjectManagement/apps/apps-para-details.adoc +++ b/content/en/docs/_custom-en/multi-clusterProjectManagement/apps/apps-para-details.adoc @@ -1,19 +1,19 @@ // :ks_include_id: 70f19c4ccbb54fb4ad10de0f5c8a4a1e -|项目 -|应用所属的项目。 +|Project +|The project to which the app belongs. -|应用 -|应用的名称。 +|App +|The name of the app. -|版本 -|应用的版本。 +|Version +|The version of the app. -|创建时间 -|应用的创建时间。 +|Creation Time +|The creation time of the app. -|更新时间 -|应用的更新时间。 +|Update Time +|The update time of the app. -|创建者 -|创建应用的用户。 +|Creator +|The user who created the app. \ No newline at end of file diff --git a/content/en/docs/_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc b/content/en/docs/_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc index 882a08e1d..ab69cde56 100644 --- a/content/en/docs/_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc +++ b/content/en/docs/_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc @@ -1,2 +1,2 @@ // :ks_include_id: 161aaad98ab04d7fa4240eec51d232f7 -. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product-en} Web 控制台并进入您的联邦项目。 +. Log in to the {ks_product-en} web console with a user who has the pass:a,q[{ks_permission}] permission, and access your multi-cluster project. \ No newline at end of file diff --git a/content/en/docs/_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission.adoc b/content/en/docs/_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission.adoc index b8074c487..fb01364e5 100644 --- a/content/en/docs/_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission.adoc +++ b/content/en/docs/_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission.adoc @@ -1,2 +1,2 @@ // :ks_include_id: a7b11e38d6794c2692390f9d0afbb7df -您需要加入一个多集群项目并在项目中具有pass:a,q[{ks_permission}]权限。 +You should join a multi-cluster project and have the pass:a,q[{ks_permission}] permission within the project. \ No newline at end of file diff --git a/content/en/docs/_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc b/content/en/docs/_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc index 70cba9fe9..fb01364e5 100644 --- a/content/en/docs/_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc +++ b/content/en/docs/_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc @@ -1,2 +1,2 @@ // :ks_include_id: a7b11e38d6794c2692390f9d0afbb7df -您需要加入一个联邦项目并在对应企业空间中具有pass:a,q[{ks_permission}]权限。 +You should join a multi-cluster project and have the pass:a,q[{ks_permission}] permission within the project. \ No newline at end of file diff --git a/content/en/docs/_custom-en/multi-clusterProjectManagement/routes/routes-create-ClusterDiff.adoc b/content/en/docs/_custom-en/multi-clusterProjectManagement/routes/routes-create-ClusterDiff.adoc index 749f72184..41756d0b8 100644 --- a/content/en/docs/_custom-en/multi-clusterProjectManagement/routes/routes-create-ClusterDiff.adoc +++ b/content/en/docs/_custom-en/multi-clusterProjectManagement/routes/routes-create-ClusterDiff.adoc @@ -1,3 +1,2 @@ // :ks_include_id: 479a0d3323374bee8e2220e0fdafd307 - -* 在**集群**区域,勾选项目所在的一个或多个集群,可为指定集群中的应用添加路由规则。 \ No newline at end of file +* In the **Cluster** area, select one or more clusters where the project belongs to add routing rules for the app in the specified clusters. \ No newline at end of file diff --git a/content/en/docs/_custom-en/multi-clusterProjectManagement/routes/routes-para-routeList.adoc b/content/en/docs/_custom-en/multi-clusterProjectManagement/routes/routes-para-routeList.adoc index 7c62b6e5a..fb84e3db1 100644 --- a/content/en/docs/_custom-en/multi-clusterProjectManagement/routes/routes-para-routeList.adoc +++ b/content/en/docs/_custom-en/multi-clusterProjectManagement/routes/routes-para-routeList.adoc @@ -1,21 +1,21 @@ // :ks_include_id: d43be0d6bddf43e5aacfeed52c0fe32a -* 应用路由列表提供以下信息: +* The Ingress list provides the following information: + -- [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|名称 -|应用路由的名称和描述。 +|Name +|The name and description of the Ingress. -|状态 -|应用路由当前的状态。 +|Status +|The current status of the Ingress. -|应用 -|应用路由所对应的应用名称。 +|App +|The name of the app to which the Ingress corresponds. -|创建时间 -|应用路由的创建时间。 +|Creation Time +|The creation time of the Ingress. |=== --- +-- \ No newline at end of file diff --git a/content/en/docs/_custom-en/multi-clusterProjectManagement/services/services-oper-setClusterDiff.adoc b/content/en/docs/_custom-en/multi-clusterProjectManagement/services/services-oper-setClusterDiff.adoc index 2ebea3934..2770b6985 100644 --- a/content/en/docs/_custom-en/multi-clusterProjectManagement/services/services-oper-setClusterDiff.adoc +++ b/content/en/docs/_custom-en/multi-clusterProjectManagement/services/services-oper-setClusterDiff.adoc @@ -1,14 +1,14 @@ // :ks_include_id: 1c90e483af564b3eb017afec1b5da0c8 [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|容器设置 -|在不同的集群中使用不同的容器设置。在多集群环境下,您可以为指定集群中的服务设置不同的容器镜像、容器类型和资源配置等。 +|Container Settings +|Use different container settings in different clusters. In a multi-cluster environment, you can set different container images, container types, and resource configurations for the service in specified clusters. -|端口设置 -|为不同集群中的容器设置不同的端口。在多集群环境下,您可以为指定集群中的服务设置不同的访问协议、容器端口和服务端口等。 +|Port Settings +|Set different ports for containers in different clusters. In a multi-cluster environment, you can set different access protocols, container ports, and service ports for the service in specified clusters. -|环境变量 -|为不同集群中的容器设置不同的环境变量。在多集群环境下,您可以为指定集群中的服务设置不同的环境变量。 +|Environment Variables +|Set different environment variables for containers in different clusters. In a multi-cluster environment, you can set different environment variables for the service in specified clusters. |=== \ No newline at end of file diff --git a/content/en/docs/_custom-en/multi-clusterProjectManagement/services/services-oper-setStorageAdvancedDiff.adoc b/content/en/docs/_custom-en/multi-clusterProjectManagement/services/services-oper-setStorageAdvancedDiff.adoc index 85a583238..cc78c13e0 100644 --- a/content/en/docs/_custom-en/multi-clusterProjectManagement/services/services-oper-setStorageAdvancedDiff.adoc +++ b/content/en/docs/_custom-en/multi-clusterProjectManagement/services/services-oper-setStorageAdvancedDiff.adoc @@ -1,6 +1,6 @@ // :ks_include_id: 417489540caa4044871d8fba1c13e801 -. 在**存储设置**页签,为服务后端工作负载管理的容器挂载卷,然后点击**下一步**。 +. On the **Storage Settings** tab, mount volumes for the containers managed by the service backend workload, then click **Next**. -. 在**高级设置**页签,为服务后端工作负载管理的容器组指定 IP 池和节点,设置服务的外部访问模式、会话保持设置和元数据,然后点击**下一步**。 +. On the **Advanced Settings** tab, specify IP pools and nodes for the pods managed by the service backend workload, set the external access mode, session persistence settings, and metadata for the service, then click **Next**. -. 在**集群差异设置**页签,为不同集群中的服务基于容器、端口和环境变量进行差异化设置,然后点击**创建**。服务创建完成后将显示在服务列表中。 +. On the **Cluster Differences** tab, differentiate the services in different clusters based on containers, ports, and environment variables, then click **Create**. After the service is created, it will be displayed in the service list. \ No newline at end of file diff --git a/content/en/docs/_custom-en/multi-clusterProjectManagement/workloads/para-replicasPortsPods.adoc b/content/en/docs/_custom-en/multi-clusterProjectManagement/workloads/para-replicasPortsPods.adoc index ee9cd1690..5d037ba44 100644 --- a/content/en/docs/_custom-en/multi-clusterProjectManagement/workloads/para-replicasPortsPods.adoc +++ b/content/en/docs/_custom-en/multi-clusterProjectManagement/workloads/para-replicasPortsPods.adoc @@ -1,17 +1,17 @@ // :ks_include_id: 57816266c5504de8838e5d900bee849d [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|容器组副本数量 -|各集群中工作负载的当前容器组副本数和期望容器组副本数。 +|Pod Replicas +|The current and desired number of pod replicas for the workload in each cluster. -|端口 -|工作负载管理的容器的端口名称、协议和端口号。 +|Ports +|The port name, protocol, and port number of the containers managed by the workload. -|容器组 +|Pods | -工作负载中运行的所有容器组。展开下拉框可以选择查看特定集群中的容器组信息。 +All pods running in the workload. Expand the dropdown to view pod information for specific clusters. include::../../clusterManagement/nodes/nodes-para-podList.adoc[] |=== \ No newline at end of file diff --git a/content/en/docs/_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-openDetailsPage.adoc b/content/en/docs/_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-openDetailsPage.adoc index b890d8235..e5d7b7acf 100644 --- a/content/en/docs/_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-openDetailsPage.adoc +++ b/content/en/docs/_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-openDetailsPage.adoc @@ -1,3 +1,3 @@ // :ks_include_id: 1901acc4d08f4b24bff6496619ed61bc -. 在**部署**或**有状态副本集**页签,点击目标工作负载名称,进入工作负载详情页面。 \ No newline at end of file +. On the **Deployments** or **StatefulSets** tab, click the name of a workload to enter the workload details page. \ No newline at end of file diff --git a/content/en/docs/_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-setClusterDiff.adoc b/content/en/docs/_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-setClusterDiff.adoc index 01da4247e..d09348ec6 100644 --- a/content/en/docs/_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-setClusterDiff.adoc +++ b/content/en/docs/_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-setClusterDiff.adoc @@ -1,10 +1,10 @@ // :ks_include_id: e767267c152f4de48a2d1585837e30e0 -|容器设置 -|在不同的集群中使用不同的容器设置。在多集群环境下,您可以为指定集群中的工作负载设置不同的容器镜像、容器类型和资源配置等。 +|Container Settings +|Use different container settings in different clusters. In a multi-cluster environment, you can set different container images, container types, and resource configurations for the workload in specified clusters. -|端口设置 -|为不同集群中的容器设置不同的端口。在多集群环境下,您可以为指定集群中的工作负载设置不同的访问协议、容器端口和工作负载端口等。 +|Port Settings +|Set different ports for containers in different clusters. In a multi-cluster environment, you can set different access protocols, container ports, and workload ports for the workload in specified clusters. -|环境变量 -|为不同集群中的容器设置不同的环境变量。在多集群环境下,您可以为指定集群中的工作负载设置不同的环境变量。 \ No newline at end of file +|Environment Variables +|Set different environment variables for containers in different clusters. In a multi-cluster environment, you can set different environment variables for the workload in specified clusters. \ No newline at end of file diff --git a/content/en/docs/_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-viewWorkloadDetails_v4.adoc b/content/en/docs/_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-viewWorkloadDetails_v4.adoc index c7506e9ae..1f61e407f 100644 --- a/content/en/docs/_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-viewWorkloadDetails_v4.adoc +++ b/content/en/docs/_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-viewWorkloadDetails_v4.adoc @@ -1,64 +1,64 @@ // :ks_include_id: 53806508deb8493a8bded94825780b98 -. 在工作负载详情页面左侧的**属性**区域查看工作负载的资源属性。 +. On the workload details page, view the workload's resource attributes in the **Attributes** area on the left. + -- [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|项目 -|工作负载所属的项目。 +|Project +|The project to which the workload belongs. -|应用 -|工作负载所属的应用名称。您可以创建一个包含多个服务的应用,每个服务都对应一个工作负载。 +|App +|The name of the app to which the workload belongs. You can create an app that includes multiple services, each corresponding to a workload. -|创建时间 -|工作负载的创建时间。 +|Creation Time +|The creation time of the workload. -|更新时间 -|工作负载的更新时间。 +|Update Time +|The update time of the workload. -|创建者 -|创建工作负载的用户。 +|Creator +|The user who created the workload. |=== -- -. 在工作负载详情页面右侧的**资源状态**页签查看工作负载的容器组副本数量、容器端口和容器组。 +. On the workload details page, view the number of pod replicas, container ports, and pods for the workload in the **Resource Status** tab on the right. + -- include::para-replicasPortsPods.adoc[] -- -. 在工作负载详情页面右侧点击**元数据**页签查看工作负载的标签和注解。 +. On the workload details page, click the **Metadata** tab on the right to view the workload's labels and annotations. -// . 在工作负载详情页面右侧点击**监控**页签查看工作负载的实时资源使用情况。 +// . On the workload details page, click the **Monitoring** tab on the right to view the workload's real-time resource usage. // + // -- // [%header,cols="1a,4a"] // |=== -// |参数 |描述 +// |Parameter |Description -// |CPU 用量 -// |工作负载管理的所有容器组的实时 CPU 用量。 +// |CPU Usage +// |The real-time CPU usage of all pods managed by the workload. -// |内存用量 -// |工作负载管理的所有容器组的实时内存用量。 +// |Memory Usage +// |The real-time memory usage of all pods managed by the workload. -// |出站流量 -// |工作负载管理的所有容器组的出站流量。 +// |Outbound Traffic +// |The outbound traffic of all pods managed by the workload. -// |入站流量 -// |工作负载管理的所有容器组的入站流量。 +// |Inbound Traffic +// |The inbound traffic of all pods managed by the workload. // |=== -// * 在**监控**右侧的第一个下拉框可以选择查看指定集群的资源监控信息。 +// * In the first dropdown on the right of **Monitoring**, you can select to view resource monitoring information for a specified cluster. // include::../../../../_ks_components-en/oper-selectTimeRange.adoc[] // include::../../../../_ks_components-en/oper-Autorefresh.adoc[] // include::../../../../_ks_components-en/oper-refreshData.adoc[] // -- -. 在工作负载详情页面右侧点击**事件**页签查看工作负载相关的事件。 +. On the workload details page, click the **Events** tab on the right to view events related to the workload. + -- include::../../clusterManagement/clusterManagement-para-eventsTab.adoc[] diff --git a/content/en/docs/_custom-en/projectManagement/apps/apps-basic-para.adoc b/content/en/docs/_custom-en/projectManagement/apps/apps-basic-para.adoc index 64174b2f0..7f182160d 100644 --- a/content/en/docs/_custom-en/projectManagement/apps/apps-basic-para.adoc +++ b/content/en/docs/_custom-en/projectManagement/apps/apps-basic-para.adoc @@ -2,17 +2,17 @@ [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|名称 -|应用的名称。名称只能包含小写字母、数字和连字符(-),必须以小写字母或数字开头和结尾,最长 63 个字符。 +|Name +|The name of the app. The name can only contain lowercase letters, numbers, and hyphens (-), must start and end with a lowercase letter or number, and can be up to 63 characters long. -|版本 -|用户自定义的应用版本。版本只能包含小写字母和数字,最长 16 个字符。 +|Version +|The user-defined version of the app. The version can only contain lowercase letters and numbers and can be up to 16 characters long. -|应用治理 -|是否为应用启用应用治理功能。开启应用治理后可以对应用使用流量监控、灰度发布和链路追踪功能。 +|Application Governance +|Whether to enable application governance for the app. After enabling app governance, you can use traffic monitoring, grayscale release, and tracing features for the app. -|描述 -|应用的描述信息。描述可包含任意字符,最长 256 个字符。 +|Description +|The description of the app. The description can contain any characters and can be up to 256 characters long. |=== \ No newline at end of file diff --git a/content/en/docs/_custom-en/projectManagement/apps/apps-compose-description.adoc b/content/en/docs/_custom-en/projectManagement/apps/apps-compose-description.adoc index 1049ac52c..6793b7ea9 100644 --- a/content/en/docs/_custom-en/projectManagement/apps/apps-compose-description.adoc +++ b/content/en/docs/_custom-en/projectManagement/apps/apps-compose-description.adoc @@ -1,3 +1,2 @@ // :ks_include_id: 282a1d4ff17c46e19164103e677b6b0d - -您可以自定义应用的服务、工作负载和路由创建自制应用。相比基于模板的应用,自制应用支持应用治理,您可以为自制应用启用应用治理从而使用流量监控、灰度发布和链路追踪功能。 \ No newline at end of file +You can customize the services, workloads, and routes of an app to create a composed app. Compared to template-based apps, composed apps support app governance. You can enable app governance for a composed app to use traffic monitoring, grayscale release, and link tracing features. \ No newline at end of file diff --git a/content/en/docs/_custom-en/projectManagement/apps/apps-oper-viewResourceStatus.adoc b/content/en/docs/_custom-en/projectManagement/apps/apps-oper-viewResourceStatus.adoc index 017044296..ac26b3c1b 100644 --- a/content/en/docs/_custom-en/projectManagement/apps/apps-oper-viewResourceStatus.adoc +++ b/content/en/docs/_custom-en/projectManagement/apps/apps-oper-viewResourceStatus.adoc @@ -1,69 +1,66 @@ // :ks_include_id: c4590bcc1e7e440b8eaf162491107dc0 -. 在应用详情页面左侧的**资源状态**页签查看组成应用的应用路由、服务和工作负载。 +. On the app details page, view the Ingresses, services, and workloads that make up the app in the **Resource Status** tab. -* **应用路由**区域提供以下信息: +* The **Ingresses** area provides the following information: + -- [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|名称 -|应用路由的名称。 +|Name +|The name of the Ingress. -|域名 -|应用路由的域名。 +|Domain +|The domain of the Ingress. |URL -|应用路由所对应服务的访问地址。 +|The access address of the service corresponding to the Ingress. |=== -在应用路由右侧点击**访问服务**可访问应用路由的后端服务。 +Click **Access Service** on the right side of the Ingress to access the backend service of the Ingress. -- -* **服务**区域提供以下信息: +* The **Services** area provides the following information: + -- [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|名称 -|服务的名称。 +|Name +|The name of the service. -|内部访问模式 +|Internal Access Mode | include::../../clusterManagement/services/services-para-internalAccess.adoc[] include::../../clusterManagement/services/services-para-virtualip-headless.adoc[] -// |应用治理 -// |应用是否已启用应用治理。应用治理启用后,您可以使用{ks_product-en}提供的流量监控、灰度发布和链路追踪功能。 - -|虚拟 IP 地址 -|服务供集群内部访问的虚拟 IP 地址。仅在服务的内部访问类型为 **VirtualIP** 时显示。 +|Virtual IP Address +|The virtual IP address for internal access within the cluster. Only displayed when the service's internal access type is **VirtualIP**. |=== -- -* **工作负载**区域提供以下信息: +* The **Workloads** area provides the following information: + -- [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|名称 -|工作负载的名称。 +|Name +|The name of the workload. -|类型 -|工作负载的类型。 +|Type +|The type of the workload. -|状态 -|工作负载当前的状态。 +|Status +|The current status of the workload. include::../../clusterManagement/workloads/workloads-para-workloadStatus.adoc[] -|修改记录 -|工作负载的当前修改记录。 +|Revision Record +|The current revision record of the workload. |=== -- \ No newline at end of file diff --git a/content/en/docs/_custom-en/projectManagement/apps/apps-para-details1.adoc b/content/en/docs/_custom-en/projectManagement/apps/apps-para-details1.adoc index 1258b153d..c038ef50f 100644 --- a/content/en/docs/_custom-en/projectManagement/apps/apps-para-details1.adoc +++ b/content/en/docs/_custom-en/projectManagement/apps/apps-para-details1.adoc @@ -1,8 +1,8 @@ // :ks_include_id: 6d568952e6604999a005dfff5d21d3d3 -|集群 -|应用所属的集群。 +|Cluster +|The cluster to which the app belongs. -|项目 -|应用所属的项目。 +|Project +|The project to which the app belongs. include::apps-para-status.adoc[] diff --git a/content/en/docs/_custom-en/projectManagement/apps/apps-para-status.adoc b/content/en/docs/_custom-en/projectManagement/apps/apps-para-status.adoc index 1b6a722c3..57791ca02 100644 --- a/content/en/docs/_custom-en/projectManagement/apps/apps-para-status.adoc +++ b/content/en/docs/_custom-en/projectManagement/apps/apps-para-status.adoc @@ -1,13 +1,13 @@ // :ks_include_id: 9db80030fef4430e98fae7a372d67f6d -|状态 -|应用当前的状态。 +|Status +|The current status of the application. -* **创建中**:系统正在创建应用。 +* **Creating**: The system is creating the application. -* **运行中**:应用运行正常。 +* **Running**: The application is running normally. -* **升级中**:系统正在升级应用版本。 +* **Upgrading**: The system is upgrading the application version. -* **删除中**:系统正在删除应用。 +* **Deleting**: The system is deleting the application. -* **失败**:应用创建失败。 +* **Failed**: The application creation failed. \ No newline at end of file diff --git a/content/en/docs/_custom-en/projectManagement/apps/apps-types.adoc b/content/en/docs/_custom-en/projectManagement/apps/apps-types.adoc index 97946a249..af28ca727 100644 --- a/content/en/docs/_custom-en/projectManagement/apps/apps-types.adoc +++ b/content/en/docs/_custom-en/projectManagement/apps/apps-types.adoc @@ -1,7 +1,6 @@ // :ks_include_id: faff93159cca48358390bdd176c1577d +In KubeSphere, an application refers to a business program composed of one or more workloads, services, Ingresses, and other resources. Based on the creation method, apps in KubeSphere are divided into the following two types: -在{ks_product-en}平台,应用特指由一个或多个工作负载、服务、应用路由等资源组成的业务程序。根据应用的创建方式,{ks_product-en}平台上的应用分为以下两类: +* Template-based apps: Apps created using existing app templates. The app templates used to create apps can be app templates uploaded to the workspace, app templates published to the App Store, or app templates from third-party app repositories. -* 基于模板的应用:通过已有的应用模板创建的应用。创建应用所使用的应用模板可以为上传到企业空间的应用模板、已发布到应用商店的应用模板或第三方应用仓库中的应用模板。 - -* 自制应用:由用户手动编排工作负载、服务、应用路由等资源创建的应用。在创建自制应用时,您可以启用应用治理以使用{ks_product-en}提供的流量监控、灰度发布和链接追踪功能。 \ No newline at end of file +* Composed apps: Apps created by manually orchestrating workloads, services, Ingresses, and other resources. When creating a composed app, you can enable application governance to use the traffic monitoring, grayscale release, and tracing features provided by KubeSphere. \ No newline at end of file diff --git a/content/en/docs/_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-oper-openDetailsPage.adoc b/content/en/docs/_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-oper-openDetailsPage.adoc index f3f40097d..3079e6d65 100644 --- a/content/en/docs/_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-oper-openDetailsPage.adoc +++ b/content/en/docs/_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-oper-openDetailsPage.adoc @@ -1,2 +1,2 @@ // :ks_include_id: c9236cd08c5e43f9a20e107705d04a48 -. 在**灰度发布**页面,点击**发布任务**,然后点击一个灰度发布任务的名称打开其详情页面。 +. On the **Grayscale Release** page, click **Release Tasks**, then click the name of a grayscale release task to open its details page. \ No newline at end of file diff --git a/content/en/docs/_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-para-strategySettings.adoc b/content/en/docs/_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-para-strategySettings.adoc index a55a348c0..442cd99b0 100644 --- a/content/en/docs/_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-para-strategySettings.adoc +++ b/content/en/docs/_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-para-strategySettings.adoc @@ -1,24 +1,24 @@ // :ks_include_id: 24a43a70d2cc491b86afd4bda8e41b78 -* 对于**蓝绿部署**,在新版本或旧版本右侧点击**接管**可将业务流量全部转发给该版本。 +* For **Blue-Green Deployment**, click **Take Over** on the right side of the new or old version to forward all business traffic to that version. -* 对于**金丝雀发布**任务,您可以选择指定新旧版本的流量分配比例,或根据请求参数将请求转发给新版本或旧版本。 +* For **Canary Release** tasks, you can specify the traffic distribution ratio between the new and old versions, or forward requests to the new or old version based on request parameters. + -- [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|指定流量分配 -|拖动滑块可设置新旧版本接收业务流量的百分比。 +|Specify Traffic Distribution +|Drag the slider to set the percentage of business traffic received by the new and old versions. -|指定请求参数 -|将参数满足特定条件的请求转发给新版本,其他请求转发给旧版本。 +|Specify Request Parameters +|Forward requests with parameters meeting specific conditions to the new version, and other requests to the old version. |=== -- // Note include::../../../../_ks_components-en/admonitions/note.adoc[] -流量镜像任务将业务流量的副本发送给新版本进行测试,而不实际暴露新版本,所以不需要设置业务流量转发策略。 +Traffic Mirroring tasks send a copy of the business traffic to the new version for testing without actually exposing the new version, so there is no need to set a business traffic distribution strategy. -include::../../../../_ks_components-en/admonitions/admonEnd.adoc[] +include::../../../../_ks_components-en/admonitions/admonEnd.adoc[] \ No newline at end of file diff --git a/content/en/docs/_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-para-trafficSuccessLatency.adoc b/content/en/docs/_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-para-trafficSuccessLatency.adoc index c51f818f3..4914d3c05 100644 --- a/content/en/docs/_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-para-trafficSuccessLatency.adoc +++ b/content/en/docs/_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-para-trafficSuccessLatency.adoc @@ -1,9 +1,9 @@ // :ks_include_id: c831ace6bfe442abba34ed44c8c2ec4b -|流量 -|新旧版本的每秒请求数量。 +|Traffic +|The number of requests per second for the new and old versions. -|请求成功率 -|新旧版本的成功请求百分比。 +|Successful Request Rate +|The percentage of successful requests for the new and old versions. -|请求延迟 -|新旧版本的平均请求延迟。 +|Request Latency +|The average request latency for the new and old versions. \ No newline at end of file diff --git a/content/en/docs/_custom-en/workspaceManagement/appRepositories/appRepositories-para-createAppRepository.adoc b/content/en/docs/_custom-en/workspaceManagement/appRepositories/appRepositories-para-createAppRepository.adoc index e3d8b55d4..6d16a7bc5 100644 --- a/content/en/docs/_custom-en/workspaceManagement/appRepositories/appRepositories-para-createAppRepository.adoc +++ b/content/en/docs/_custom-en/workspaceManagement/appRepositories/appRepositories-para-createAppRepository.adoc @@ -1,17 +1,17 @@ // :ks_include_id: 9dce53f38c804429a1d874c4d0f635a3 [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|名称 -|应用仓库的名称。 +|Name +|The name of the app repository. |URL -|Helm Chart 仓库的 URL。点击**验证**可测试 Helm Chart 仓库是否可用。 +|The URL of the Helm Chart repository. Click **Validate** to test if the Helm Chart repository is available. -|同步周期 -|应用仓库与 Helm Chart 仓库的自动同步周期。取值范围为 3 分钟到 24 小时。默认值 **0** 表示不自动同步。 +|Sync Interval +|The automatic sync interval between the app repository and the Helm Chart repository. The value range is from 3 minutes to 24 hours. The default value **0** means no automatic sync. -|描述 -|应用仓库的描述信息。描述可包含任意字符,最长 256 个字符。 +|Description +|The description of the app repository. The description can contain any characters, with a maximum length of 256 characters. |=== \ No newline at end of file diff --git a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-openDetailsPage.adoc b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-openDetailsPage.adoc index a0d58ab32..c644acb07 100644 --- a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-openDetailsPage.adoc +++ b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-openDetailsPage.adoc @@ -1,2 +1,2 @@ // :ks_include_id: 6c2cd879adcb4a5fa3abaf7929167ef7 -. 在应用模板列表中点击一个应用模板的名称打开其详情页面。 +. Click the name of an application template in the list to open its details page. \ No newline at end of file diff --git a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-searchForAppTemplates.adoc b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-searchForAppTemplates.adoc index edc4da33d..f638cf300 100644 --- a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-searchForAppTemplates.adoc +++ b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-searchForAppTemplates.adoc @@ -1,2 +1,2 @@ // :ks_include_id: 2f8bbec5d37b4c239396337ce7576a71 -* 在列表上方点击搜索框并输入关键字,可搜索名称包含特定关键字的应用模板。 +* Click the search box at the top of the list to search for application templates by name. \ No newline at end of file diff --git a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewAppInstances.adoc b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewAppInstances.adoc index 003fc04d9..139c09a2d 100644 --- a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewAppInstances.adoc +++ b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewAppInstances.adoc @@ -1,25 +1,25 @@ // :ks_include_id: a04eb03cbce9496996bd54443b6e4d64 -. 在应用模板详情页面右侧点击**应用实例**页签,查看使用应用模板在{ks_product-en}平台安装的应用。 +. Click the **Application Instance** tab on the right side of the details page to view the applications installed using the application template on the {ks_product-en} platform. + -- [%header,cols="1a,4a"] |=== -|参数 |描述 +|Parameter |Description -|名称 -|应用的名称。 +|Name +|The name of the application. include::../../projectManagement/apps/apps-para-status.adoc[] include::appTemplates-para-version.adoc[] -|项目 -|应用所属的项目。 +|Project +|The project to which the application belongs. -|集群 -|应用所属的集群。 +|Cluster +|The cluster to which the application belongs. -|创建时间 -|应用的创建时间。 +|Creation Time +|The creation time of the application. |=== --- +-- \ No newline at end of file diff --git a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewAttributes.adoc b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewAttributes.adoc index ac2abe5ac..dd4abf1ac 100644 --- a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewAttributes.adoc +++ b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewAttributes.adoc @@ -1,2 +1,2 @@ // :ks_include_id: 97cb07634c9f4b08ab3ebea9f440d8e8 -. 在应用模板详情页面左侧的**属性**区域,查看应用模板的资源属性。 +. In the **Attributes** area on the left side of the details page, view the resource attributes of the application template. \ No newline at end of file diff --git a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewVersions.adoc b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewVersions.adoc index 9869506b0..c87361740 100644 --- a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewVersions.adoc +++ b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewVersions.adoc @@ -1,2 +1,2 @@ // :ks_include_id: d78cb35f91534425932451fc1aeb33e2 -. 在应用模板详情页面右侧的**版本**页签,查看应用模板中包含的应用版本。 +. In the **Versions** tab on the right side of the details page, view the application versions included in the application template. \ No newline at end of file diff --git a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-appTemplateName.adoc b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-appTemplateName.adoc index 207d95f27..2e5b42cb4 100644 --- a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-appTemplateName.adoc +++ b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-appTemplateName.adoc @@ -1,3 +1,3 @@ // :ks_include_id: de8b37eae7ea4bdba3f2534f9d1b19c2 -|名称 -|应用模板的名称、图标和描述信息。 +|Name +|The name, icon, and description of the application template. \ No newline at end of file diff --git a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-creationTime.adoc b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-creationTime.adoc index eb0a7789f..912ca0cad 100644 --- a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-creationTime.adoc +++ b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-creationTime.adoc @@ -1,3 +1,3 @@ // :ks_include_id: e53d38c7198848ea827f13da3541565e -|创建时间 -|应用模板的创建时间。 +|Creation Time +|The creation time of the application template. \ No newline at end of file diff --git a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-developer.adoc b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-developer.adoc index 3d20bc5cc..21d02dd0b 100644 --- a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-developer.adoc +++ b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-developer.adoc @@ -1,3 +1,3 @@ // :ks_include_id: 76c5e6ca0e0d40fb8a75e2ea04ba859a -|开发者 -|上传应用版本的用户。 +|Developer +|The user who uploaded the application version. diff --git a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-latestVersion_v4.adoc b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-latestVersion_v4.adoc index 0e17e7937..ae70ff636 100644 --- a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-latestVersion_v4.adoc +++ b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-latestVersion_v4.adoc @@ -1,3 +1,3 @@ // :ks_include_id: 3348c4c6bb6b473e887f8a6b5d1883c9 -|最新版本 -|应用模板中 Helm Chart 的最新版本。每个应用模板可包含应用的多个版本。 +|Latest Version +|The latest version of the Helm Chart in the application template. Each application template can contain multiple versions of the application. \ No newline at end of file diff --git a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-status_v4.adoc b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-status_v4.adoc index 241f53684..52660d301 100644 --- a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-status_v4.adoc +++ b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-status_v4.adoc @@ -1,9 +1,9 @@ // :ks_include_id: b1063d2135a7413f839d796f93c2afa0 -|状态 -|应用模板当前的状态。 +|Status +|The current status of the application template. -* **未上架**:应用模板已创建成功,但是未上架到{ks_product-en}平台的应用商店。 +* **Not Listed**: The application template has been successfully created but is not listed in the App Store. -* **已上架**:应用模板已创建成功,并且已上架到{ks_product-en}平台的应用商店。 +* **Listed**: The application template has been successfully created and is listed in in the App Store. -* **已下架**:应用模板上架到{ks_product-en}平台的应用商店后被应用商店管理员下架。 \ No newline at end of file +* **Suspended**: The application template was listed in the App Store but has been delisted by the App Store administrator. \ No newline at end of file diff --git a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-type.adoc b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-type.adoc index 80ed6a573..74faaba14 100644 --- a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-type.adoc +++ b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-type.adoc @@ -1,3 +1,3 @@ // :ks_include_id: 933bd63e86ea4c958e7578f625e38dca -|类型 -|应用模板的类型。 +|Type +|The type of the application template. \ No newline at end of file diff --git a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-version.adoc b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-version.adoc index 91a01157f..db5a5639a 100644 --- a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-version.adoc +++ b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-version.adoc @@ -1,3 +1,3 @@ // :ks_include_id: 942eb298f1394bef9c3269ba02cc1311 -|版本 -|Helm Chart 的版本。 +|Version +|The version of the Helm Chart. \ No newline at end of file diff --git a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-versionUpdateTime.adoc b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-versionUpdateTime.adoc index f26de34c0..642517385 100644 --- a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-versionUpdateTime.adoc +++ b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-versionUpdateTime.adoc @@ -1,3 +1,3 @@ // :ks_include_id: 3c207e89fc77423187d81dd47480e0b4 -|更新时间 -|应用版本的更新时间。 +|Update Time +|The update time of the application version. \ No newline at end of file diff --git a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-viewAppInformation.adoc b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-viewAppInformation.adoc index fdfc3111d..bfe180b1d 100644 --- a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-viewAppInformation.adoc +++ b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-viewAppInformation.adoc @@ -1,2 +1,2 @@ // :ks_include_id: 869781900cdb48f19e54811ea9a8abcc -. 在应用模板详情页面右侧点击**应用信息**页签,查看应用模板的介绍、截图和版本信息。 +. Click the **Application Information** tab on the right side of the details page to view the introduction, screenshots, and version information of the application template. \ No newline at end of file diff --git a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-workspace.adoc b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-workspace.adoc index d96ff2783..1d23b5140 100644 --- a/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-workspace.adoc +++ b/content/en/docs/_custom-en/workspaceManagement/appTemplates/appTemplates-para-workspace.adoc @@ -1,3 +1,3 @@ // :ks_include_id: d2cbf65cb5824a99bf21c210999ce5a7 -|企业空间 -|提交应用模板的企业空间。 +|Workspace +|The workspace that submitted the application template. \ No newline at end of file diff --git a/content/en/docs/_custom-en/workspaceManagement/devopsProjects/devopsProject-para-aliasAndDescription.adoc b/content/en/docs/_custom-en/workspaceManagement/devopsProjects/devopsProject-para-aliasAndDescription.adoc index a808db2bb..fdc730aab 100644 --- a/content/en/docs/_custom-en/workspaceManagement/devopsProjects/devopsProject-para-aliasAndDescription.adoc +++ b/content/en/docs/_custom-en/workspaceManagement/devopsProjects/devopsProject-para-aliasAndDescription.adoc @@ -1,6 +1,6 @@ // :ks_include_id: 41158ab30242438694d2437566046d38 -|别名 -|DevOps 项目的别名。别名只能包含中文、字母、数字和连字符(-),不得以连字符(-)开头或结尾,最长 63 个字符。 +|Alias +|The alias of the DevOps project. Aliases can only contain Chinese characters, letters, numbers, and hyphens (-), cannot start or end with a hyphen (-), and can be up to 63 characters long. -|描述 -|DevOps 项目的描述信息。描述可包含任意字符,最长 256 个字符。 \ No newline at end of file +|Description +|The description of the DevOps project. Descriptions can contain any characters and can be up to 256 characters long. \ No newline at end of file diff --git a/content/en/docs/v4.1/03-installation-and-upgrade/02-install-kubesphere/02-install-kubernetes-and-kubesphere.adoc b/content/en/docs/v4.1/03-installation-and-upgrade/02-install-kubesphere/02-install-kubernetes-and-kubesphere.adoc index 06b2e28ab..e178972aa 100644 --- a/content/en/docs/v4.1/03-installation-and-upgrade/02-install-kubesphere/02-install-kubernetes-and-kubesphere.adoc +++ b/content/en/docs/v4.1/03-installation-and-upgrade/02-install-kubesphere/02-install-kubernetes-and-kubesphere.adoc @@ -168,7 +168,7 @@ If the cluster nodes use other operating systems, replace **apt** with the corre == Install Kubernetes // ifeval::["{file_output_type}" == "pdf"] -// include::../../../_custom/installationAndUpgrade/installationAndUpgrade-oper-decompressInstallationPackage_new.adoc[] +// include::../../../_custom-en/installationAndUpgrade/installationAndUpgrade-oper-decompressInstallationPackage_new.adoc[] // endif::[] // ifeval::["{file_output_type}" == "html"] @@ -248,7 +248,6 @@ spec: # Harbor does not support arm64. This parameter does not need to be configured when deploying in an arm64 environment. type: harbor # If you use kk to deploy harbor or other registries that require authentication, you need to set the auths of the corresponding registries. If you use kk to deploy the default docker registry, you do not need to configure the auths parameter. - # Note: If you use kk to deploy harbor, please set the auths parameter after creating the harbor project. auths: "dockerhub.kubekey.local": username: admin # harbor default username diff --git a/content/en/docs/v4.1/03-installation-and-upgrade/05-add-and-delete-cluster-nodes/01-add-cluster-nodes.adoc b/content/en/docs/v4.1/03-installation-and-upgrade/05-add-and-delete-cluster-nodes/01-add-cluster-nodes.adoc index f03164071..31943b1da 100644 --- a/content/en/docs/v4.1/03-installation-and-upgrade/05-add-and-delete-cluster-nodes/01-add-cluster-nodes.adoc +++ b/content/en/docs/v4.1/03-installation-and-upgrade/05-add-and-delete-cluster-nodes/01-add-cluster-nodes.adoc @@ -114,7 +114,7 @@ include::../../../../_ks_components-en/admonitions/admonEnd.adoc[] ----  ./kk add nodes -f config-sample.yaml ---- -// include::../../../_custom/installationAndUpgrade/installationAndUpgrade-code-addNodes.adoc[] +// include::../../../_custom-en/installationAndUpgrade/installationAndUpgrade-code-addNodes.adoc[] -- . Execute the following command to view the nodes of the current cluster: diff --git a/content/en/docs/v4.1/05-users-and-roles/01-users/10-delete-users.adoc b/content/en/docs/v4.1/05-users-and-roles/01-users/10-delete-users.adoc index 9a8befba3..bcaec2666 100644 --- a/content/en/docs/v4.1/05-users-and-roles/01-users/10-delete-users.adoc +++ b/content/en/docs/v4.1/05-users-and-roles/01-users/10-delete-users.adoc @@ -32,9 +32,6 @@ You should have the pass:a,q[{ks_permission}] permission on the {ks_product-en} . Check the boxes next to the users you want to delete, then click **Delete** above the list. . In the **Delete Multiple Users** dialog, enter the names of the users, then click **OK**. + -include::../../../../_ks_components-en/admonitions/note.adoc[] - -Please use a comma (,) or space to separate multiple names. - -include::../../../../_ks_components-en/admonitions/admonEnd.adoc[] - +-- +include::../../../_custom-en/note-separateNamesByComma.adoc[] +-- diff --git a/content/en/docs/v4.1/07-cluster-management/09-cluster-settings/03-cluster-members/02-view-a-cluster-member-list.adoc b/content/en/docs/v4.1/07-cluster-management/09-cluster-settings/03-cluster-members/02-view-a-cluster-member-list.adoc index 21ec6ca56..358e6d58d 100644 --- a/content/en/docs/v4.1/07-cluster-management/09-cluster-settings/03-cluster-members/02-view-a-cluster-member-list.adoc +++ b/content/en/docs/v4.1/07-cluster-management/09-cluster-settings/03-cluster-members/02-view-a-cluster-member-list.adoc @@ -54,7 +54,7 @@ include::../../../../_custom-en/clusterManagement/clusterMembers/clusterMembers- |=== -- -* Click the search box at the top of the list and search for cluster members by name. +* Click the search box at the top of the list to search for cluster members by name. include::../../../../../_ks_components-en/oper-refreshListData.adoc[] diff --git a/content/en/docs/v4.1/08-workspace-management/02-workspaces/04-delete-workspaces.adoc b/content/en/docs/v4.1/08-workspace-management/02-workspaces/04-delete-workspaces.adoc index 01c6a47eb..14325f42f 100644 --- a/content/en/docs/v4.1/08-workspace-management/02-workspaces/04-delete-workspaces.adoc +++ b/content/en/docs/v4.1/08-workspace-management/02-workspaces/04-delete-workspaces.adoc @@ -46,10 +46,7 @@ include::../../../_custom-en/platformManagement/platformManagement-oper-logIn.ad . In the **Delete Multiple Workspaces** dialog, enter the name of the workspaces, then click **OK**. + -[.admon.note,cols="a"] -|=== -|Note +-- +include::../../../_custom-en/note-separateNamesByComma.adoc[] +-- -|Please separate multiple names using a comma (,) and a space. - -|=== diff --git a/content/en/docs/v4.1/08-workspace-management/05-app-management/02-app-repositories/01-add-an-app-repository.adoc b/content/en/docs/v4.1/08-workspace-management/05-app-management/02-app-repositories/01-add-an-app-repository.adoc index 33c847b07..c221fb797 100644 --- a/content/en/docs/v4.1/08-workspace-management/05-app-management/02-app-repositories/01-add-an-app-repository.adoc +++ b/content/en/docs/v4.1/08-workspace-management/05-app-management/02-app-repositories/01-add-an-app-repository.adoc @@ -17,7 +17,7 @@ This section introduces how to add an application repository in the workspace. * {empty} include::../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] -* The Helm Chart repository has been created in advance. For information on how to create a Helm Chart repository, please refer to the link:https://helm.sh/zh/docs/topics/chart_repository/[Helm Documentation]. +* The Helm Chart repository has been created in advance. For information on how to create a Helm Chart repository, please refer to the link:https://helm.sh/docs/topics/chart_repository/[Helm Documentation]. == Steps diff --git a/content/en/docs/v4.1/08-workspace-management/05-app-management/02-app-repositories/_index.adoc b/content/en/docs/v4.1/08-workspace-management/05-app-management/02-app-repositories/_index.adoc index f1284112f..21c0eda05 100644 --- a/content/en/docs/v4.1/08-workspace-management/05-app-management/02-app-repositories/_index.adoc +++ b/content/en/docs/v4.1/08-workspace-management/05-app-management/02-app-repositories/_index.adoc @@ -11,4 +11,4 @@ This section introduces how to manage application repositories in the workspace. In KubeSphere, applications specifically refer to business programs composed of one or more workloads, services, ingresses, and other resources. The application repository in KubeSphere is based on Helm, defining the orchestration of applications through Helm Charts. -You can add a Helm Chart repository as an application repository to the workspace, allowing you to install applications from the application repository into projects within the workspace. For information on how to create a Helm Chart repository, please refer to the link:https://helm.sh/zh/docs/topics/chart_repository/[Helm Documentation]. \ No newline at end of file +You can add a Helm Chart repository as an application repository to the workspace, allowing you to install applications from the application repository into projects within the workspace. For information on how to create a Helm Chart repository, please refer to the link:https://helm.sh/docs/topics/chart_repository/[Helm Documentation]. \ No newline at end of file diff --git a/content/en/docs/v4.1/09-project-management/02-overview/01-view-project-overall-information.adoc b/content/en/docs/v4.1/09-project-management/02-overview/01-view-project-overall-information.adoc index 2a279a66e..f9d52ab70 100644 --- a/content/en/docs/v4.1/09-project-management/02-overview/01-view-project-overall-information.adoc +++ b/content/en/docs/v4.1/09-project-management/02-overview/01-view-project-overall-information.adoc @@ -15,13 +15,8 @@ This section introduces how to get an overview of the project. == Prerequisites - -:relfileprefix: ../../../ - include::../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] -:relfileprefix: ./ - == Steps diff --git a/content/en/docs/v4.1/09-project-management/03-application-workloads/02-services/01-create-a-service/01-create-a-stateful-or-stateless-service.adoc b/content/en/docs/v4.1/09-project-management/03-application-workloads/02-services/01-create-a-service/01-create-a-stateful-or-stateless-service.adoc index 7be649609..785517ceb 100644 --- a/content/en/docs/v4.1/09-project-management/03-application-workloads/02-services/01-create-a-service/01-create-a-stateful-or-stateless-service.adoc +++ b/content/en/docs/v4.1/09-project-management/03-application-workloads/02-services/01-create-a-service/01-create-a-stateful-or-stateless-service.adoc @@ -1,6 +1,6 @@ --- -title: "Create Stateful or Stateless Services" -linkTitle: "Create Stateful or Stateless Services" +title: "Create a Stateful or Stateless Service" +linkTitle: "Create a Stateful or Stateless Service" keywords: "Kubernetes, KubeSphere, Project Management, Workloads, Services, Create Service, Create Stateful or Stateless Services" description: "Introduces how to create stateful or stateless services." weight: 01 diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/01-overview.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/01-overview.adoc new file mode 100644 index 000000000..effa0c089 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/01-overview.adoc @@ -0,0 +1,42 @@ +--- +title: "Overview" +keywords: "Kubernetes, {ks_product-en}, DevOps, Overview" +description: "Introduces the basic principles of DevOps." +weight: 01 +--- + +DevOps provides a series of Continuous Integration (CI) and Continuous Delivery (CD) tools that automate processes between IT and software development teams. In CI/CD workflows, each integration is verified through automated builds, including coding, releasing, and testing, helping developers catch integration errors early and enabling teams to deliver internal software to production environments quickly, securely, and reliably. + +However, the traditional Jenkins Controller-Agent architecture (where multiple Agents work for one Controller) has the following shortcomings: + +- If the Controller crashes, the entire CI/CD pipeline collapses. +- Resource allocation is uneven, with some Agents' pipeline jobs queuing while others remain idle. +- Different Agents may have different configurations and require the use of different coding languages, bringing inconvenience for management and maintenance. + +KubeSphere DevOps projects support source code management tools such as GitHub, Git, and Bitbucket, enabling the building of CI/CD pipelines through a graphical editing panel (Jenkinsfile out of SCM) or creating Jenkinsfile-based pipelines from code repositories (Jenkinsfile in SCM). + +== Features + +DevOps offers the following features: + +- Independent DevOps projects for CI/CD pipelines with access control. +- Out-of-the-box DevOps functionality without complex Jenkins configurations. +// - Source-to-image (S2I) and Binary-to-image (B2I) for rapid delivery of images. +- link:../03-how-to-use/02-pipelines/02-create-a-pipeline-using-jenkinsfile/[Jenkinsfile-based Pipelines] for a consistent user experience supporting multiple code repositories. +- link:../03-how-to-use/02-pipelines/01-create-a-pipeline-using-graphical-editing-panel/[Graphical Editing Panel] to create pipelines with a low learning curve. +- Robust tool integration mechanisms, such as link:../04-how-to-integrate/01-sonarqube/[SonarQube], for code quality checks. +- Continuous delivery capabilities based on ArgoCD for automated deployment to multi-cluster environments. + +== DevOps Pipeline Workflows + +The DevOps CI/CD pipeline runs on underlying Kubernetes Jenkins Agents. These Jenkins Agents can dynamically scale up or down based on job statuses. The Jenkins Controller and Agents run as Pods on KubeSphere nodes. The Controller runs on one of the nodes, with its configuration data stored in a persistent volume claim. Agents run on various nodes but may not always be active, as they are dynamically created and automatically removed based on demand. + +When the Jenkins Controller receives a build request, it dynamically creates a Jenkins Agent running in a Pod based on labels and registers it with the Controller. After the Agent completes its job, it is released, and the related Pods are deleted. + +== Dynamic Provisioning of Jenkins Agents + +Dynamic provisioning of Jenkins Agents has the following advantages: + +- **Reasonable resource allocation**: Agents are dynamically allocated to idle nodes to prevent job queues due to high resource utilization on a single node. +- **High scalability**: Supports adding nodes to the cluster when jobs queue for extended periods due to insufficient resources. +- **High availability**: In case of a Jenkins Controller failure, DevOps automatically creates a new Jenkins Controller container, mounts the persistent volume to the newly created container to ensure data integrity, achieving cluster high availability. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/02-devops-projects/01-create-a-devops-project.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/02-devops-projects/01-create-a-devops-project.adoc new file mode 100644 index 000000000..1d660dcd9 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/02-devops-projects/01-create-a-devops-project.adoc @@ -0,0 +1,50 @@ +--- +title: "Create DevOps Projects" +keywords: "Kubernetes, {ks_product-en}, Workspace, DevOps Projects, Create DevOps Projects" +description: "Learn how to create DevOps projects." +weight: 01 +--- + +:ks_permission: **DevOps Project Creation** +:ks_navigation: **DevOps Projects** + + +This section explains how to create DevOps projects. + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + +* **DevOps** must have been installed and enabled. + + +== Steps + +include::../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + +. On the **DevOps Projects** page, click **Create**. + +. In the **Create DevOps Project** dialog, configure the parameters for the DevOps project and then click **OK**. ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Name +|The name of the DevOps project. Names can only contain lowercase letters, numbers, and hyphens (-), must start with a lowercase letter, end with a lowercase letter or number, and can be up to 63 characters long. + +include::../../../../_custom-en/workspaceManagement/devopsProjects/devopsProject-para-aliasAndDescription.adoc[] + +|Cluster Settings +|The cluster can be used by the DevOps project. Resources in the DevOps project run on the cluster selected here. +|=== + +After creating the DevOps project, you can invite users to join the project and deploy business within the DevOps project. +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/02-devops-projects/02-view-a-devops-project-list.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/02-devops-projects/02-view-a-devops-project-list.adoc new file mode 100644 index 000000000..b2ca38625 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/02-devops-projects/02-view-a-devops-project-list.adoc @@ -0,0 +1,67 @@ +--- +title: "View DevOps Project List" +keywords: "Kubernetes, {ks_product-en}, Workspace, DevOps Projects, View DevOps Project List" +description: "Learn how to view the DevOps project list." +weight: 02 +--- + + +:ks_permission: **DevOps Project Viewing** +:ks_navigation: **DevOps Projects** + + +This section explains how to view the DevOps project list. + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + +* **DevOps** must have been installed and enabled. + + +== Steps + +include::../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] ++ +==== +* The DevOps project list provides the following information: ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Name +|The name of the DevOps project. + +|Status +|The current status of the DevOps project. + +* **Successful**: The DevOps project has been successfully created and is available. + +* **Pending**: The DevOps project is being created. + +* **Deleting**: The DevOps project is in the process of being deleted. + +|Creator +|The user who created the DevOps project. + +|Creation Time +|The creation time of the DevOps project. +|=== +-- + +* Click the search box at the top of the list to search for DevOps projects by name. + +include::../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../_ks_components-en/oper-customizeColumns.adoc[] + +* Click the name of a DevOps project in the list to open the DevOps project management page. You can view and manage the resources in the DevOps project on the management page. +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/02-devops-projects/03-edit-devops-project-information.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/02-devops-projects/03-edit-devops-project-information.adoc new file mode 100644 index 000000000..d46c67e3a --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/02-devops-projects/03-edit-devops-project-information.adoc @@ -0,0 +1,47 @@ +--- +title: "Edit DevOps Project Information" +keywords: "Kubernetes, {ks_product-en}, Workspace Management, DevOps Projects, Edit DevOps Project Information" +description: "Learn how to edit DevOps project information." +weight: 03 +--- + +:ks_permission: **DevOps Project Management** +:ks_navigation: **DevOps Projects** + + +This section explains how to edit project information. + +You can edit the alias and description of a DevOps project. KubeSphere does not support editing the name of an already created DevOps project. + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + + +* **DevOps** must be installed and enabled. + + +== Steps + +include::../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the right side of the DevOps project you want to edit, click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18], and then select **Edit Information** from the dropdown list. + +. In the **Edit Information** dialog, set the alias and description of the DevOps project, then click **OK**. ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +include::../../../../_custom-en/workspaceManagement/devopsProjects/devopsProject-para-aliasAndDescription.adoc[] +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/02-devops-projects/04-delete-devops-projects.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/02-devops-projects/04-delete-devops-projects.adoc new file mode 100644 index 000000000..7e14b2c97 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/02-devops-projects/04-delete-devops-projects.adoc @@ -0,0 +1,60 @@ +--- +title: "Delete DevOps Projects" +keywords: "Kubernetes, {ks_product-en}, Workspace Management, DevOps Projects, Delete DevOps Project" +description: "Learn how to delete DevOps projects." +weight: 04 +--- + +:ks_permission: **DevOps Project Management** +:ks_navigation: **DevOps Projects** + +This section explains how to delete DevOps projects. + +// Note +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +Once a DevOps project is deleted, it cannot be recovered, and all resources within the DevOps project will also be deleted. Please proceed with caution. + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + +* **DevOps** must be installed and enabled. + + +== Delete A Single Project + +include::../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the right side of the DevOps project you want to delete, click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18], and then select **Delete** from the dropdown list. + +. In the **Delete DevOps Project** dialog, enter the name of the DevOps project, then click **OK**. + + +== Delete Multiple Projects + +include::../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. Select the checkbox on the left side of the DevOps projects you want to delete, then click **Delete** above the DevOps project list. + +. In the **Delete Multiple DevOps Projects** dialog, enter the names of the DevOps projects, then click **OK**. ++ +-- +include::../../../../_custom-en/note-separateNamesByComma.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/02-devops-projects/_index.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/02-devops-projects/_index.adoc new file mode 100644 index 000000000..64169436d --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/02-devops-projects/_index.adoc @@ -0,0 +1,11 @@ +--- +title: "Manage DevOps Projects" +keywords: "Kubernetes, {ks_product-en}, Workspace, DevOps Projects" +description: "Learn how to view and manage DevOps projects." +weight: 02 +layout: "second" +--- + +This section covers managing DevOps projects. + +DevOps projects provide users with Continuous Integration and Continuous Deployment (CI/CD) capabilities. You can integrate KubeSphere with third-party code repositories in a DevOps project and then automatically update source code changes to the target environment through pipelines or continuous deployment. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/01-devops-project-management.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/01-devops-project-management.adoc new file mode 100644 index 000000000..b29d2b223 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/01-devops-project-management.adoc @@ -0,0 +1,61 @@ +--- +title: "Create and Manage DevOps Projects" +keywords: "Kubernetes, {ks_product-en}, DevOps projects, DevOps project management" +description: "Demonstrates how to create and manage DevOps projects." +weight: 01 +--- + +This section demonstrates how to create and manage DevOps projects. + +== Prerequisites + +* A workspace and a user (**project-admin**) have been created. Invite this user to the workspace and assign them the **workspace-self-provisioner** role. For more information, see link:../../../../02-quickstart/03-control-user-permissions[Control User Permissions]. + +* **DevOps** must have been installed and enabled. + +== Create a DevOps Project + +. Log in to the {ks_product-en} web console as the **project-admin** user and navigate to a workspace. + +. Click **DevOps Projects** and then click **Create**. + +. Enter the basic information for the DevOps project and click **OK**. ++ +-- +* **Name**: A concise name for the DevOps project, e.g., **demo-devops**. +* **Alias**: An alias for the DevOps project. +* **Description**: A brief introduction to the DevOps project. +* **Cluster Settings**: In the current version, a DevOps project cannot run across multiple clusters simultaneously. If there are multiple clusters, you must choose one cluster to run the DevOps project. +-- + +. Once the DevOps project is created, it will be displayed in the list on the DevOps Projects page. + +== View the DevOps Project + +Click the newly created DevOps project to navigate to its details page. + +In a DevOps project, users can create CI/CD pipelines, credentials, and manage project members and roles. The actions that users can perform in a DevOps project vary based on their permissions. + +* Pipelines ++ +-- +Pipelines are a collection of plugins that support continuously integrating, testing, and building code. Pipelines combine continuous integration (CI) and continuous delivery (CD) to provide streamlined workflows that automatically deliver your code to any target. +-- + +* Credentials ++ +-- +DevOps project users with appropriate permissions can configure credentials for pipelines to interact with external environments. After users add credentials in the DevOps project, the project can use these credentials to interact with third-party applications such as GitHub, GitLab, and Docker Hub. For more information, see link:../../03-how-to-use/05-devops-settings/01-credential-management[Credential Management]. +-- + +* Members and Roles ++ +-- +Similar to projects, DevOps projects also need to assign roles to users so that they have different permissions within the DevOps project. Project administrators (e.g., **project-admin**) are responsible for inviting users and granting them different roles. For more information, see link:../../03-how-to-use/05-devops-settings/02-role-and-member-management[Role and Member Management]. +-- + +== Edit or Delete a DevOps Project + +. Click **Basic Information** under **DevOps Project Settings** to view an overview of the current DevOps project, including the number of project roles and members, project name, and project creator. + +. Click the **Manage** button on the right to edit the basic information of this DevOps project or delete the DevOps project. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/01-create-a-pipeline-using-graphical-editing-panel.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/01-create-a-pipeline-using-graphical-editing-panel.adoc new file mode 100644 index 000000000..fc25908b4 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/01-create-a-pipeline-using-graphical-editing-panel.adoc @@ -0,0 +1,383 @@ +--- +title: "Create a Pipeline Using Graphic Editing Panels" +keywords: "Kubernetes, {ks_product-en}, DevOps projects, Using DevOps, Pipelines, Create Pipelines Using the Graphic Editing Panel" +description: "Introduces how to create pipelines using the graphic editing panel." +weight: 01 +--- + +The graphic editing panel in DevOps includes all the necessary operations for Jenkins link:https://www.jenkins.io/en/doc/book/pipeline/#阶段[Stages] and link:https://www.jenkins.io/en/doc/book/pipeline/#步骤[Steps]. DevOps supports defining these stages and steps directly on the interactive panel without the need to create any Jenkinsfile. + +This section demonstrates how to use the graphic editing panel to create pipelines in KubeSphere. Throughout the process, DevOps will automatically generate a Jenkinsfile based on the settings on the editing panel, eliminating the need to manually create a Jenkinsfile. Once the pipeline runs successfully, it will push the image to Docker Hub. + + +== Prerequisites + +* **DevOps** must have been installed and enabled. + +* You have an account on link:http://www.dockerhub.com[Docker Hub]. + +* A workspace, a DevOps project, and a user (e.g. **project-regular**) have been created, and the user has been invited to the DevOps project with the **operator** role. Refer to link:../../05-devops-settings/02-role-and-member-management[Role and Member Management]. + +* A dedicated CI node has been set up to run pipelines. Refer to link:../../05-devops-settings/04-set-ci-node[Set CI Nodes for Dependency Cache]. + +* An email server has been configured to receive pipeline notifications (optional). Refer to link:../09-jenkins-email[Set an Email Server for Pipelines]. + +* SonarQube has been configured to include code analysis in the pipeline (optional). Refer to link:../../../04-how-to-integrate/01-sonarqube/[Integrate SonarQube into Pipelines]. + +== Pipeline Overview + +This example pipeline consists of the following stages: + +[.admon.note,cols="a"] +|=== +| Note + +| +* **Stage 1: Checkout SCM**: Fetch the source code from the GitHub repository. + +* **Stage 2: Unit Test**: It will not proceed with the next stage until the test is passed. + +* **Stage 3: Code Analysis**: Configure SonarQube for static code analysis. + +* **Stage 4: Build and Push**: Build the image, tag it as **snapshot-$BUILD_NUMBER**, and push it to Docker Hub, where **$BUILD_NUMBER** is the run ID of the record in the pipeline run records. + +* **Stage 5: Artifacts**: Generate an artifact (JAR package) and save it. +|=== + +== Step 1: Create Credentials + +. Log in to the {ks_product-en} web console as the **project-regular** user. + +. Click **Workspace Management** and navigate to your DevOps project. Under **DevOps Project Settings**, create the following credentials in the **Credentials** page. For more information on creating credentials, refer to link:../../05-devops-settings/01-credential-management[Credential Management]. ++ +-- + +[.admon.note,cols="a"] +|=== +| Note + +| +If your account or password contains special characters such as **@** and **$**, errors may occur during pipeline runs due to unrecognized characters. In such cases, encode your account or password on a third-party website (e.g., link:https://www.urlencoder.org[urlencoder]) and then copy and paste the encoded result as your credential information. +|=== + +[%header,cols="1a,2a,2a"] +|=== +| Credential ID | Type | Where to use + +| dockerhub-id +| Username and Password +| Docker Hub +|=== +-- + +. Create another credential for SonarQube (**sonar-token**) for Stage 3 (Code Analysis). Choose the credential type **Access Token** and enter the SonarQube token in the **Token** field. Refer to link:../../../04-how-to-integrate/01-sonarqube/#_create_a_sonarqube_token_for_the_new_project[Create a SonarQube Token for the New Project]. Click **OK** to complete the process. + +. Once created, you will see the credentials on the credentials page. + + +== Step 2: Create a Pipeline + +. Log in to the {ks_product-en} web console as the **project-regular** user. + +. Click **Workspace Management** and navigate to your DevOps project. Click **Pipelines** and then click **Create**. + +. In the pop-up dialog, name it **graphical-pipeline** and click **Next**. + +. On the **Advanced Settings** page, click **Add** to add the following string parameters. These parameters will be used for Docker commands in the pipeline. Once added, click **Create**. ++ +-- +[%header,cols="1a,2a,2a,2a"] +|=== +| Parameter Type | Name | Value | Description + +| String +| REGISTRY +| `docker.io` +| Image registry address. This example uses **docker.io**. + +| String +| DOCKERHUB_NAMESPACE +| Your Docker ID +| Your Docker Hub account or organization name under the account. + +| String +| APP_NAME +| `devops-sample` +| Application name. This example uses **devops-sample**. +|=== + +// note +[.admon.note,cols="a"] +|=== +| Note + +| +For other fields, use default values or refer to link:../05-pipeline-settings[Pipeline Settings] for custom configurations. +|=== +-- + +== Step 3: Edit the Pipeline + +. Click the pipeline name to enter its details page. + +. To use the graphical editing panel, click **Edit Pipeline** under the **Pipeline Configurations** tab. In the pop-up dialog: + +* Click **Custom Pipeline** and follow the steps to configure each stage. + +* Alternatively, use the link:../03-use-pipeline-templates/[built-in pipeline templates] provided by DevOps. + +. Click **Next** and then click **Create**. + + +[.admon.note,cols="a"] +|=== +|Note + +| +The **Sync Status** on the pipeline details page shows the synchronization result between KubeSphere and Jenkins. You can also click **Edit Jenkinsfile** to manually create a Jenkinsfile for the pipeline. +|=== + +=== Stage 1: Fetch Source Code (Checkout SCM) + +The graphical editing panel consists of two areas: the **canvas** on the left and the **content** on the right. It automatically generates a Jenkinsfile based on your configurations for different stages and steps, providing a more user-friendly experience for developers. + + +[.admon.note,cols="a"] +|=== +|Note + +| +The pipeline includes link:https://www.jenkins.io/en/doc/book/pipeline/syntax/#declarative-pipeline[Declarative Pipeline] and link:https://www.jenkins.io/en/doc/book/pipeline/syntax/#scripted-pipeline[Scripted Pipeline]. Currently, creating Declarative Pipelines using this panel is supported. For more information on pipeline syntax, refer to the link:https://www.jenkins.io/en/doc/book/pipeline/syntax/[Jenkins Documentation]. + +|=== + +. On the graphical editing panel, select **node** from the **Type** dropdown list and **maven** from the **Label** dropdown list. ++ +-- + +[.admon.note,cols="a"] +|=== +|Note + +| +**Agent** is used to define the execution environment. The **Agent** directive specifies where and how Jenkins executes the pipeline. For more information, see link:../10-choose-jenkins-agent/[Choose Jenkins Agent]. + +|=== + +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/graphical_panel.png[,100%] +-- + +. Click the plus icon on the left to add a stage. Click the text box above **Add Step** and set the name for the stage on the right in the **Name** field (e.g., **Checkout SCM**). ++ +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/edit_panel.png[,100%] + +. Click **Add Step**. Select **Git Clone** from the list to fetch sample code from GitHub. Fill in the required fields in the pop-up dialog. Click **OK** to confirm the operation. ++ +-- +* **URL**: Enter the GitHub repository link:https://github.com/kubesphere/devops-maven-sample.git[]. Note that this is a sample address; please use your own repository address. + +* **Credential ID**: No need to input a credential ID in this example. + +* **Branch**: Enter **v4.1.0-sonarqube**. Use the default v4.1.0 branch if the code analysis stage is not required. + +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/enter_repo_url.png[,100%] +-- + +=== Stage 2: Unit Test + +. Click the plus icon to the right of Stage 1 to add a new stage for running unit tests in a container. Name it **Unit Test**. ++ +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/unit_test.png[,100%] + +. Click **Add Step**, select **Specify Container** from the list. Name it **maven** and click **OK**. ++ +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/container_maven.png[,100%] + +. Click the **maven** container step and **Add nesting steps**. Select **shell** from the list and enter the following command. Click **OK** to save it. ++ +-- +[,bash] +---- +mvn clean test +---- + + +[.admon.note,cols="a"] +|=== +|Note + +| +In the graphical editing panel, you can specify a series of link:https://www.jenkins.io/en/doc/book/pipeline/syntax/#steps[steps] to be executed within a given stage. +|=== +-- + +=== Stage 3: Code Analysis (Optional) + +This stage uses SonarQube for code testing. If code analysis is not needed, this stage can be skipped. + +. Click the plus icon to the right of **Unit Test** to add a stage for performing SonarQube code analysis in a container. Name it **Code Analysis**. ++ +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/code_analysis_stage.png[,100%] + +. In **Code Analysis**, click **Add Step** and select **Specify Container**. Name it **maven** and click **OK**. ++ +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/maven_container.png[,100%] + +. Click the **maven** container step and **Add nesting steps** to add a nesting step. Click **WithCredentials** and select SonarQube token (**sonar-token**) from the **Credential Name** list. Enter **SONAR_TOKEN** in the **Variable** and click **OK**. ++ +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonarqube_credentials.png[,100%] + +. Under the **WithCredentials** step, click **Add nesting steps** to add another nesting step. ++ +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/nested_step.png[,100%] + +. Click **WithSonarQubeEnv**, enter the name **sonar** in the pop-up dialog, and click **OK** to save it. ++ +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonar_env.png[,100%] + +. Under the **WithSonarQubeEnv** step, click **Add nesting steps** to add another nesting step. ++ +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/add_nested_step.png[,100%] + +. Click **shell** and enter the following command in the command line for SonarQube authentication and analysis. Click **OK** to complete the operation. ++ +-- +[,bash] +---- +mvn sonar:sonar -Dsonar.login=$SONAR_TOKEN +---- +-- + +. Click **Add nesting steps** under the **Specify Container** step (the third one), select **Timeout**. Enter **1** in time and choose **hours** as the unit, then click **OK** to complete the operation. ++ +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/add_nested_step_2.png[,100%] ++ +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/timeout_set.png[,100%] + +. Click **Add nesting steps** under the **Timeout** step, select **waitForQualityGate**. Check **Abort the pipeline if quality gate status is not green** in the pop-up dialog. Click **OK** to save it. ++ +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/waitforqualitygate_set.png[,100%] ++ +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonar_ready.png[,100%] + +=== Stage 4: Build and Push Image + +. Click the plus icon to the right of the previous stage to add a new stage for building and pushing the image to Docker Hub. Name it **Build and Push**. + +. In the **Build and Push** stage, click **Add Step**, select **Specify Container**, name it **maven**, and then click **OK**. + +. Click **Add nesting steps** under the **maven** container step, select **shell** from the list, enter the following command in the pop-up window, and click **OK** to complete the action. ++ +[source,bash] +---- +mvn -Dmaven.test.skip=true clean package +---- + +. Again, click **Add nesting steps**, select **shell**. Enter the following command to build the Docker image based on the link:https://github.com/kubesphere/devops-maven-sample/blob/sonarqube/Dockerfile-online[Dockerfile]. ++ +-- +[source,bash] +---- +docker build -f Dockerfile-online -t $REGISTRY/$DOCKERHUB_NAMESPACE/$APP_NAME:SNAPSHOT-$BUILD_NUMBER . +---- + +image::/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/shell_command.png[100%] +-- + +. Once more, click **Add nesting steps**, select **WithCredential**. Fill in the following fields in the dialog that appears, and then click **OK**. ++ +-- +* **Credential Name**: Choose the Docker Hub credential you created, for example, **dockerhub-id**. +* **Username Variable**: Enter **DOCKER_USERNAME**. +* **Password Variable**: Enter **DOCKER_PASSWORD**. + +image::/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/docker_credential.png[100%] + + +[.admon.note,cols="a"] +|=== +|Note + +| +For security reasons, account information is displayed as variables in the script. +|=== +-- + +. In the **WithCredential** step, click **Add nesting steps** (the first one). Select **shell** and enter the following command in the pop-up window to log in to Docker Hub. Click **OK** to confirm the operation. ++ +-- +[source,bash] +---- +echo "$DOCKER_PASSWORD" | docker login $REGISTRY -u "$DOCKER_USERNAME" --password-stdin +---- + +image::/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/login_docker_command.png[100%] +-- + +. In the **WithCredential** step, click **Add nesting steps**. Select **shell** and enter the following command to push the SNAPSHOT image to Docker Hub. Click **OK** to complete the operation. ++ +-- +[source,bash] +---- +docker push $REGISTRY/$DOCKERHUB_NAMESPACE/$APP_NAME:SNAPSHOT-$BUILD_NUMBER +---- + +image::/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/push_to_docker.png[100%] +-- + +=== Stage 5: Artifacts + +. Click the plus icon to the right of the **Build and Push** stage to add a new stage for storing artifacts, name it **Artifacts**. In this example, a JAR file is used. ++ +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/add_artifact_stage.png[,100%] + +. Select the **Artifacts** stage, click **Add Step**, choose **Archive artifacts**. In the pop-up dialog, enter **target/*.jar** to set the path for archiving artifacts in Jenkins. Click **OK** to complete the editing. ++ +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/artifact_info.png[,100%] + +== Step 4: Run the Pipeline + +. Pipelines created using the graphical editing panel need to be manually executed. Click **Run**, and a dialog will appear displaying the three string parameters defined in link:#_step_2_create_a_pipeline[Step 2: Create a Pipeline]. Click **OK** to run the pipeline. ++ +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/run_pipeline.png[,100%] + +. Click the **Run Records** tab to view the running status of the pipeline and click a record to see details. + +. If the pipeline reaches the **Push with Tag** stage, it will pause at this stage and require a user with approval permissions to click **Proceed**. + +. Log in to the {ks_product-en} web console as the **project-admin** user, navigate to **Workspace Management**, access your DevOps project, and click the **graphical-pipeline** pipeline. Under the **Run Records** tab, click the record to be reviewed and click **Proceed** to approve the pipeline. + + +[.admon.note,cols="a"] +|=== +|Note + +| +To simultaneously run multiple pipelines that do not include multibranch configurations, select these pipelines on the **Pipelines** list page and click **Run** to run them in bulk. +|=== + +== Step 5: View Pipeline Details + +. Log in to the {ks_product-en} web console as the **project-regular** user, navigate to **Workspace Management**, access your DevOps project, and click the **graphical-pipeline** pipeline. + +. Under the **Run Records** tab, click a record under **Status** to access the details of the run record. If the task status is **Successful**, all stages of the pipeline will show **Successful**. + +. Under the **Run Logs** tab, click each stage to view detailed logs. Click **View Full Logs** to troubleshoot and analyze issues based on the logs, which can also be downloaded for further analysis. + +== Step 6: Download Artifacts + +On the **Artifacts** tab of the run record details page, click the icon next to the artifact to download it. + +== Step 7: View Code Analysis Results + +Navigate to the **Code Check** page to view the code analysis results provided by SonarQube for this pipeline. This page will be unavailable if SonarQube has not been configured beforehand. For more information, refer to link:../../../04-how-to-integrate/01-sonarqube/[Integrate SonarQube into Pipelines]. + +== Step 8: Verify Kubernetes Resources + +If each stage of the pipeline runs successfully, a Docker image will be automatically built and pushed to your Docker Hub repository. + +. After a successful pipeline run, an image will be pushed to Docker Hub. Log in to Docker Hub to view the result. ++ +image:/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/dockerhub_image.png[,100%] + +. The application name is **APP_NAME**, which in this example is **devops-sample**. The tag value is **SNAPSHOT-$BUILD_NUMBER**, where **$BUILD_NUMBER** corresponds to the **Run ID** listed under the **Run Records** tab. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/02-create-a-pipeline-using-jenkinsfile.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/02-create-a-pipeline-using-jenkinsfile.adoc new file mode 100644 index 000000000..14c0afd93 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/02-create-a-pipeline-using-jenkinsfile.adoc @@ -0,0 +1,329 @@ +--- +title: "Create a Pipeline Using a Jenkinsfile" +keywords: "Kubernetes, {ks_product-en}, DevOps projects, using DevOps, pipelines, creating pipelines using Jenkinsfile" +description: "Introduction to creating pipelines using Jenkinsfile." +weight: 02 +--- + +A Jenkinsfile is a text file that contains the definition of a Jenkins pipeline and is checked into a source code control repository. As it stores the entire workflow as code, the Jenkinsfile forms the basis for code reviews and pipeline iterations. For more information, refer to the link:https://www.jenkins.io/zh/doc/book/pipeline/jenkinsfile/[Jenkins Documentation]. + +This document demonstrates how to create a pipeline based on a Jenkinsfile from a GitHub repository. + + +[.admon.note,cols="a"] +|=== +|Note + +| +DevOps supports creating two types of pipelines: pipelines created based on a Jenkinsfile in SCM as described in this document, and link:../01-create-a-pipeline-using-graphical-editing-panel/[pipelines created through the graphical editing panel]. + +The Jenkinsfile in SCM requires an internal Jenkinsfile in Source Control Management (SCM), meaning the Jenkinsfile must be part of the SCM. The DevOps system automatically builds the CI/CD pipeline based on the existing Jenkinsfile in the code repository. By defining workflows such as **stage** and **step**, specific build, test, and deployment requirements can be met. +|=== + +== Prerequisites + +* **DevOps** must have been installed and enabled. + +* You have a link:https://hub.docker.com[Docker Hub] account and a link:https://github.com[GitHub] account. + +* A workspace, a DevOps project, and a user (e.g. **project-regular**) have been created, and the user has been invited to the DevOps project with the **operator** role. Refer to link:../../05-devops-settings/02-role-and-member-management[Role and Member Management]. + +* A dedicated CI node has been set up to run pipelines. Refer to link:../../05-devops-settings/04-set-ci-node[Set CI Nodes for Dependency Cache]. + +* SonarQube has been installed and configured (optional). Refer to link:../../../04-how-to-integrate/01-sonarqube/[Integrate SonarQube into Pipelines]. If you skip this, the **SonarQube Analysis** stage will be omitted. + +== Pipeline Overview + +This example pipeline consists of the following stages: + +[.admon.note,cols="a"] +|=== +| Note + +| +* **Stage 1: Checkout SCM**: Fetch the source code from the GitHub repository. + +* **Stage 2: Unit Test**: It will not proceed with the next stage until the test is passed. + +* **Stage 3: SonarQube Analysis**: The SonarQube code quality analysis. + +* **Stage 4: Build and Push**: Build an image based on the selected branches in **Strategy Settings** and push the **SNAPSHOT-$BRANCH_NAME-$BUILD_NUMBER** tag to Docker Hub, where **$BUILD_NUMBER** is the run ID of the record in the pipeline run records. + +* **Stage 5: Push Latest**: Tag the `v4.1.0-sonarqube` branch as **latest** and push it to Docker Hub. + +* **Stage 6: Push with Tag**: Generate a tag and release it to GitHub, which will be pushed to Docker Hub. +|=== + + +== Step 1: Create Credentials + +. Log in to the {ks_product-en} web console as the **project-regular** user. + +. Click **Workspace Management** and navigate to your DevOps project. Under **DevOps Project Settings**, create the following credentials in the **Credentials** page. For more information on creating credentials, refer to link:../../05-devops-settings/01-credential-management[Credential Management]. ++ +-- + +[.admon.note,cols="a"] +|=== +| Note + +| +If your account or password contains special characters such as **@** and **$**, errors may occur during pipeline runs due to unrecognized characters. In such cases, encode your account or password on a third-party website (e.g., link:https://www.urlencoder.org[urlencoder]) and then copy and paste the encoded result as your credential information. +|=== + +[%header,cols="1a,2a,2a"] +|=== +| Credential ID | Type | Where to use + +| dockerhub-id +| Username and Password +| Docker Hub + +|github-id +| Username and Password +| GitHub +|=== +-- + +. Create another credential for SonarQube (**sonar-token**) for Stage 3 (Code Analysis). Choose the credential type **Access Token** and enter the SonarQube token in the **Token** field. Refer to link:../../../04-how-to-integrate/01-sonarqube/#_create_a_sonarqube_token_for_the_new_project[Create a SonarQube Token for the New Project]. Click **OK** to complete the process. + +. You also need to create a GitHub Personal Access Token (PAT) with the permissions shown in the following image. Then, in the DevOps project, use the generated token to create account credentials for GitHub authentication (e.g., **github-token**). ++ +-- +image:/images/ks-qkcp/zh/devops-user-guide/use-devops/create-a-pipeline-using-a-jenkinsfile/github-token-scope.png[,100%] + +[.admon.note,cols="a"] +|=== +|Note + +| +To create a GitHub Personal Access Token, go to your GitHub account's **Settings**, click **Developer settings**, select **Personal access tokens**, and then click **Generate new token**. +|=== +-- + +. Once created, you will see the credentials on the credentials page. + + +== Step 2: Modify the Jenkinsfile in your GitHub repository + +. Log in to GitHub and fork all branches of the repository link:https://github.com/kubesphere/devops-maven-sample[devops-maven-sample] to your personal GitHub account. + +. In your GitHub repository **devops-maven-sample**, switch to the `v4.1.0-sonarqube` branch and click on the file **Jenkinsfile-online** in the root directory. + +. Click the edit icon on the right to edit the environment variables. ++ +-- +[%header,cols="1a,1a,2a"] +|=== +|Entry |Value |Description + +|DOCKER_CREDENTIAL_ID +|dockerhub-id +|The **name** for your Docker Hub account in KubeSphere. + +|GITHUB_CREDENTIAL_ID +|github-id +|The **name** for your GitHub account in KubeSphere to push tags to your GitHub repository. + +|REGISTRY +|docker.io +|It defaults to **docker.io**, used as the address to push images. + +|DOCKERHUB_NAMESPACE +|your-dockerhub-id +|Replace it with your Docker Hub account name or the organization name under that account. + +|GITHUB_ACCOUNT +|your-github-id +|Replace it with your GitHub account name. For example, if your GitHub URL is link:https://github.com/kubesphere/[], your GitHub account name is **kubesphere** or the organization name under that account. + +|APP_NAME +|devops-maven-sample +|The application name. + +|SONAR_CREDENTIAL_ID +|sonar-token +|The **name** for the SonarQube token in KubeSphere used for code quality checks. +|=== + + +[.admon.note,cols="a"] +|=== +|Note + +| +In the Jenkinsfile, the **-o** parameter for the **mvn** command enables offline mode. Relevant dependencies have been downloaded in this tutorial to save time and accommodate network disruptions in certain environments. Offline mode is enabled by default. +|=== +-- + +. After editing the environment variables, click **Commit changes** to update the file in the `v4.1.0-sonarqube` branch. + + +== Step 3: Create a Pipeline + +. Log in to {ks_product-en} web console as the **project-regular** user. + +. Click **Workspace Management** and navigate to your DevOps project. Click **Pipelines** and then click **Create**. + +. In the pop-up dialog, name it **jenkinsfile-in-scm**. + +. Under **Pipeline Type**, select **Multi-branch Pipeline**. + +. Under **Code Repository**, choose a code repository and click **Next** to proceed. ++ +-- +If there are no available code repositories, click **Create a code repository** below. For more information, see link:../../04-import-code-repositories/[Import Code Repositories]. +-- + +.. In the **Import Code Repository** dialog, enter a custom code repository name and click **Select a code repository**. + +.. On the **GitHub** tab, select **github-token** from the **Credential** dropdown menu and click **OK**. + +.. In the GitHub list, select your GitHub account, and all repositories associated with that token will be listed on the right. Choose **devops-maven-sample** and click **Select**. + +.. Click **OK** to select your code repository. + +. In **Advanced Settings**, check **Delete outdated branches**. In this tutorial, it is recommended to leave **Branch Retention Period (days)** and **Maximum Branches** at their default values. ++ +-- +Delete outdated branches means that you will discard the branch record all together. The branch record includes console output, archived artifacts and other relevant metadata of specific branches. Fewer branches mean that you can save the disk space used by Jenkins. KubeSphere provides two options to determine when old branches are discarded: + +* Branch Retention Period (days). Branches that exceed the retention period are deleted. + +* Maximum Branches. The earliest branch is deleted when the number of branches exceeds the maximum number. + + +[.admon.note,cols="a"] +|=== +|Note + +| +**Branch Retention Period (days)** and **Maximum Branches** apply to branches at the same time. As long as a branch meets the condition of either field, it is deleted. For example, if you specify 2 as the retention period and 3 as the maximum number of branches, any branch that exceed either number is deleted. DevOps prepopulates these two fields with 7 and 5 by default respectively. +|=== +-- + +. In **Strategy Settings**, DevOps offers four strategies by default. You can delete **Discover PRs from Forks**, as this strategy will not be used in this example. For other strategies, no need to change the setting and you can use the default value directly. ++ +-- + +[.admon.note,cols="a"] +|=== +|Note + +| +To enable **Strategy Settings** here, you should select GitHub as the code repository. +|=== + +As a Jenkins pipeline runs, the Pull Request (PR) submitted by developers will also be regarded as a separate branch. + +**Discover Branches** + +* **Exclude branches field as PRs**. The source branch is not scanned such as the origin's master branch. These branches need to be merged. +* **Include only branches filed as PRs**. Only scan the PR branch. +* **Include all branches**. Pull all the branches from the repository origin. + +**Discover PRs from Origin** + +* **Pull the code with the PR merged**. A pipeline is created and runs based on the source code after the PR is merged into the target branch. +* **Pull the code at the point of the PR**. A pipeline is created and runs based on the source code of the PR itself. +* **Create two pipelines respectively**. Two pipelines are created, one is based on the source code after the PR is merged into the target branch, and the other is based on the source code of the PR itself. +-- + +. Scroll down to **Script Path**, set it to **Jenkinsfile-online**, which is the file name of Jenkinsfile in the example repository located in the root directory. The field specifies the Jenkinsfile path in the code repository. It indicates the repository's root directory. If the file location changes, the script path also needs to be changed. + +. In **Scan Trigger**, select **Scan periodically** and set the interval to **5 minutes**. Click **Create** to finish. ++ +[.admon.note,cols="a"] +|=== +|Note + +| +You can set a specific interval to allow pipelines to scan remote repositories, so that any code updates or new PRs can be detected based on the strategy you set in **Strategy Settings**. +|=== + + +== Step 4: Run the pipeline + +. After a pipeline is created, click its name to go to its details page. ++ +-- + +[.admon.note,cols="a"] +|=== +|Note + +| +* On the **Pipelines** list page, click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right of the pipeline, and select **Copy** to create a duplicate of that pipeline. + +* To simultaneously run multiple pipelines that do not include multibranch configurations , select these pipelines on the **Pipelines** list page and click **Run** to run them in bulk. + +* The **Sync Status** on the pipeline details page shows the synchronization result between KubeSphere and Jenkins. If the synchronization is successful, it will display **Successful** along with a green checkmark icon. + +|=== +-- + +. Under **Run Records**, multiple branches are being scanned. Click **Run** on the right and the pipeline runs based on the behavioral strategy you set. Select **v4.1.0-sonarqube** from the drop-down list and add a tag number such as `v0.0.2`. Click **OK** to trigger a new run. ++ +-- + +[.admon.note,cols="a"] +|=== +|Note + +| +* If you do not see any run records on this page, you need to refresh your browser manually or click **More > Scan Repository**. + +* The tag name is used to refer to the newly generated release and image in GitHub and Docker Hub. Existing tag names cannot be reused for the **TAG_NAME** field. Otherwise, the pipeline will not be running successfully. +|=== +-- + +. Wait for a while, click run records to view details. ++ +-- + +[.admon.note,cols="a"] +|=== +|Note + +| +Activity failures may be caused by different factors. In this example, only the Jenkinsfile of the branch `v4.1.0-sonarqube` is changed as you edit the environment variables in the steps above. While, these variables in the v4.1.0 branch remain unchanged (namely, wrong GitHub and Docker Hub account). If you choose v4.1.0 branch to run, it will result in a failure. Other reasons for failures may be network issues, incorrect coding in the Jenkinsfile and so on. + +In the **Run Logs** tab on the run record details page, you can view detailed information of the logs to troubleshoot and resolve issues. +|=== +-- + +. If the pipeline reaches the **Push with Tag** stage, it will pause at this point and require a user with approval permissions to click **Proceed**. ++ +-- +In a development or production environment, it requires someone who has higher permissions (for example, release manager) to review the pipeline, images, as well as the code analysis result. They have the authority to determine whether the pipeline can go to the next stage. In the Jenkinsfile, you use the section `input` to specify who reviews the pipeline. If you want to specify a user (for example, `project-admin`) to review it, you can add a field in the Jenkinsfile. If there are multiple users, you need to use commas to separate them as follows: + +[,bash] +---- +input(id: 'release-image-with-tag', message: 'release image with tag?', submitter: 'project-admin,project-admin1') +---- +-- + +. Log in to the {ks_product-en} web console as a user with pipeline approval permissions. Click **Workspace Management** and navigate to your DevOps project. Click the pipeline name to access its details page. Under the **Run Records** tab, click the record you want to review, then click **Proceed** to approve the pipeline. ++ +[.admon.note,cols="a"] +|=== +|Note + +| +In KubeSphere, if you do not specify a reviewer, the user that can run a pipeline will be able to continue or terminate the pipeline. Additionally, the pipeline creator, users with the project administrator role, or any accounts specified by you also have the authority to continue or terminate the pipeline. +|=== + +== Step 5: Check Pipeline Status + +. Under the **Pipeline** tab in the run records, check the running status of the pipeline. The pipeline may take a few minutes to initialize when first created. +// The sample pipeline consists of eight stages, each defined separately in the link:https://github.com/kubesphere/devops-maven-sample/blob/sonarqube/Jenkinsfile-online[Jenkinsfile-online]. + +. Click the **Run Logs** tab to view the pipeline's running logs. Click each stage to view detailed logs. Click **View Full Logs** to troubleshoot and resolve issues based on the logs, and you can also download the logs for further analysis. + +== Step 6: Verify Results + +. After a successful pipeline run, click **Code Check** to view the code analysis results provided by SonarQube. This page will be unavailable if SonarQube has not been configured beforehand. + +. Following the definitions in the Jenkinsfile, the Docker image built by the pipeline has been successfully pushed to Docker Hub. In Docker Hub, you will see an image with the tag **v0.0.2**, specified before the pipeline runs. + +. At the same time, a new tag and a new release have been generated in GitHub. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/03-use-pipeline-templates.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/03-use-pipeline-templates.adoc new file mode 100644 index 000000000..2a78b14d4 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/03-use-pipeline-templates.adoc @@ -0,0 +1,119 @@ +--- +title: "Create Pipelines Using Pipeline Templates" +keywords: "Kubernetes, {ks_product-en}, DevOps Projects, Using DevOps, Pipelines" +description: "Learn how to create pipelines using pipeline templates." +weight: 03 +--- + +This document illustrates how to create pipelines using pipeline templates on KubeSphere. + +DevOps provides a graphic editing panel that facilitates the definition of stages and steps in Jenkins pipelines through interactive operations. It includes various built-in pipeline templates like Node.js, Maven, and Golang, enabling users to swiftly create pipelines based on these templates. While DevOps also offers CI and CI & CD pipeline templates, they might not fully align with custom requirements. It is advisable to use other built-in templates or directly customize pipelines. + +* CI Pipeline Template ++ +-- +The CI pipeline template comprises two stages. The **clone code** stage fetches the code, while the **build & push** stage builds the image and pushes it to Docker Hub. Prior to editing, create credentials for the code repository and Docker Hub repository, and then configure the URLs and credentials in the corresponding steps. Once editing is finalized, the pipeline can be initiated. +-- + +* CI & CD Pipeline Template ++ +-- +The CI & CD pipeline template consists of six stages. For detailed information on each stage, please refer to link:../02-create-a-pipeline-using-jenkinsfile/[Create a Pipeline Using a Jenkinsfile]. Prior to editing, create credentials for the code repository and Docker Hub repository, and then configure the URLs and credentials in the corresponding steps. Once editing is finalized, the pipeline can be initiated. +-- + +== Prerequisites + +* **DevOps** must have been installed and enabled. + +* A workspace, a DevOps project, and a user (e.g. **project-regular**) have been created, and the user has been invited to the DevOps project with the **operator** role. Refer to link:../../05-devops-settings/02-role-and-member-management[Role and Member Management]. + +== Steps + +The following takes Node.js as an example to show how to use a built-in pipeline template. Steps for using Maven and Golang pipeline templates are analogous. + +. Log in to the {ks_product-en} web console as the **project-regular** user. + +. Click **Workspace Management** and navigate to your DevOps project. Click **Pipelines** and then click **Create**. + +. In the pop-up dialog, input the pipeline name, click **Next**, and then click **Create**. + +. Click the created pipeline, proceed to the **Pipeline Configurations** tab, and select **Edit Pipeline**. + +. In the **Create Pipeline** dialog, select **Node.js**, and then click **Next**. + +. On the **Parameter Configuration** tab, configure the following parameters according to the actual situation, and then click **Create**. ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|GitURL +|The URL of the project repository to be cloned. + +|GitRevision +|The branch to be checked out. + +|NodeDockerImage +|The Docker image version for Node.js. + +|InstallScript +|Shell script to install dependencies. + +|TestScript +|Shell script for project testing. + +|BuildScript +|Shell script to build the project. + +|ArtifactsLocation +|Path where artifact files are located. +|=== +-- + +. By default, a series of steps has been added on the left graphic editing panel. Select **Add Step** or **Add Parallel Stage** to make adjustments. + +. Click on a step, on the right side of the page, you can: ++ +-- +* Modify the stage name. + +* Delete the stage. + +* Specify the agent type. + +* Add conditions. + +* Edit or remove a specific task. + +* Add steps or add nesting steps. + +//note +[.admon.note,cols="a"] +|=== +|Note + +| +Refer to link:../01-create-a-pipeline-using-graphical-editing-panel/[Create a Pipeline Using Graphic Editing Panels] to get how to customize steps and stages in the pipeline template. +|=== +-- + +. In the **Agent** section on the right, choose the agent type, defaulting to **kubernetes**, and click **OK**. ++ +-- +[%header,cols="1a,4a"] +|=== +|Agent Type |Description + +|any +|Uses the default base pod template to create a Jenkins agent for running pipelines. + +|node +|Uses a pod template with the specific label to create a Jenkins agent for running pipelines. Available labels include base, java, nodejs, maven, go, and more. + +|kubernetes +|Use a standard Kubernetes pod template defined in a yaml file to create a jenkins agent for running pipelines. +|=== +-- + +. Review the details of the created pipeline template, and click **Run** to run the pipeline. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/04-gitlab-multibranch-pipeline.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/04-gitlab-multibranch-pipeline.adoc new file mode 100644 index 000000000..40e12c22d --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/04-gitlab-multibranch-pipeline.adoc @@ -0,0 +1,159 @@ +--- +title: "Create a Multi-branch Pipeline with GitLab" +keywords: "Kubernetes, {ks_product-en}, DevOps project, use DevOps, pipeline" +description: "Learn how to create a multi-branch pipeline using GitLab." +weight: 04 +--- + +link:https://gitlab.com/users/sign_in[GitLab] is a web-based Git repository management tool that supports public and private repositories, and provides comprehensive DevOps functionalities including source code management, code review, issue tracking, continuous integration, and more. With GitLab, teams can collaborate efficiently on a single platform to complete the entire software development process from coding to deployment. + +{ks_product-en} supports creating multi-branch pipelines using GitLab in DevOps projects. This document demonstrates how to create a multi-branch pipeline with GitLab. + +== Prerequisites + +* **DevOps** must have been installed and enabled. + +* A workspace, a DevOps project, and a user (e.g., **project-regular**) have been created, and the user has been invited to the DevOps project with the **operator** role. Refer to link:../../05-devops-settings/02-role-and-member-management[Role and Member Management]. + +* You have a link:https://gitlab.com/users/sign_in[GitLab] account and a link:https://hub.docker.com/[Docker Hub] account. + +== Step 1: Create Credentials + +. Log in to the {ks_product-en} web console as the **project-regular** user. + +. Click **Workspace Management** and enter your DevOps project, then create the following credentials under **Credentials** in **DevOps Project Settings**. For more information on how to create credentials, refer to link:../../05-devops-settings/01-credential-management/[Credential Management]. ++ +-- +//note +[.admon.note,cols="a"] +|=== +|Note + +| +If your account or password contains special characters such as **@** and **$**, errors may occur during pipeline runs due to unrecognized characters. In such cases, encode your account or password on a third-party website (e.g., link:https://www.urlencoder.org[urlencoder]) and then copy and paste the encoded result as your credential information. +|=== + +[%header,cols="1a,2a,2a"] +|=== +| Credential ID | Type | Where to use + +|dockerhub-id +|Username and password +|Docker Hub + +|gitlab-id +|Username and password +|GitLab +|=== +-- + +. After creation, you will see the created credentials on the credentials page. + +== Step 2: Edit the Jenkinsfile in your GitLab Repository + +. Log in to GitLab and create a public project. Click **New Project > Import Project**, select **Import repository from URL**, enter the URL of link:https://github.com/kubesphere/devops-maven-sample[devops-maven-sample], choose the visibility level **Public**, and then click **Create Project**. + +. In the newly created project, create a new branch from the v4.1.0 branch, named **gitlab-demo**. + +. In the **gitlab-demo** branch, click the **Jenkinsfile-online** file in the root directory. + +. Click **Edit**, change **GITHUB_CREDENTIAL_ID**, **GITHUB_ACCOUNT**, and **@github.com** to **GITLAB_CREDENTIAL_ID**, **GITLAB_ACCOUNT**, and **@gitlab.com** respectively, and edit the entries listed in the table below. Also, change the value of **branch** in **push latest** to **gitlab-demo**. ++ +-- +[%header,cols="1a,2a,2a"] +|=== +|Entry|Value|Description + +|GITLAB_CREDENTIAL_ID +|gitlab-id +|The **name** you set for your GitLab account in KubeSphere, used to push tags to your GitLab repository. + +|DOCKERHUB_NAMESPACE +|your-dockerhub-id +|Replace with your Docker Hub account name, or the name of an organization under the account. + +|GITLAB_ACCOUNT +|your-gitlab-id +|Replace with your GitLab account name, or the name of a user group under the account. +|=== + +//note +[.admon.note,cols="a"] +|=== +|Note + +| +For more information about environment variables in Jenkinsfile, refer to link:../02-create-a-pipeline-using-jenkinsfile/[Create a Pipeline Using a Jenkinsfile]. +|=== +-- + +. Click **Commit changes** to update the file. + +== Step 3: Create a Pipeline + +. Log in to the {ks_product-en} web console as the **project-regular** user. + +. Click **Workspace Management** and enter your DevOps project, then click **Create** on the **Pipelines** page. + +. In the pop-up dialog, name it **gitlab-multi-branch**. + +. Under **Pipeline Category**, select **Multi-branch Pipeline**. + +. Under **Code Repository**, select a code repository and click **Next** to continue. ++ +-- +If no code repository is available, click **Create a code repository** below. For more information, refer to link:../../04-import-code-repositories/[Import Code Repositories]. +-- + +.. In the **Import Code Repository** dialog, enter a name for the code repository (customizable), then click to select the code repository. + +.. On the **GitLab** tab, select the default option link:https://gitlab.com[] under **GitLab Server Address**, enter the name of the group the GitLab project belongs to in **Project Group/Owner**, then select the **devops-maven-sample** repository from the dropdown menu under **Code Repository**. Click image:/images/ks-qkcp/zh/icons/check-dark.svg[check,18,18] in the bottom right corner, then click **OK**. ++ +-- +//note +[.admon.note,cols="a"] +|=== +|Note + +| +To use a private GitLab repository, follow these steps: + +* Go to **User Settings > Access Tokens** on GitLab, create a personal access token with API and read_repository permissions. + +* link:../07-access-jenkins-console[Access Jenkins Dashboard], go to **Manage Jenkins > Manage Credentials**, create Jenkins credentials using your GitLab token for accessing GitLab. Then go to **Manage Jenkins > Configure System**, add the credentials in **GitLab**. + +* In the DevOps project, select **DevOps Project Settings > Credentials**, create a credential using your GitLab token. When creating the pipeline, specify this credential in the **Credentials** under the **GitLab** tab so that the pipeline can pull code from your private GitLab repository. +|=== +-- + +. On the **Advanced Settings** tab, change the **Script Path** to **Jenkinsfile-online** and then click **Create**. ++ +-- +//note +[.admon.note,cols="a"] +|=== +|Note + +| +This field specifies the path of the Jenkinsfile in the code repository, which represents the root directory of the repository. If the file location changes, the script path also needs to be changed. +|=== +-- + +== Step 4: Run the Pipeline + +. After the pipeline is created, it will be displayed in the list. Click the pipeline name to view its details page. +. Click **Run** on the right. In the pop-up dialog, select **gitlab-demo** from the dropdown menu and add a tag number, such as **v0.0.2**. Click **OK** to trigger a new run. +. Wait a moment, then click the run record to view the details. +. If the pipeline reaches the **Push with Tag** stage, it will pause at this stage and require a user with approval permissions to click **Proceed**. + +== Step 5: Check Pipeline Status + +. On the **Pipeline** tab of the run record, check the running status of the pipeline. + +. Click the **Run Logs** tab to view the pipeline run logs. Click each stage to view its detailed logs. Click **View Full Logs** to troubleshoot and resolve issues based on the logs, or download the logs to your local machine for further analysis. + +== Step 6: Verify Results + +. As defined in the Jenkinsfile, the Docker image built by the pipeline has also been successfully pushed to Docker Hub. In Docker Hub, you will see the image with the tag **v0.0.2**, which was specified before the pipeline run. + +. Meanwhile, a new tag has been generated in GitLab. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/05-pipeline-settings.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/05-pipeline-settings.adoc new file mode 100644 index 000000000..318e800af --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/05-pipeline-settings.adoc @@ -0,0 +1,204 @@ +--- +title: "Pipeline Settings" +keywords: "Kubernetes, {ks_product-en}, DevOps project, use DevOps, pipeline" +description: "Learn how to customize pipeline configurations." +weight: 05 +--- + +When creating a pipeline, you can customize the pipeline configuration through various settings. + +After the pipeline is created, you can also edit the pipeline's configuration by entering the pipeline details page, clicking **Edit Information** and **More > Edit Settings**. + +This document details how to configure pipelines. + +== Prerequisites + +* **DevOps** must have been installed and enabled. + +* A workspace, a DevOps project, and a user (e.g., **project-regular**) have been created, and the user has been invited to the DevOps project with the **operator** role. Refer to link:../../05-devops-settings/02-role-and-member-management[Role and Member Management]. + +== Basic Information + +When creating a pipeline, on the **Basic Information** tab, you can customize the following information: + +* **Name**: The name of the pipeline. Pipelines within the same DevOps project cannot have the same name. + +* **DevOps Project**: The DevOps project to which the pipeline belongs. + +* **Description**: Additional information describing the pipeline. The description should not exceed 256 characters. + +* **Pipeline Type**: Regular pipeline or multi-branch pipeline. If you choose a multi-branch pipeline, you need to select a code repository. + +* **Code Repository (Optional)**: Select a code repository as the code source for the pipeline. You can choose GitHub, GitLab, Bitbucket, and Git as the code source. ++ +==== +* GitHub ++ +-- +If you choose **GitHub**, you must specify the credentials for accessing GitHub. If you have already created credentials using your GitHub token, select the existing credentials from the dropdown menu, or click **Create Credential** to create new credentials. After selecting the credentials, click **OK** to choose your repository on the right. After completing all operations, click image:/images/ks-qkcp/zh/icons/check-dark.svg[check,18,18]. +-- + +* GitLab ++ +-- +If you choose **GitLab**, you must specify the GitLab server address, group/owner, and code repository. If credentials are required to access the code repository, you need to specify a credential. After completing all operations, click image:/images/ks-qkcp/zh/icons/check-dark.svg[check,18,18]. +-- + +* Bitbucket ++ +-- +If you choose **Bitbucket**, you need to enter your Bitbucket server address. Create a credential using your Bitbucket username and password in advance, or click **Create Credential** to create a new credential. After entering the information, click **OK** to choose your repository on the right. After completing all operations, click image:/images/ks-qkcp/zh/icons/check-dark.svg[check,18,18]. +-- + +* Git ++ +-- +If you choose **Git**, you need to specify the repository URL. If credentials are required to access the code repository, you need to specify a credential, or click **Create Credential** to add a new credential. After completing all operations, click image:/images/ks-qkcp/zh/icons/check-dark.svg[check,18,18]. +-- +==== + +== Advanced Settings + +=== Code Repository Specified + +If you specify a code repository, you can customize the following configurations on the **Advanced Settings** tab: + +* Branch Settings ++ +-- +**Delete outdated branches**: Automatically delete old branches. Branch records will be deleted together. The branch record includes console output, archived artifacts and other relevant metadata of specific branches. Fewer branches mean that you can save the disk space used by Jenkins. KubeSphere provides two options to determine when old branches are discarded: + +* **Branch Retention Period (days)**: Branches that exceed the retention period are deleted. + +* **Maximum Branches**: The earliest branch is deleted when the number of branches exceeds the maximum number. + +//note +[.admon.note,cols="a"] +|=== +|Note + +| +**Branch Retention Period (days)** and **Maximum Branches** apply to branches at the same time. As long as a branch meets the condition of either field, it is deleted. For example, if you specify 2 as the retention period and 3 as the maximum number of branches, any branch that exceed either number is deleted. DevOps prepopulates these two fields with 7 and 5 by default respectively. +|=== +-- + +* Strategy Settings ++ +-- +DevOps provides four default policies in **Strategy Settings**. As a Jenkins pipeline runs, the Pull Request (PR) submitted by developers will also be regarded as a separate branch. + +[.admon.note,cols="a"] +|=== +|Note + +| +To enable **Strategy Settings** here, you should select GitHub as the code repository. +|=== + +**Discover Branches** + +- **Exclude branches field as PRs**. The source branch is not scanned such as the origin's master branch. These branches need to be merged. +- **Include only branches filed as PRs**. Only scan the PR branch. +- **Include all branches**. Pull all the branches from the repository origin. + + +**Discover Tags** + +* **Enable tag discovery**: Branches with specified tags are scanned. +* **Disable tag discovery**: Branches with specified tags are not scanned. + +**Discover PRs from Origin** + +* **Pull the code with the PR merged**. A pipeline is created and runs based on the source code after the PR is merged into the target branch. +* **Pull the code at the point of the PR**. A pipeline is created and runs based on the source code of the PR itself. +* **Create two pipelines respectively**. Two pipelines are created, one is based on the source code after the PR is merged into the target branch, and the other is based on the source code of the PR itself. + +**Discover PRs from Forks** + +Pull Strategy: + +* **Pull the code with the PR merged**. A pipeline is created and runs based on the source code after the PR is merged into the target branch. +* **Pull the code at the point of the PR**. A pipeline is created and runs based on the source code of the PR itself. +* **Create two pipelines respectively**. Two pipelines are created, one is based on the source code after the PR is merged into the target branch, and the other is based on the source code of the PR itself. + +Trusted Users: + +* **Contributors**: Users who have contributed to the PR. +* **Everyone**: Every user who can access the PR. +* **Users with admin or write permission**: Only users with admin or write permissions to the PR. +* **None**: If you choose this option, PRs will not be discovered regardless of the option selected in **Pull Strategy**. +-- + +* Filter by Regex ++ +-- +Check the box to specify a regular expression to filter branches, PRs, and tags. +-- + +* Script Path ++ +-- +The **Script Path** parameter specifies the path of the Jenkinsfile in the code repository, which represents the root directory of the repository. If the file location changes, the script path also needs to be changed. +-- + +* Scan Trigger ++ +-- +Check **Scan periodically** and set the scan interval from the dropdown list. +-- + +* Build Trigger ++ +-- +Check **Trigger through pipeline events** and select a pipeline from the dropdown lists of **Trigger on Pipeline Creation** and **Trigger on Pipeline Deletion** to automatically trigger tasks in the specified pipeline when a new pipeline is created or an existing pipeline is deleted. +-- + +* Clone Settings ++ +-- +* **Enable shallow clone**: If shallow clone is enabled, the cloned code will not include tags. +* **Clone Depth**: The number of commits to fetch during cloning. +* **Clone Timeout Period (min)**: The time required to complete the cloning process (in minutes). +-- + +* Webhook ++ +-- +**Webhook** effectively allows the pipeline to discover changes in the remote code repository and automatically trigger a new run. Webhook should be the primary method to trigger Jenkins to automatically scan GitHub and Git (e.g., GitLab). For more information, refer to link:../06-pipeline-webhook/[Trigger a Pipeline Using a Webhook]. +-- + +=== Code Repository Not Specified + +If you do not specify a code repository, you can customize the following configurations on the **Advanced Settings** tab: + +* Build Settings ++ +-- +**Delete outdated build records**: Specify when to delete build records under branches. Build records include console output, archived artifacts, and other metadata related to specific builds. Fewer builds mean that you can save the disk space used by Jenkins. KubeSphere provides two options to determine when old builds are discarded: + +* **Build Record Retention Period (Days)**: Build records that exceed the retention period are deleted. +* **Maximum Build Records**: When the number of build records exceeds the maximum number allowed, the earliest build record is deleted. + +//note +[.admon.note,cols="a"] +|=== +|Note + +| +**Build Record Retention Period (Days)** and **Maximum Build Records** can be applied to build records simultaneously. As long as a build record meets the condition set by one of the fields, it will be deleted. For example, if you specify 2 days for retention and 3 for the maximum number of build records, a build record will be deleted if its retention days exceed 2 or the number of build records exceeds 3. DevOps prepopulates these two fields with 7 and 10 by default respectively. +|=== + +* **No concurrent builds**: If this option is checked, multiple builds cannot run concurrently. +-- + +* Build Parameters ++ +-- +Parameterized build processes allow passing one or more parameters when starting the pipeline run. DevOps provides five default parameter types, including **String**, **Multi-line string**, **Boolean**, **Options**, and **Password**. When parameterizing a project, the build is replaced with a parameterized build, which will prompt the user to enter a value for each defined parameter. +-- + +* Build Trigger ++ +-- +**Build periodically**: Allows periodic execution of builds. Enter a CRON expression to set the schedule. +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/06-pipeline-webhook.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/06-pipeline-webhook.adoc new file mode 100644 index 000000000..217456668 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/06-pipeline-webhook.adoc @@ -0,0 +1,71 @@ +--- +title: "Trigger a Pipeline Using a Webhook" +keywords: "Kubernetes, {ks_product-en}, DevOps project, use DevOps, pipeline" +description: "Learn how to trigger pipelines using webhook in GitHub repositories." +weight: 06 +--- + +If you create a Jenkinsfile-based pipeline from a remote code repository, you can configure a webhook in the remote repository so that the pipeline is automatically triggered when changes are made to the remote repository. + +This tutorial demonstrates how to trigger a pipeline by using a webhook in GitHub. + + +== Prerequisites + +* **DevOps** must have been installed and enabled. + +* A workspace, a DevOps project, and a user (e.g., **project-regular**) have been created, and the user has been invited to the DevOps project with the **operator** role. Refer to link:../../05-devops-settings/02-role-and-member-management[Role and Member Management]. + +* You have created a Jenkinsfile-based pipeline from a remote code repository. For more information, refer to link:../02-create-a-pipeline-using-jenkinsfile/[Create a Pipeline Using a Jenkinsfile]。 + +== Configure a Webhook + +=== Get a webhook URL + +. Log in to the {ks_product-en} web console as the **project-regular** user. + +. Click **Workspace Management** and enter your DevOps project. + +. On the **Pipelines** page, click a pipeline (e.g., **jenkins-in-scm**) to view its details page. + +. Click **More** and select **Edit Settings** in the drop-down list. + +. In the pop-up dialog box, scroll down to **Webhook** to get the webhook push URL. + +=== Set a webhook in the GitHub repository + +. Log in to GitHub and go to your own repository `devops-maven-sample`. + +. Click **Settings** > **Webhooks**, and click **Add webhook**. + +. Enter the webhook push URL of the pipeline for **Payload URL** and click **Add webhook**. This tutorial selects **Just the push event** for demonstration purposes. You can make other settings based on your needs. For more information, see link:https://docs.github.com/en/developers/webhooks-and-events/webhooks/creating-webhooks[GitHub Documentation]. + +. The configured webhook is displayed on the **Webhooks** page. + +== Trigger the Pipeline Using the Webhook + +=== Submit a Pull Request to the Repository + +. On the **Code** page of the devops-maven-sample repository, click **master** and then select the **v4.1.0-sonarqube** branch. + +. Go to **/deploy/dev-ol** and click the file **devops-sample.yaml**. + +. Click image:/images/ks-qkcp/zh/icons/pen-light.svg[pen-light,18,18] to edit the file. For example, change the value of **spec.replicas** to **3**. + +. Click **Commit changes**. + +=== Check Webhook Delivery + +. On the **Settings** > **Webhooks** page of the devops-maven-sample repository, click the created webhook. + +. Click **Recent Deliveries**, then click a specific delivery record to view the details. + +== Check Pipeline Status + +. Log in to the {ks_product-en} web console as the **project-regular** user. + +. Click **Workspace Management** and enter your DevOps project. + +. On the **Pipelines** page, click a pipeline (e.g., **jenkins-in-scm**) to view its details page. + +. On the **Run Records** tab, check if the pull request submitted to the remote repository **v4.1.0-sonarqube** branch has triggered a new run. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/07-access-jenkins-console.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/07-access-jenkins-console.adoc new file mode 100644 index 000000000..7a87578b6 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/07-access-jenkins-console.adoc @@ -0,0 +1,87 @@ +--- +title: "Access Jenkins Dashboard" +keywords: "Kubernetes, {ks_product-en}, DevOps project, use DevOps, access Jenkins" +description: "Learn how to access the Jenkins dashboard." +weight: 07 +--- + +When DevOps is installed, the Jenkins dashboard is also installed by default. However, you need to configure it according to the following steps before you can access the Jenkins dashboard. + +== Prerequisites + +**DevOps** must have been installed and enabled. + +== Steps + +. Run the following command on the cluster node to get the Jenkins address. ++ +-- +// Bash +[,bash] +---- +export NODE_PORT=$(kubectl get --namespace kubesphere-devops-system -o jsonpath="{.spec.ports[0].nodePort}" services devops-jenkins) +export NODE_IP=$(kubectl get nodes --namespace kubesphere-devops-system -o jsonpath="{.items[0].status.addresses[0].address}") +echo http://$NODE_IP:$NODE_PORT +---- + +You will get output similar to the following: + +[,bash] +---- +http://10.77.1.201:30180 +---- +-- + +. Check the `jenkins.securityRealm.openIdConnect.kubesphereCoreApi` and `jenkins.securityRealm.openIdConnect.jenkinsURL` in the DevOps configuration, ensuring they are modified to the actual accessible addresses of the kubesphere-console and devops-jenkins services, respectively. If not, modify them and wait for the extension to update. ++ +[,yaml] +---- +jenkins: + securityRealm: + openIdConnect: + # The kubesphere-core api used for jenkins OIDC + # If you want to access to jenkinsWebUI, the kubesphereCoreApi must be specified and browser-accessible + # Modifying this configuration will take effect only during installation + # If you wish for changes to take effect after installation, you need to update the jenkins-casc-config ConfigMap, copy the securityRealm configuration from jenkins.yaml to jenkins_user.yaml, save, and wait for approximately 70 seconds for the changes to take effect. + kubesphereCoreApi: "http://192.168.1.1:30880" + # The jenkins web URL used for OIDC redirect + jenkinsURL: "http://192.168.1.1:30180" +---- + +. Check all addresses under `securityRealm.oic` in the `jenkins_user.yaml` of the `jenkins-casc-config` ConfigMap, ensuring they are the same as those under `securityRealm.oic` in `jenkins.yaml`, and are modified to the actual accessible address of kubesphere-console. If they are not the same, modify them and wait for them to take effect. ++ +[,yaml] +---- + securityRealm: + oic: + clientId: "jenkins" + clientSecret: "jenkins" + tokenServerUrl: "http://192.168.1.1:30880/oauth/token" + authorizationServerUrl: "http://192.168.1.1:30880/oauth/authorize" + userInfoServerUrl: "http://192.168.1.1:30880/oauth/userinfo" + endSessionEndpoint: "http://192.168.1.1:30880/oauth/logout" + logoutFromOpenidProvider: true + scopes: openid profile email + fullNameFieldName: url + userNameField: preferred_username +---- + +. Check the `authentication.issuer.url` in the `kubesphere-config` ConfigMap, ensuring it is modified to the actual accessible address of kubesphere-console. If not, modify it and restart the deployment `ks-apiserver` for it to take effect. ++ +-- +[,yaml] +---- + authentication: + issuer: + url: "http://192.168.1.1:30880" +---- + +[source,bash] +---- +kubectl -n kubesphere-system rollout restart deploy ks-apiserver +---- +-- + +. Use the address http://NodeIP:30180 to access the Jenkins dashboard. ++ +Jenkins is configured with KubeSphere LDAP, which means you can log in to Jenkins directly using your KubeSphere account (e.g., `admin/P@88w0rd`). \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/07-jenkins-setting.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/07-jenkins-setting.adoc new file mode 100644 index 000000000..e7034c28d --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/07-jenkins-setting.adoc @@ -0,0 +1,50 @@ +--- +title: "Jenkins System Settings" +keywords: "Kubernetes, {ks_product-en}, DevOps project, use DevOps, pipeline" +description: "Learn how to set up Jenkins and reload configurations on the Jenkins dashboard." +weight: 07 +--- + +The DevOps system provides containerized CI/CD functionalities based on Jenkins. As the standard for CI/CD workflows, Jenkins is powerful and flexible. However, many plugins require users to perform system-level configurations before using Jenkins. + +To provide a schedulable Jenkins environment, KubeSphere adopts the **Configuration as Code** approach for Jenkins system settings. Users need to log in to the Jenkins dashboard, modify the configurations, and then reload them. + +This document demonstrates how to set up Jenkins and reload configurations on the Jenkins dashboard. + +== Prerequisites + +**DevOps** must have been installed and enabled. + +== Jenkins Configuration as Code + +KubeSphere installs the Jenkins Configuration as Code plugin by default, which supports defining the desired state of Jenkins through YAML files, making it easy to reproduce Jenkins configurations (including plugin configurations). Refer to link:https://github.com/jenkinsci/configuration-as-code-plugin/tree/master/demos[this directory] for specific Jenkins configurations and example YAML files. + +Additionally, you can find the **formula.yaml** file in the link:https://github.com/kubesphere/ks-jenkins[ks-jenkins] repository to view plugin versions and customize these versions as needed. + +== Modify ConfigMap + +It is recommended to configure Jenkins in KubeSphere through Configuration as Code (CasC). The built-in Jenkins CasC file is stored as a ConfigMap. + +. Log in to the {ks_product-en} web console as the **platform-admin** user. + +. Click **Cluster Management** and enter a cluster. + +. In the left navigation pane, select **Configuration** > **ConfigMaps**. On the **ConfigMaps** page, select **kubesphere-devops-system** from the list, then click **jenkins-casc-config**. + +. On the details page, click **More** and select **Edit YAML** from the dropdown list. + +. The configuration template for **jenkins-casc-config** is a YAML file located under **data:jenkins_user.yaml:**. Modify the container image, labels, resource requests (Request), and limits (Limit) in the ConfigMap's agent (Kubernetes Jenkins Agent), or add containers in the `podTemplate`. After completing the operations, click **OK**. + +. Wait for 1 to 2 minutes, and the new configuration will be reloaded automatically. + +//note +[.admon.note,cols="a"] +|=== +|Note + +| +* For more information on how to configure Jenkins through CasC, refer to link:https://github.com/jenkinsci/configuration-as-code-plugin[Jenkins Documentation]. + +* In the current version, not all plugins support CasC settings. CasC only overrides plugin configurations set through CasC. + +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/08-jenkins-shared-library.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/08-jenkins-shared-library.adoc new file mode 100644 index 000000000..c9fa64cb7 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/08-jenkins-shared-library.adoc @@ -0,0 +1,146 @@ +--- +title: "Use Jenkins Shared Libraries in a Pipeline" +keywords: "Kubernetes, {ks_product-en}, DevOps project, use DevOps, pipeline" +description: "Learn how to use Jenkins shared libraries in a pipeline." +weight: 08 +--- + +For Jenkins pipelines that contain the same stages or steps, you can use Jenkins shared libraries in the Jenkinsfile to avoid pipeline code duplication. + +This document demonstrates how to use Jenkins shared libraries in a DevOps pipeline. + +== Prerequisites + +* **DevOps** must have been installed and enabled. + +* A workspace, a DevOps project, and a user (e.g. **project-regular**) have been created, and the user has been invited to the DevOps project with the **operator** role. See link:../../05-devops-settings/02-role-and-member-management[Role and Member Management]. + +* You have a usable Jenkins shared library. This tutorial uses the Jenkins shared library in the link:https://github.com/devops-ws/jenkins-shared-library[GitHub repository] as an example. + + +== Step 1: Configure Shared Libraries in the Jenkins Dashboard + +. link:../07-access-jenkins-console[Log in to the Jenkins dashboard] and click **Manage Jenkins** in the left navigation pane. + +. Scroll down and click **Configure System**. + +. Scroll down to **Global Pipeline Libraries** and click **Add**. + +. Configure the fields as follows. + +* **Name:** Set a name for the shared library (e.g., `demo-shared-library`) so that you can import the shared library by referring to this name in a Jenkinsfile. + +* **Default version:** Set a branch name of the repository where the shared library is located as the default branch to import the shared library. Enter `master` for this tutorial. + +* Under **Retrieval method**, select **Modern SCM**. + +* Under **Source Code Management**, select **Git** and enter the URL of the example repository for **Project Repository**. If you use your own repository and access to this repository requires credentials, you also need to configure **Credentials**. + +. After editing, click **Apply**. ++ +-- +//note +[.admon.note,cols="a"] +|=== +|Note + +| +You can also configure link:https://www.jenkins.io/zh/doc/book/pipeline/shared-libraries/#folder-level-shared-libraries[folder-level shared libraries]. + +|=== +-- + +== Step 2: Use Shared Libraries in a Pipeline + +=== Create a Pipeline + +. Log in to the {ks_product-en} web console as the **project-regular** user. + +. Click **Workspace Management** and enter your DevOps project, then click **Create** on the **Pipelines** page. + +. In the dialog that appears, name it **demo-shared-library** and click **Next**. + +. In **Advanced Settings**, click **Create** directly to create the pipeline with the default settings. + +=== Edit the Pipeline + +. On the pipeline list page, click the pipeline name to enter its detail page, then click **Edit Jenkinsfile**. + +. In the dialog that appears, add the following example Jenkinsfile. After editing, click **OK**. ++ +-- +[,json] +---- + +library identifier: 'devops-ws-demo@master', retriever: modernSCM([ + $class: 'GitSCMSource', + remote: 'https://github.com/devops-ws/jenkins-shared-library', + traits: [[$class: 'jenkins.plugins.git.traits.BranchDiscoveryTrait']] +]) + +pipeline { + agent any + + stages { + stage('Demo') { + steps { + script { + mvn.fake() + } + } + } + } +} +---- + +//note +[.admon.note,cols="a"] +|=== +|Note + +| +Specify a **label** for **agent** as needed. + +|=== +-- + ++ +Alternatively, use a Jenkinsfile that starts with **@Library('') _**. If you use this type of Jenkinsfile, you need to configure the shared library on the Jenkins dashboard in advance. In this tutorial, you can use the following example Jenkinsfile. ++ +-- +[,json] +---- + +@Library('demo-shared-library') _ + +pipeline { + agent any + + stages { + stage('Demo') { + steps { + script { + mvn.fake() + } + } + } + } +} +---- + +//note +[.admon.note,cols="a"] +|=== +|Note + +| +Use **@Library('demo-shared-library@') _** to specify a specific branch. + +|=== +-- + +== Step 3: Run the Pipeline + +. On the pipeline detail page, click **Run** to run the pipeline. + +. Click the record under the **Run Records** tab to view the pipeline run details. Click **Run Logs** to view the log details. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/09-jenkins-email.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/09-jenkins-email.adoc new file mode 100644 index 000000000..91fa7142e --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/09-jenkins-email.adoc @@ -0,0 +1,58 @@ +--- +title: "Set an Email Server for Pipelines" +keywords: "Kubernetes, {ks_product-en}, DevOps project, use DevOps, pipeline" +description: "Introduces how to set an email server for pipelines." +weight: 09 +--- + +The built-in Jenkins cannot share the same email configuration with the notification system of KubeSphere Therefore, you need to configure an email server separately for DevOps pipelines. + +== Prerequisites + +* **DevOps** must have been installed and enabled. + +* You should have the **Cluster Management** permission on the {ks_product-en} platform. + +== Steps + +. Log in to the {ks_product-en} web console with an account that has the **Cluster Management** permission. + +. Click **Cluster Management** and enter a cluster. + +. In the left navigation pane, select **Application Workloads** > **Workloads**, and choose the **kubesphere-devops-system** project from the dropdown list. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of **devops-jenkins** and select **Edit YAML**. + +. Edit the fields in the YAML file as shown below. After making the changes, click **OK**. ++ +-- +//warning +[.admon.warning,cols="a"] +|=== +|Warning + +| +After modifying the email server configuration, the **devops-jenkins** deployment will restart. Therefore, the DevOps system will be unavailable for a few minutes. Please modify these configurations at an appropriate time. + +|=== + +[%header,cols="1a,3a"] +|=== +|Environment Variable Name |Description +|EMAIL_SMTP_HOST +|SMTP server address. + +|EMAIL_SMTP_PORT +|SMTP server port (e.g., 25). + +|EMAIL_FROM_ADDR +|Email sender address. + +|EMAIL_FROM_NAME +|Email sender name. + +|EMAIL_FROM_PASS +|Email sender password. + +|EMAIL_USE_SSL +|Whether to enable SSL configuration. +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/10-choose-jenkins-agent.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/10-choose-jenkins-agent.adoc new file mode 100644 index 000000000..b8fef863e --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/10-choose-jenkins-agent.adoc @@ -0,0 +1,216 @@ +--- +title: "Choose Jenkins Agent" +keywords: "Kubernetes, {ks_product-en}, DevOps project, use DevOps, pipeline" +description: "Introduces how to select Jenkins Agent." +weight: 10 +--- + +The **agent** section specifies where the entire pipeline or a specific stage will be executed in the Jenkins environment, depending on where the `agent` section is placed. This section must be defined at the top level inside the **pipeline** block, but stage-level usage is optional. For more information, see link:https://www.jenkins.io/zh/doc/book/pipeline/syntax/#代理[Jenkins Documentation]. + +== Built-in podTemplate + +podTemplate is a Pod template used to create Agents. You can define podTemplates to be used in the Kubernetes plugin. + +During the pipeline run, each Jenkins Agent Pod must have a container named **jnlp** to facilitate communication between the Jenkins Controller and the Jenkins Agent. Additionally, you can add containers in the podTemplate to meet personalized needs. You can use a custom Pod YAML to flexibly control the runtime environment and switch containers using the **container** command. The following is an example. + +[,json] +---- + +pipeline { + agent { + kubernetes { + //cloud 'kubernetes' + label 'mypod' + yaml """ +apiVersion: v1 +kind: Pod +spec: + containers: + - name: maven + image: maven:3.3.9-jdk-8-alpine + command: ['cat'] + tty: true +""" + } + } + stages { + stage('Run maven') { + steps { + container('maven') { + sh 'mvn -version' + } + } + } + } +} +---- + +In the current version, KubeSphere comes with 4 types of podTemplates: **base**, **nodejs**, **maven**, and **go**, and provides an isolated Docker environment in the Pod. + +You can use the built-in podTemplate by specifying the label of the Agent. For example, to use the nodejs podTemplate, specify the label as **nodejs** when creating the pipeline, as shown in the following example. + +[,json] +---- + +pipeline { + agent { + node { + label 'nodejs' + } + } + + stages { + stage('nodejs hello') { + steps { + container('nodejs') { + sh 'yarn -v' + sh 'node -v' + sh 'docker version' + sh 'docker images' + } + } + } + } +} +---- + +* podTemplate base ++ +-- +[%header,cols="1a,4a"] +|=== +|Name |Type/Version + +|Jenkins Agent Label +|base + +|Container Name +|base + +|Operating System +|centos-7 + +|Docker +|18.06.0 + +|Helm +|2.11.0 + +|Kubectl +|Stable version + +|Built-in Tools +|unzip, which, make, wget, zip, bzip2, git +|=== +-- + +* podTemplate nodejs ++ +-- +[%header,cols="1a,4a"] +|=== +|Name |Type/Version + +|Jenkins Agent Label +|nodejs + +|Container Name +|nodejs + +|Operating System +|centos-7 + +|Node +|9.11.2 + +|Yarn +|1.3.2 + +|Docker +|18.06.0 + +|Helm +|2.11.0 + +|Kubectl +|Stable version + +|Built-in Tools +|unzip, which, make, wget, zip, bzip2, git +|=== +-- + +* podTemplate maven ++ +-- +[%header,cols="1a,4a"] +|=== +|Name |Type/Version + +|Jenkins Agent Label +|maven + +|Container Name +|maven + +|Operating System +|centos-7 + +|Jdk +|openjdk-1.8.0 + +|Maven +|3.5.3 + +|Docker +|18.06.0 + +|Helm +|2.11.0 + +|Kubectl +|Stable version + +|Built-in Tools +|unzip, which, make, wget, zip, bzip2, git +|=== +-- + +* podTemplate go ++ +-- +[%header,cols="1a,4a"] +|=== +|Name |Type/Version + +|Jenkins Agent Label +|go + +|Container Name +|go + +|Operating System +|centos-7 + +|Go +|1.11 + +|GOPATH +|/home/jenkins/go + +|GOROOT +|/usr/local/go + +|Docker +|18.06.0 + +|Helm +|2.11.0 + +|Kubectl +|Stable version + +|Built-in Tools +|unzip, which, make, wget, zip, bzip2, git +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/11-customize-jenkins-agent.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/11-customize-jenkins-agent.adoc new file mode 100644 index 000000000..0110d303a --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/11-customize-jenkins-agent.adoc @@ -0,0 +1,81 @@ +--- +title: "Customize Jenkins Agent" +keywords: "Kubernetes, {ks_product-en}, DevOps project, use DevOps, pipeline" +description: "Introduces how to customize Jenkins Agent." +weight: 11 +--- + +To use a Jenkins Agent that runs a specific environment (e.g., JDK 11), you can customize the Jenkins Agent on KubeSphere. + +This document describes how to customize the Jenkins Agent on KubeSphere. + +== Prerequisites + +**DevOps** must have been installed and enabled. + +== Customize Jenkins Agent + +. Log in to the {ks_product-en} web console as the **admin** user. + +. Click **Cluster Management** and enter a cluster. + +. In the left navigation pane, select **Configuration** > **ConfigMaps**. + +. On the **ConfigMaps** page, enter **jenkins-casc-config** in the search box and press **Enter**. + +. Click **jenkins-casc-config** to enter its detail page, click **More**, and select **Edit YAML**. + +. In the dialog that appears, search for **data:jenkins_user.yaml:jenkins:clouds:kubernetes:templates** and enter the following code below it, then click **OK**. ++ +-- +[,yaml] +---- + +- name: "maven-jdk11" # Customize the name of the Jenkins Agent. + label: "maven jdk11" # Customize the label of the Jenkins Agent. If you want to specify multiple labels, separate them with spaces. + inheritFrom: "maven" # The name of the existing Pod template from which the custom Jenkins Agent inherits. + containers: + - name: "maven" # The container name specified in the existing Pod template from which the custom Jenkins Agent inherits. + image: "kubespheredev/builder-maven:v3.2.0jdk11" # This image is for testing purposes only. Please use your own image. +---- + +//note +[.admon.note,cols="a"] +|=== +|Note + +| +Ensure that the indentation in the YAML file is correct. + +|=== +-- + +. Wait for 1 to 2 minutes for the new configuration to reload automatically. + +. To use the customized Jenkins Agent, refer to the example Jenkinsfile below, specifying the label and container name corresponding to the customized Jenkins Agent when creating the pipeline. ++ +-- + +[,json] +---- +pipeline { + agent { + node { + label 'maven && jdk11' + } + } + stages { + stage('Print Maven and JDK version') { + steps { + container('maven') { + sh ''' + mvn -v + java -version + ''' + } + } + } + } +} +---- +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/_index.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/_index.adoc new file mode 100644 index 000000000..bbfca1577 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/_index.adoc @@ -0,0 +1,9 @@ +--- +title: "Pipelines" +keywords: "Kubernetes, {ks_product-en}, DevOps projects, Using DevOps, Pipelines" +description: "This section introduces how to use pipelines." +weight: 02 +layout: "second" +--- + +This section introduces how to use the pipeline feature. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/03-use-gitops-for-continous-deployment.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/03-use-gitops-for-continous-deployment.adoc new file mode 100644 index 000000000..f19cb33c4 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/03-use-gitops-for-continous-deployment.adoc @@ -0,0 +1,223 @@ +--- +title: "Use GitOps to Achieve Continuous Deployment of Applications" +keywords: "Kubernetes, {ks_product-en}, DevOps project, use DevOps" +description: "Introduces how to create continuous deployment to achieve application deployment." +weight: 03 +--- + +KubeSphere introduces a philosophy for implementing continuous deployment of cloud-native applications – GitOps. The core idea of GitOps is to have a Git repository where the declarative infrastructure and applications of the application system are stored and version-controlled. GitOps combined with Kubernetes can use an automated delivery pipeline to apply changes to any number of specified clusters, thus solving the consistency problem of cross-cloud deployment. + +This document walks you through the process of deploying an application using a continuous deployment. + +== Prerequisites + +* **DevOps** must have been installed and enabled. + +* A workspace, a DevOps project, and a user (e.g. **project-regular**) have been created, and the user has been invited to the DevOps project with the **operator** role. See link:../05-devops-settings/02-role-and-member-management[Role and Member Management]. + +== Import a Code Repository + +. Log in to the {ks_product-en} web console as the **project-regular** user. + +. Click **Workspace Management** and enter your DevOps project. + +. In the left navigation pane, click **Code Repositories**. + +. On the right side of the code repositories page, click **Add**. + +. In the **Import Code Repository** dialog, enter a code repository name, such as **open-podcasts**, and click **Select a code repository**. You can also set an alias and add a description for the code repository. + +. In the **Select Code Repository** dialog, click **Git**, enter the repository address in the **Code Repository URL** area, such as link:https://github.com/kubesphere-sigs/open-podcasts[], and click **OK**. ++ +-- +//note +[.admon.note,cols="a"] +|=== +|Note + +| +The repository imported here is a public repository, so no credentials are needed. If you are adding a private repository, you need to create credentials. For more information on how to add credentials, see link:../05-devops-settings/01-credential-management/[Credential Management]. + +|=== +-- + +== Create Continuous Deployment + +. In the left navigation pane, click **Continuous Deployments**. + +. On the right side of the **Continuous Deployments** page, click **Create**. + +. On the **Basic Information** tab, enter a continuous deployment name, such as **open-podcasts**. In the **Deployment Location** area, select the cluster and project for continuous deployment. Click **Next**. + +. On the **Code Repository Settings** tab, select the code repository created in the previous step, set the branch or tag of the code repository, and the path of the `Kustomization` manifest file. Click **Next**. ++ +-- +[%header, cols="1a,3a"] +|=== +|Parameter |Description + +|Revision +|The commit ID, branch, or tag of the Git repository. For example, **master**, **v1.2.0**, **0a1b2c3**, or **HEAD**. + +|Manifest File Path +|Set the path of the manifest file. For example, **config/default**. +|=== +-- + +. On the **Sync Settings** tab, in the **Sync Strategy** area, select **Auto Sync** or **Manual Sync** as needed. ++ +-- + +* **Auto Sync**: Automatically trigger application synchronization when a difference is detected between the manifest in the Git repository and the real-time state of the deployment resources, according to the sync options. The specific parameters are shown in the table below. ++ +==== +[%header, cols="1a,3a"] +|=== +|Parameter |Description + +|Prune resources +|If selected, resources that do not exist in Git will be deleted during automatic sync. If not selected, resources in the cluster will not be deleted when automatic sync is triggered. + +|Self-heal +|If selected, when there is a deviation between the defined state in Git and the deployed resources, the defined state in Git will be enforced. If not selected, automatic sync will not be triggered when changes are made to the deployed resources. + +|=== +==== + +* **Manual Sync**: Manually trigger application synchronization according to the sync options. +-- + +. In the **Sync Settings** area, set the sync options as needed. ++ +-- +[%header, cols="1a,3a"] +|=== +|Parameter |Description + +|Skip schema validation +|Skip **kubectl** validation. When executing **kubectl apply**, add the **--validate=false** flag. + +|Auto create project +|Automatically create a project for application resources if the project does not exist. + +|Prune last +|Clean up resources after all other resources have been deployed and are in a healthy state. + +|Apply out of sync only +|Only sync resources in the **out-of-sync** state. +|=== +-- + +. In the **Prune Propagation Policy** area, select the dependency cleanup policy as needed. ++ +-- +[%header, cols="1a,3a"] +|=== +|Parameter |Description + +|foreground +|Delete dependent resources first, then delete the main resource. + +|background +|Delete the main resource first, then delete the dependent resources. + +|orphan +|Delete the main resource, leaving the dependent resource as an orphan. +|=== +-- + +. In the **Replace Resource** area, select whether existing resources need to be replaced. ++ +-- +//note +[.admon.note,cols="a"] +|=== +|Note + +| +If checked, the **kubectl replace/create** command will be executed to sync resources. If unchecked, the **kubectl apply** command will be used to sync resources. +|=== +-- + +. Click **Create**. The created continuous deployment will be displayed in the list. + +== View the Created Continuous Deployment + +. On the **Continuous Deployments** page, view the created continuous deployment information. The parameters are shown in the table below. ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Name +|The name of the continuous deployment. + +|Health Status +|The health status of the continuous deployment, which includes: + +* **Healthy**: The resources are healthy. +* **Degraded**: The resources have been degraded. +* **Progressing**: The resources are being synchronized. This state is returned by default. +* **Suspended**: The resources have been paused and are waiting to be resumed. +* **Unknown**: The health status of the resources is unknown. +* **Missing**: The resources are missing. + +|Sync Status +|The sync status of the continuous deployment, which includes: + +* **Synced**: The resource sync has been completed. +* **Out of Sync**: The actual running status of the resources is inconsistent with the expected status. +* **Unknown**: The sync status of the resources is unknown. + +|Deployment Location +|The cluster and project where the resources are deployed. + +|Update Time +|The time when the resources are updated. +|=== +-- + +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the continuous deployment, and you can perform the following operations: ++ +-- +* **Edit Information**: Edit the alias and description of the continuous deployment. + +* **Edit YAML**: Edit the YAML file of the continuous deployment. + +* **Sync**: Trigger resource synchronization. + +* **Delete**: Delete the continuous deployment. + +//warning +[.admon.warning,cols="a"] +|=== +|Warning + +| +Deleting the continuous deployment will also delete the resources associated with it. Please proceed with caution. +|=== +-- + +. Click the created continuous deployment to enter the detail page and view the sync status and results. + +== Access the Created Application + +. Enter the project to which the continuous deployment belongs, and in the left navigation pane, click **Application Workloads** > **Services**. + +. On the **Services** page, find the deployed application and click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side, then select **Edit External Access**. + +. Select **NodePort** in the **Access Mode**, and click **OK**. + +. On the service list page, view the exposed port in the **External Access** column, and access the application through {Node IP}:{NodePort}. ++ +-- +//note +[.admon.note,cols="a"] +|=== +|Note + +| +Before accessing the service, please ensure that the port is open in the security group. +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/04-import-code-repositories.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/04-import-code-repositories.adoc new file mode 100644 index 000000000..639b7c3b1 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/04-import-code-repositories.adoc @@ -0,0 +1,96 @@ +--- +title: "Import Code Repositories" +keywords: "Kubernetes, {ks_product-en}, DevOps project, use DevOps" +description: "Introduces how to import code repositories." +weight: 04 +--- + +KubeSphere supports importing GitHub, GitLab, Bitbucket, or other Git-based code repositories, such as Gitee. Below is an example of how to import a GitHub repository. + +== Prerequisites + +* **DevOps** must have been installed and enabled. + +* A workspace, a DevOps project, and a user (e.g. **project-regular**) have been created, and the user has been invited to the DevOps project with the **operator** role. See link:../05-devops-settings/02-role-and-member-management[Role and Member Management]. + +== Steps + +. Log in to the {ks_product-en} web console as the **project-regular** user. + +. Click **Workspace Management** and enter your DevOps project. + +. In the left navigation pane, click **Code Repositories**. + +. On the right side of the page, click **Add**. + +. In the **Import Code Repository** dialog, enter a code repository name, and click **Select a code repository**. You can also set an alias and add a description for the code repository. ++ +-- +The table below lists the supported code repositories and parameter settings. The following steps use GitHub as an example. + +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|GitHub +|**Credential**: Select the credential for accessing the code repository. + +|GitLab +| +* **GitLab Server Address**: Select the GitLab server address, the default value is link:https://gitlab.com[]. +* **Project Group/Owner**: Enter the GitLab account. +* **Credential**: Select the credential for accessing the code repository. +* **Code Repository**: Select the code repository. + +|Bitbucket +| +* **Bitbucket Server Address**: Set the Bitbucket server address. +* **Credential**: Select the credential for accessing the code repository. + +|Git +| +* **Code Repository URL**: Enter the code repository address, such as link:https://gitee.com[]. +* **Credential**: Select the credential for accessing the code repository. +|=== + +//note +[.admon.note,cols="a"] +|=== +|Note + +| +For using GitLab private repositories, see link:../02-pipelines/04-gitlab-multibranch-pipeline/[Create a Multi-branch Pipeline with GitLab]. + +|=== +-- + +. In the **Credential** area, click **Create Credential**. In the **Create Credential** dialog that appears, set the following parameters and click **OK**. ++ +-- +* **Name**: Enter a credential name, such as **github-id**. +* **Type**: The values include **Username and password**, **SSH key**, **Access token**, and **kubeconfig**. In DevOps projects, it is recommended to use **Username and password**. +* **Username**: The default username here is **admin**. +* **Password/Token**: Enter your GitHub token. +* **Description**: Add a description. + +//note +[.admon.note,cols="a"] +|=== +|Note + +| + +For more information on how to add credentials, see link:../05-devops-settings/01-credential-management/[Credential Management]. +|=== +-- + +. In the **Credential** dropdown list, select the created credential and click **OK**. +. In the pop-up GitHub repository, select the code repository and click **OK**. + +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the code repository, and you can perform the following operations: ++ +-- +* **Edit**: Modify the alias and description of the code repository, and reselect the code repository. +* **Edit YAML**: Edit the YAML file of the code repository. +* **Delete**: Delete the code repository. +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/01-credential-management.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/01-credential-management.adoc new file mode 100644 index 000000000..242d0034f --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/01-credential-management.adoc @@ -0,0 +1,173 @@ +--- +title: "Credential Management" +keywords: "Kubernetes, {ks_product-en}, DevOps project, use DevOps" +description: "Introduces how to manage DevOps credentials." +weight: 01 +--- + +Credentials are objects that contain sensitive information, such as usernames and passwords, SSH keys, and tokens. When the DevOps pipeline runs, it interacts with objects in the external environment to perform a series of tasks, including pulling code, pushing and pulling images, and running scripts. During this process, corresponding credentials are required, and these credentials will not appear in plain text in the pipeline. + +DevOps project users with the necessary permissions can configure credentials for Jenkins pipelines. After users add or configure these credentials in the DevOps project, they can use these credentials in the DevOps project to interact with third-party applications. + +Currently, you can create the following types of credentials in a DevOps project: + +* **Username and password**: A username and password, which can be handled as separate components or as a colon-separated string (in the format **username:password**), such as GitHub and GitLab accounts. + +* **SSH key**: A username with a private key, an SSH public/private key pair. + +* **Access token**: A token with access permissions. + +* **kubeconfig**: Used to configure cross-cluster authentication. + +This document demonstrates how to create and manage credentials in a DevOps project. For more information on how to use credentials, see link:../../02-pipelines/02-create-a-pipeline-using-jenkinsfile/[Create a Pipeline Using a Jenkinsfile] and link:../../02-pipelines/01-create-a-pipeline-using-graphical-editing-panel/[Create a Pipeline Using Graphical Editing Panels]. + +== Prerequisites + +* **DevOps** must have been installed and enabled. + +* A workspace, a DevOps project, and a user (e.g. **project-regular**) have been created, and the user has been invited to the DevOps project with the **operator** role. See link:../02-role-and-member-management[Role and Member Management]. + +== Create Credentials + +. Log in to the {ks_product-en} web console as the **project-regular** user. + +. Click **Workspace Management** and enter your DevOps project. + +. In the left navigation pane, select **DevOps Project Settings > Credentials**. + +. On the **Credentials** page, click **Create**. + +. In the **Create Credential** dialog that appears, enter a credential name and select a credential type. Different credential types require different parameters to be set. Please refer to the following content for details. ++ +==== +* Create a username and password credential ++ +-- +Taking creating a GitHub user credential as an example, you need to set the following parameters: + +[%header,cols="1a,2a"] +|=== +|Parameter|Description + +|Name +|Set the credential name, such as **github-id**. + +|Type +|Select **Username and password**. + +|Username +|Enter your GitHub username. + +|Password/Token +|Enter your GitHub token. + +|Description +|An introduction to the credential. +|=== + +//note +[.admon.note,cols="a"] +|=== +|Note + +| +* Since August 2021, GitHub requires token-based authentication. Here you need to enter the token instead of the GitHub password. For information on how to generate a token, see link:https://docs.github.com/cn/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token[Create a Personal Access Token]. + +* If your account or password contains special characters such as **@** and **$**, errors may occur during pipeline runs due to unrecognized characters. In such cases, encode your account or password on a third-party website (e.g., link:https://www.urlencoder.org[urlencoder]) and then copy and paste the encoded result as your credential information. +|=== +-- + +* Create an SSH key credential ++ +-- + +[%header,cols="1a,2a"] +|=== +|Parameter|Description + +|Name +|Set the credential name. + +|Type +|Select **SSH key**. + +|Username +|Enter your username. + +|Private Key +|Enter your SSH key. + +|Passphrase +|Enter the passphrase. It is recommended to set this parameter for better account security. + +|Description +|An introduction to the credential. +|=== +-- + +* Create an access token credential ++ +-- + +[%header,cols="1a,2a"] +|=== +|Parameter|Description + +|Name +|Set the credential name. + +|Type +|Select **Access token**. + +|Token +|Enter your token. + +|Description +|An introduction to the credential. +|=== +-- + +* Create a kubeconfig credential ++ +-- +[%header,cols="1a,2a"] +|=== +|Parameter|Description + +|Name +|Set the credential name, such as **demo-kubeconfig**. + +|Type +|Select **kubeconfig**. + +|Content +|The system automatically obtains the kubeconfig file content of the current Kubernetes cluster and automatically fills in this field. You do not need to make any changes. However, when accessing other clusters, you may need to change the kubeconfig. + +|Description +|An introduction to the credential. +|=== + +//note +[.admon.note,cols="a"] +|=== +|Note + +| +The file used to configure cluster access is called a kubeconfig file. This is a generic way to reference the configuration file. For more information, see link:https://kubernetes.io/zh/docs/concepts/configuration/organize-cluster-access-kubeconfig/[Kubernetes Documentation]. +|=== +-- +==== + +== View and Manage Credentials + +. Click the created credential to enter its detail page and view the credential details and all events related to this credential. + +. Click **Edit** to modify the credential information, and click **Delete** to delete the credential. ++ +[.admon.note,cols="a"] +|=== +|Note + +| +When editing credentials, KubeSphere does not display the existing username or password information. If you enter a new username and password, the previous one will be overwritten. +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/02-role-and-member-management.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/02-role-and-member-management.adoc new file mode 100644 index 000000000..ee891a3e2 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/02-role-and-member-management.adoc @@ -0,0 +1,112 @@ +--- +title: "Role and Member Management" +keywords: "Kubernetes, {ks_product-en}, DevOps project, use DevOps" +description: "Introduces how to manage roles and members in a DevOps project." +weight: 02 +--- + +This document demonstrates how to manage roles and members in a DevOps project. + +Within the scope of a DevOps project, you can grant permissions for the following resources to roles: + +* DevOps project settings +* Pipelines +* Credentials +* Continuous deployments +* Code repositories +* Access control + +== Prerequisites + +* A DevOps project has been created, for example, **demo-devops**. + +* A user (e.g. **devops-admin**) with the **admin** role in the DevOps project. + +== Preset Roles + +In **DevOps Project Roles**, there are three preset roles as follows. Preset roles are automatically created when a DevOps project is created and cannot be edited or deleted. + +[%header,cols="1a,4a"] +|=== +|Preset Role |Description + +|viewer +|DevOps project viewer, view all resources in the DevOps project. + +|operator +|DevOps project regular member, manage DevOps credentials and pipelines, and view members and roles in the DevOps project. + +|admin +|DevOps project administrator, manage all resources in the DevOps project. +|=== + +== Create a DevOps Project Role + +. Log in to the {ks_product-en} web console as the **devops-admin** user. + +. Go to the **DevOps Projects** page and click a DevOps project (e.g. **demo-devops**). ++ +-- +//note +[.admon.note,cols="a"] +|=== +|Note + +| +This document uses the **devops-admin** account as an example. As long as the role granted to the account includes the **Role Management** permission in the DevOps project, this account can create DevOps project roles. + +|=== +-- + +. Select **DevOps Project Settings** > **DevOps Project Roles** and click **Create**. + +. Set the **Name**. In this example, a role named **pipeline-creator** will be created. Click **Edit Permissions** to continue. + +. On the **Pipeline** tab, select the permissions you want to grant to this role. For example, select **Pipeline Management** and **Pipeline Viewing** for this role. Click **OK** to complete the operation. ++ +-- +//note +[.admon.note,cols="a"] +|=== +|Note + +| +**Depends on** means the current authorization item depends on the listed authorization items. After checking the permission, the system will automatically select all dependent permissions. +|=== +-- + +. The newly created role will be displayed in the **DevOps Project Roles** list. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side to edit it. ++ +-- +//note +[.admon.note,cols="a"] +|=== +|Note + +| +The **pipeline-creator** role is only granted **Pipeline Management** and **Pipeline Viewing** permissions, which may not meet your actual needs. This example is for demonstration purposes only. Please create custom roles according to your actual needs. + +|=== +-- + +== Invite DevOps Project Members + +. In **DevOps Project Settings**, select **DevOps Project Members** and then click **Invite**. + +. Click image:/images/ks-qkcp/zh/icons/add-dark.svg[add,18,18] to invite an account to join this DevOps project and grant the **pipeline-creator** role to this account. ++ +-- +//note +[.admon.note,cols="a"] +|=== +|Note + +| +You must first invite the user to join the workspace where the DevOps project is located. + +|=== +-- + +. Click **OK** to add the user to this DevOps project. On the **DevOps Project Members** page, the newly invited member will be displayed. + +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the project member to modify the role of the member or remove the user from the DevOps project. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/03-add-cd-allowlist.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/03-add-cd-allowlist.adoc new file mode 100644 index 000000000..d370db11a --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/03-add-cd-allowlist.adoc @@ -0,0 +1,30 @@ +--- +title: "Add Continuous Deployment Whitelist" +keywords: "Kubernetes, {ks_product-en}, DevOps project, use DevOps" +description: "Introduces how to add a continuous deployment whitelist." +weight: 03 +--- + +KubeSphere supports restricting the code repositories and deployment locations for resource continuous deployment by setting a whitelist. + +This document introduces how to add a continuous deployment whitelist. + +== Prerequisites + +* **DevOps** must have been installed and enabled. + +* A workspace, a DevOps project, and a user (e.g. **project-regular**) have been created, and the user has been invited to the DevOps project with the **operator** role. See link:../02-role-and-member-management[Role and Member Management]. + +* You have link:../../04-import-code-repositories/[imported a code repository]. + +== Steps + +. Log in to the {ks_product-en} web console as the **project-regular** user. + +. Click **Workspace Management** and enter your DevOps project. + +. In the left navigation pane, select **DevOps Project Settings** > **Basic Information**. + +. In the **Continuous Deployment Allowlist** area, click **Edit Allowlist**. + +. In the **Edit Allowlist** dialog that appears, select the code repository, cluster, and project, and click **OK**. Click **Add** to add multiple code repositories and deployment locations. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/04-set-ci-node.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/04-set-ci-node.adoc new file mode 100644 index 000000000..692f677c4 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/04-set-ci-node.adoc @@ -0,0 +1,36 @@ +--- +title: "Set CI Nodes for Dependency Cache" +keywords: "Kubernetes, {ks_product-en}, DevOps project, use DevOps" +description: "Introduces how to set CI nodes for dependency cache." +weight: 04 +--- + +Building applications often requires pulling different dependencies. Issues such as long pulling times and unstable networks may occur during the pulling process, leading to build failures. To provide a more reliable and stable environment, you can configure nodes or node groups specifically for continuous integration (CI) and speed up the build process by using cache. + +This document demonstrates how to set CI nodes so that KubeSphere schedules pipeline tasks to these nodes. + +== Prerequisites + +You should have the **Cluster Management** permission on the {ks_product-en} platform. + +== Label CI Nodes + +. Log in to the {ks_product-en} web console with an account that has the **Cluster Management** permission. + +. Click **Cluster Management** and enter a cluster. + +. In the left navigation pane, select **Nodes** > **Cluster Nodes** to view the existing nodes in the current cluster. + +. Select a node from the list to run CI tasks. Click the node name to go to its detail page, and click **More** > **Edit Labels**. + +. In the dialog that appears, enter **ci** as the value after the key **node-role.kubernetes.io/worker**, and click **OK**. + +== Add Taints to CI Nodes + +Pipelines generally determine whether to schedule tasks to a node based on link:https://kubernetes.io/zh/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity[node affinity]. If you want to dedicate a node to CI tasks, i.e., not allow other workloads to be scheduled to that node, you can add link:https://kubernetes.io/zh/docs/concepts/scheduling-eviction/taint-and-toleration/[taints] to that node. + +. Click **More** > **Edit Taints**. + +. Click **Add**, enter the key **node.kubernetes.io/ci** without specifying a value. Select **Prevent scheduling**, **Prevent scheduling if possible**, or **Prevent scheduling and evict existing pods** as needed. + +. Click **OK**. KubeSphere will schedule tasks based on the taints you set. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/_index.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/_index.adoc new file mode 100644 index 000000000..06ea6b4d4 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/_index.adoc @@ -0,0 +1,9 @@ +--- +title: "DevOps Project Settings" +keywords: "Kubernetes, {ks_product-en}, DevOps project, use DevOps" +description: "Introduces how to manage DevOps project settings." +weight: 05 +layout: "second" +--- + +This section introduces how to manage DevOps project settings. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/_index.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/_index.adoc new file mode 100644 index 000000000..9ab8ffb62 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/_index.adoc @@ -0,0 +1,10 @@ +--- +title: "How to Use DevOps" +keywords: "Kubernetes, {ks_product-en}, DevOps Projects, Using DevOps" +description: "Learn how to use DevOps functionality." +weight: 03 +layout: "second" +--- + + +This section explains how to use DevOps functionality. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/04-how-to-integrate/01-sonarqube.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/04-how-to-integrate/01-sonarqube.adoc new file mode 100644 index 000000000..742386ea7 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/04-how-to-integrate/01-sonarqube.adoc @@ -0,0 +1,349 @@ +--- +title: "Integrate SonarQube into Pipelines" +keywords: "Kubernetes, {ks_product-en}, DevOps project" +description: "Introduction on how to integrate SonarQube into pipelines." +weight: 01 +--- + +link:https://www.sonarqube.org/[SonarQube] is a mainstream tool for continuous inspection of code quality, which can be used for static and dynamic analysis of code repositories. After SonarQube is integrated into pipelines, common code issues detected in running pipelines, such as bugs, will be displayed directly on the dashboard. + +This document demonstrates how to integrate SonarQube into pipelines. Before link:../../03-how-to-use/02-pipelines/02-create-a-pipeline-using-jenkinsfile/[creating a pipeline using a Jenkinsfile], please read this document. + +== Prerequisites + +**DevOps** must have been installed and enabled. + +== Install SonarQube Server + +To integrate SonarQube into your pipeline, you must first install the SonarQube server on your cluster nodes. + +. Install Helm to use it to install SonarQube. For example, run the following command to install Helm 3: ++ +-- +// Bash +[,bash] +---- +curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3|bash +---- + +View the Helm version. + +// Bash +[,bash] +---- +helm version + +version.BuildInfo{Version:"v3.4.1", GitCommit:"c4e74854886b2efe3321e185578e6db9be0a6e29", GitTreeState:"clean", GoVersion:"go1.14.11"} +---- + +//note +[.admon.note,cols="a"] +|=== +|Note + +| +For more information, see the link:https://helm.sh/docs/intro/install/[Helm Documentation]. +|=== +-- + +. Run the following command to install the SonarQube server. ++ +-- +// Bash +[,bash] +---- + +helm upgrade --install sonarqube sonarqube --repo https://charts.kubesphere.io/main -n \ +kubesphere-devops-system --create-namespace --set service.type=NodePort + +---- + +// Note +[.admon.note,cols="a"] +|=== +|Note + +| +Ensure that you use Helm 3 to install the SonarQube server. +|=== +-- + +== Get SonarQube Console Address + +. Run the following command to get the SonarQube NodePort. ++ +-- +// Bash +[,bash] +---- +export NODE_PORT=$(kubectl get --namespace kubesphere-devops-system -o jsonpath="{.spec.ports[0].nodePort}" services sonarqube-sonarqube) +export NODE_IP=$(kubectl get nodes --namespace kubesphere-devops-system -o jsonpath="{.items[0].status.addresses[0].address}") +echo http://$NODE_IP:$NODE_PORT +---- +-- + +. Expected output: (Your NodeIP and NodePort should be different) ++ +-- +// Bash +[,bash] +---- +http://10.77.1.201:31377 +---- +-- + +== Configure SonarQube Server + +=== Step 1: Access SonarQube Console + +. Run the following command to check the status of SonarQube. Note that you can only access the SonarQube console after SonarQube is running. ++ +-- +// Bash +[,bash] +---- +$ kubectl get pod -n kubesphere-devops-system +NAME READY STATUS RESTARTS AGE +devops-jenkins-68b8949bb-7zwg4 1/1 Running 0 84m +sonarqube-postgresql-0 1/1 Running 0 5m31s +sonarqube-sonarqube-bb595d88b-97594 1/1 Running 2 5m31s +---- +-- + +. Access the SonarQube console link:http://NodeIP:NodePort[] in your browser. + +. Click **Log in** in the upper-right corner and log in with the default account **admin/admin**. ++ +-- +//note +[.admon.note,cols="a"] +|=== +|Note + +| +Depending on where the instance is deployed, you may need to set the necessary port forwarding rules and allow the port in your security group to access SonarQube. +|=== +-- + +=== Step 2: Create SonarQube Admin Token + +. Click the letter **A** in the upper-right corner, then select **My Account** from the menu to go to the **Profile** page. ++ +image:/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-config-1.png[] + +. Click **Security** and enter a token name, for example, **kubesphere**. ++ +image:/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-config-2.png[] + +. Click **Generate** and copy this token. ++ +-- +image:/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-config-3.png[] + +//note +[.admon.note,cols="a"] +|=== +|Note + +| +As indicated, you cannot view this token again, so make sure you copy it successfully. +|=== +-- + +=== Step 3: Create Webhook Server + +. Run the following command to get the address of the SonarQube Webhook. ++ +-- +// Bash +[,bash] +---- +export NODE_PORT=$(kubectl get --namespace kubesphere-devops-system -o jsonpath="{.spec.ports[0].nodePort}" services devops-jenkins) +export NODE_IP=$(kubectl get nodes --namespace kubesphere-devops-system -o jsonpath="{.items[0].status.addresses[0].address}") +echo http://$NODE_IP:$NODE_PORT/sonarqube-webhook/ +---- +-- + +. Expected output: ++ +-- +// Bash +[,bash] +---- +http://10.77.1.201:30180/sonarqube-webhook/ +---- +-- + +. Click **Administration**, **Configuration**, and **Webhooks** to create a Webhook. ++ +image:/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-webhook-1.png[] + +. Click **Create**. ++ +image:/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-webhook-2.png[] + +. In the dialog box that appears, enter **Name** and **Jenkins Console URL** (i.e., the SonarQube Webhook address). Click **Create** to complete the operation. ++ +image:/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/webhook-page-info.png[] + +=== Step 4: Add SonarQube Server to Jenkins + +. Run the following command to get the address of Jenkins. ++ +-- +// Bash +[,bash] +---- +export NODE_PORT=$(kubectl get --namespace kubesphere-devops-system -o jsonpath="{.spec.ports[0].nodePort}" services devops-jenkins) +export NODE_IP=$(kubectl get nodes --namespace kubesphere-devops-system -o jsonpath="{.items[0].status.addresses[0].address}") +echo http://$NODE_IP:$NODE_PORT +---- + +You will get the following output: + +[,bash] +---- +http://10.77.1.201:30180 +---- +-- + +. Refer to link:../../03-how-to-use/02-pipelines/07-access-jenkins-console[Access Jenkins dashboard] for configuration. + +. Access Jenkins using the address link:http://NodeIP:30180[]. ++ +-- +The Jenkins dashboard is installed by default when DevOps is installed. Additionally, Jenkins is configured with KubeSphere LDAP, meaning you can log in to Jenkins directly using your KubeSphere account (e.g., `admin/P@88w0rd`). For more information on configuring Jenkins, see link:../../03-how-to-use/02-pipelines/07-jenkins-setting/[Jenkins System Settings]. + +//note +[.admon.note,cols="a"] +|=== +|Note + +| +Depending on where the instance is deployed, you may need to set the necessary port forwarding rules and allow port **30180** in your security group to access Jenkins. + +|=== +-- + +. Click **Manage Jenkins** in the left navigation pane. + +. Scroll down and click **Configure System**. + +. Search for **SonarQube servers** and click **Add SonarQube**. + +. Enter **Name** and **Server URL** (http://NodeIP:NodePort). Click **Add**, select **Jenkins**, and create credentials with the SonarQube admin token in the dialog box that appears (as shown in the second screenshot below). After creating the credentials, select them from the dropdown list next to **Server authentication token**. Click **Apply** to complete the operation. ++ +-- +//note +[.admon.note,cols="a"] +|=== +|Note + +| +If the **Add** button does not work, go to **Manage Jenkins** > **Manage Credentials** and click **Jenkins** under **Stores scoped to Jenkins**. Click **Global credentials (unrestricted)** and then click **Add Credentials** in the left navigation pane. Add credentials with the SonarQube admin token as shown in the second screenshot below. After adding the credentials, select them from the dropdown list next to **Server authentication token**. +|=== + +image:/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-jenkins-settings.png[,100%] + +image:/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/add-credentials.png[,100%] +-- + +=== Step 5: Add SonarQube Configuration to DevOps + +. Run the following command to edit the ConfigMap `devops-config`. ++ +[source,bash] +---- +kubectl -n kubesphere-devops-system edit cm devops-config +---- + +. Add the field `sonarQube` after the `devops` section and specify `host` and `token` under it. ++ +[source,yaml] +---- +devops: + host: http://devops-jenkins.kubesphere-devops-system + username: admin + maxConnections: 100 + namespace: kubesphere-devops-system + workerNamespace: kubesphere-devops-worker + +sonarQube: + host: http://10.77.1.201:31377 + token: 00ee4c512fc987d3ec3251fdd7493193cdd3b91d +---- + +. Save this file. + +=== Step 6: Add sonarqubeURL to {ks_product-en} Console + +You need to specify **sonarqubeURL** so that you can access SonarQube directly from the {ks_product-en} web console. + +. Run the following command: ++ +-- +// Bash +[,bash] +---- +kubectl edit cm -n kubesphere-system ks-console-config +---- +-- + +. Search for **data:client:enableKubeConfig** and add the **devops** field below it, specifying **sonarqubeURL**. ++ +-- +[,yaml] +---- +client: + enableKubeConfig: true + devops: # Add this field manually. + sonarqubeURL: http://10.77.1.201:31377 # SonarQube IP address. + +---- +-- + +. Save the file. + +=== Step 7: Restart Services + +Run the following commands to restart the services. + +// Bash +[,bash] +---- +kubectl -n kubesphere-devops-system rollout restart deploy devops-apiserver +---- + +// Bash +[,bash] +---- +kubectl -n kubesphere-system rollout restart deploy ks-console +---- + +== Create a SonarQube Token for the New Project + +Create a SonarQube token so that the pipeline can communicate with SonarQube when running. + +. On the SonarQube console, click **Create new project**. ++ +image:/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-create-project.png[,100%] + +. Enter a project key, for example, **java-demo**, and click **Set Up**. ++ +image:/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/jenkins-projet-key.png[,100%] + +. Enter a project name, for example, **java-sample**, and click **Generate**. ++ +image:/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/generate-a-token.png[,100%] + +. After creating the token, click **Continue**. ++ +image:/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/token-created.png[,100%] + +. Select **Maven** and copy the sequence number in the green box shown in the figure below. If you want to use it in the pipeline, you need to add this sequence number in link:../../03-how-to-use/05-devops-settings/01-credential-management/[credentials]. ++ +image:/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-example.png[,100%] + +== View Results in {ks_product-en} Console + +After link:../../03-how-to-use/02-pipelines/02-create-a-pipeline-using-jenkinsfile/[creating a pipeline using a Jenkinsfile] or link:../../03-how-to-use/02-pipelines/01-create-a-pipeline-using-graphical-editing-panel/[creating a pipeline using graphical editing panels], you can view the results of code quality analysis. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/04-how-to-integrate/02-harbor.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/04-how-to-integrate/02-harbor.adoc new file mode 100644 index 000000000..9f44e9832 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/04-how-to-integrate/02-harbor.adoc @@ -0,0 +1,183 @@ +--- +title: "Integrate Harbor into Pipelines" +keywords: "Kubernetes, {ks_product-en}, DevOps project" +description: "Introduction on how to integrate Harbor into pipelines." +weight: 02 +--- + +This document demonstrates how to integrate Harbor into KubeSphere pipelines. + +== Prerequisites + +* **DevOps** must have been installed and enabled. + +* A workspace, a DevOps project, and a user (e.g. **project-regular**) have been created, and the user has been invited to the DevOps project with the **operator** role. + +== Install Harbor + +Run the following command to install Harbor using Helm 3. + +[,bash] +---- +helm repo add harbor https://helm.goharbor.io + +# For a quick installation, you can expose Harbor through NodePort and disable TLS. +# Set externalURL to one of your node IPs and ensure Jenkins can access it. +helm install harbor-release harbor/harbor --set expose.type=nodePort,externalURL=http://$ip:30002,expose.tls.enabled=false +---- + +== Get Harbor Credentials + +. After installing Harbor, access **:30002** and log in to the web console using the default account and password (**admin/Harbor12345**). + +. Click **Projects** in the left navigation pane, then click **New Project**. + +. In the dialog box that appears, set the project name **ks-devops-harbor** and click **OK**. + +. Click the project you just created, then click **New Robot Account** under the **Robot Accounts** tab. + +. In the dialog box that appears, set the robot account name **robot-test** and **Expiration Time**. Then check all permissions under **Artifact** and **Repository**. Click **Finish**. + +. In the dialog box that appears, click **Export to file** to save the Harbor token. + +== Enable Insecure Registry + +Configure Docker to ignore the security of your Harbor repository. + +. Run the command **vim /etc/docker/daemon.json** to edit the **daemon.json** file on all your cluster nodes, add the following content, and save the changes. ++ +-- +[,json] +---- + "insecure-registries" : ["103.61.38.55:30002"] +---- + +//note +[.admon.note,cols="a"] +|=== +|Note + +| +* Replace **103.61.38.55:30002** with your own Harbor repository address. + +* For Linux, the path of the **daemon.json** file is **/etc/docker/daemon.json**; for Windows, the path is **C:\ProgramData\docker\config\daemon.json**. +|=== + +The file content should look like this: + +[source,json] +---- +{ + "log-opts": { + "max-size": "5m", + "max-file": "3" + }, + "exec-opts": ["native.cgroupdriver=systemd"], + "insecure-registries": ["103.61.38.55:30002"] +} +---- +-- + +. Run the following commands to restart Docker and apply the changes. ++ +-- +[,bash] +---- +sudo systemctl daemon-reload +sudo systemctl restart docker +---- +//note +[.admon.note,cols="a"] +|=== +|Note + +| +It is recommended to use this solution in an isolated test environment or a strictly controlled offline environment. For more information, see link:https://docs.docker.com/registry/insecure/#deploy-a-plain-http-registry[Deploy a plain HTTP registry]. + +After completing the above operations, you can use the images in your Harbor repository when deploying workloads in projects. You need to create a secret with the **Image registry information** type for your Harbor repository, then when adding a container for deploying workloads, click **Docker Hub**, select your Harbor repository, and enter the absolute path of the image to search for your image. +|=== +-- + +== Create Credentials + +. Log in to the {ks_product-en} web console as the **project-regular** user. +. Click **Workspace Management** and enter your DevOps project. +. On the **Credentials** page under **DevOps Project Settings**, create credentials for Harbor. +. On the **Create Credentials** page, set the name (`robot-test`), select **Username and password** for **Type**, enter the value of **name** from the Harbor token file you just exported for **Username**, and enter the value of **secret** from the Harbor token file for **Password/Token**. + +. Click **OK** to save. + +== Create a Pipeline + +. Go to the **Pipelines** page and click **Create**. + +. On the **Basic Information** tab, enter the name **demo-pipeline** and click **Next**. + +. Use the default values in **Advanced Settings** and click **Create**. + +== Edit Jenkinsfile + +. Click the pipeline to enter its detail page, then click **Edit Jenkinsfile**. + +. Copy and paste the following content into the Jenkinsfile. Note that you must replace **REGISTRY**, **HARBOR_NAMESPACE**, **APP_NAME**, and **HARBOR_CREDENTIAL** with actual values. ++ +-- +[,yaml] +---- + +pipeline { + agent { + node { + label 'maven' + } + } + + environment { + // Your Harbor repository address. + REGISTRY = '103.61.38.55:30002' + // Project name. + // Ensure your robot account has sufficient project access permissions. + HARBOR_NAMESPACE = 'ks-devops-harbor' + // Docker image name. + APP_NAME = 'docker-example' + // ‘robot-test’ is the credential ID you created on the KubeSphere web console. + HARBOR_CREDENTIAL = credentials('robot-test') + } + + stages { + stage('docker login') { + steps{ + container ('maven') { + // Replace the parameter after -u with the name in the Harbor token file, do not forget to add '' + sh '''echo $HARBOR_CREDENTIAL_PSW|docker login $REGISTRY -u 'robot$robot-test' --password-stdin''' + } + } + } + + stage('build & push') { + steps { + container ('maven') { + sh 'git clone https://github.com/kstaken/dockerfile-examples.git' + sh 'cd dockerfile-examples/rethinkdb && docker build -t $REGISTRY/$HARBOR_NAMESPACE/$APP_NAME:devops-test .' + sh 'docker push$REGISTRY/$HARBOR_NAMESPACE/$APP_NAME:devops-test' + } + } + } + } +} + +---- + +//note +[.admon.note,cols="a"] +|=== +|Note + +| +You can pass parameters to **docker login -u** through Jenkins credentials with environment variables. However, each Harbor robot account username contains a **$** character, which Jenkins converts to **$$** when used in environment variables (Harbor v2.2 and later allows custom robot suffixes to avoid such issues). link:https://number1.co.za/rancher-cannot-use-harbor-robot-account-imagepullbackoff-pull-access-denied/[Learn more]. +|=== +-- + +== Run the Pipeline + +After saving the Jenkinsfile, KubeSphere will automatically create all stages and steps on the graphical editing panel. Click **Run** to run the pipeline. If everything runs smoothly, Jenkins will push the image to your Harbor repository. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/04-how-to-integrate/_index.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/04-how-to-integrate/_index.adoc new file mode 100644 index 000000000..b3458d07f --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/04-how-to-integrate/_index.adoc @@ -0,0 +1,9 @@ +--- +title: "Tool Integration" +keywords: "Kubernetes, {ks_product-en}, DevOps project" +description: "Introduction on how to integrate third-party tools with pipelines." +weight: 04 +layout: "second" +--- + +This section introduces how to integrate third-party tools with pipelines. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/01-devops/_index.adoc b/content/en/docs/v4.1/11-use-extensions/01-devops/_index.adoc new file mode 100644 index 000000000..308776063 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/01-devops/_index.adoc @@ -0,0 +1,13 @@ +--- +title: "DevOps" +keywords: "Kubernetes, {ks_product-en}, DevOps" +description: "Managing and operating in DevOps projects, including running pipelines, creating credentials, and integrating tools." +weight: 01 +layout: "second" +--- + +DevOps supports deploying and managing CI/CD tasks and related workloads on Kubernetes clusters. When installing DevOps, Jenkins will be automatically deployed to support pipeline building through Jenkinsfile. Additionally, DevOps provides a graphical editing panel to visualize the entire process, presenting the running status of the pipeline at each stage intuitively. + +After installing DevOps, **DevOps Projects** will appear in the left navigation pane of the workspace. + +This section explains how to manage DevOps projects and operate within DevOps projects, including running pipelines, creating credentials, and integrating tools. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/01-create-an-app-template.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/01-create-an-app-template.adoc new file mode 100644 index 000000000..54098c094 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/01-create-an-app-template.adoc @@ -0,0 +1,59 @@ +--- +title: "Create Application Templates" +keywords: "Kubernetes, {ks_product-en}, workspace, application template, create application template" +description: "Describes how to create an application template." +weight: 01 +--- + +:ks_permission: **Application/Application Version/Application Instance Create** +:ks_navigation: **App Management > App Templates** + +This section describes how to create an application template. + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +* Already have a Helm Chart package in .tar.gz or .tgz format, or an application's yaml file. You can link:https://kubesphere.io/files/application-templates/nginx-0.1.0.tgz[download the Nginx Helm Chart] for testing. For more information, see link:https://helm.sh/docs/topics/charts/[Helm Documentation]. + + +== Steps + +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +. In the **Create App** dialog, click **Upload Helm Chart** and select the Helm Chart package in .tar.gz or .tgz format stored locally. ++ +Alternatively, click **Create yaml application**, enter the application name and version number, and create the application using the yaml file. ++ +-- +//note +[.admon.note,cols="a"] +|=== +|Note + +| +Click image:/images/ks-qkcp/zh/icons/upload-dark-white.svg[upload-dark,18,18] to upload the yaml file from your local machine. + +Click image:/images/ks-qkcp/zh/icons/download-dark-white.svg[download-dark,18,18] to download the yaml file to your local machine. +|=== +-- + +. Click **OK**. ++ +-- +The application template will be displayed in the app template list after creation. +-- diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/02-view-an-app-template-list.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/02-view-an-app-template-list.adoc new file mode 100644 index 000000000..20d9d5025 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/02-view-an-app-template-list.adoc @@ -0,0 +1,60 @@ +--- +title: "View Application Template List" +keywords: "Kubernetes, {ks_product-en}, workspace, application template, view application template list" +description: "Describes how to view the application template list." +weight: 02 +--- + +:ks_permission: **Application/Application Version/Application Instance View** +:ks_navigation: **App Management > App Templates** + +This section describes how to view the application template list. + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + + +== Steps + +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] ++ +==== +* The application template list provides the following information: ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-appTemplateName.adoc[] + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-status_v4.adoc[] + +|Workspace +|The workspace to which the application template belongs. + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-latestVersion_v4.adoc[] + +|Application Template +|The type of the application template, such as **helm application** or **yaml application**. + +|Update Time +|The update time of the application template. +|=== +-- + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-searchForAppTemplates.adoc[] + +include::../../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/03-view-app-template-details.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/03-view-app-template-details.adoc new file mode 100644 index 000000000..dfa24d9b2 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/03-view-app-template-details.adoc @@ -0,0 +1,100 @@ +--- +title: "View Application Template Details" +keywords: "Kubernetes, {ks_product-en}, workspace, application template, view application template details" +description: "Describes how to view the application template details." +weight: 03 +--- + +:ks_permission: **Application/Application Version/Application Instance View** +:ks_navigation: **App Management > App Templates** + +This section describes how to view the application template details. + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + + +== Steps + +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-openDetailsPage.adoc[] + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewAttributes.adoc[] ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|App ID +|The name of the application. + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-status_v4.adoc[] + +|Category +|The category to which the application template belongs, which needs to be manually set. For more information, see link:../04-edit-app-template-information/[Edit Application Template Information]. + +|Type +|The type of the application template, such as **helm application** or **yaml application**. + +|Workspace +|The workspace to which the application template belongs. + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-creationTime.adoc[] +|=== +-- + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewVersions.adoc[] ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Status +|The current status of the application version. + +* **Not Submitted**: The application version has been uploaded to the workspace but has not been submitted for review. + +* **Submitted**: The application version has been submitted for review. + +* **Published**: The application version has been approved by the App Store administrator and can be listed in the App Store. + +* **Rejected**: The application version has not been approved by the App Store administrator, and the review was not passed. + +* **Unpublished**: The application version was published but has been canceled by the App Store administrator, or the application version was listed in the App Store but has been delisted by the App Store administrator. + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-version.adoc[] + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-developer.adoc[] + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-versionUpdateTime.adoc[] +|=== +-- + ++ +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-viewAppInformation.adoc[] + ++ + +// include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-viewAppReviewRecords.adoc[] + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewAppInstances.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/04-edit-app-template-information.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/04-edit-app-template-information.adoc new file mode 100644 index 000000000..ac1b1c4cf --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/04-edit-app-template-information.adoc @@ -0,0 +1,66 @@ +--- +title: "Edit Application Template Information" +keywords: "Kubernetes, {ks_product-en}, workspace, application template, edit application template information" +description: "Describes how to edit application template information." +weight: 04 +--- + +:ks_permission: **Application/Application Version/Application Instance Management** +:ks_navigation: **App Management > App Templates** + +This section describes how to edit application template information. + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + + +== Steps + +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-openDetailsPage.adoc[] + ++ + +. Click **Edit** in the top-left corner of the details page. + +. Set the parameters for the application template in the **Edit Information** dialog, then click **OK**. ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Alias +|The alias of the application. The alias can only contain Chinese characters, letters, numbers, and hyphens (-), and cannot start or end with a hyphen (-). The maximum length is 63 characters. + +|Description +|The description of the application. The description can contain any characters, with a maximum length of 120 characters. + +|Icon +|The icon of the application. If the icon of the application template is not set, the system will use the first character of the application name in uppercase as the default icon. The icon format must be .png or .jpg, with a maximum size of 96 x 96 pixels and 20 KB. + +|App Category +|The functional category of the application. The application template will be automatically categorized under the selected category after being uploaded to the App Store. + +|Service Provider Website +|The website address of the service provider. Users who install the application from the App Store can contact the service provider for technical support. + +|App Screenshots +|The images of the application. A maximum of 6 screenshots can be uploaded, with each screenshot not exceeding 2 MB in size. + +|App Introduction +|The introduction information of the application. Supports entering text and images in markdown format. +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/05-install-an-app-by-using-an-app-template.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/05-install-an-app-by-using-an-app-template.adoc new file mode 100644 index 000000000..5dd8306ce --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/05-install-an-app-by-using-an-app-template.adoc @@ -0,0 +1,72 @@ +--- +title: "Install Applications Using Application Templates" +keywords: "Kubernetes, {ks_product-en}, workspace, application template, install application using application template" +description: "Describes how to install an application using an application template in a workspace." +weight: 05 +--- + +:ks_permission: **Application/Application Version/Application Instance Management** +:ks_navigation: **App Management > App Templates** + +This section describes how to install an application using an application template in a workspace. + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + + +== Steps + +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-openDetailsPage.adoc[] + ++ + +. In the **Versions** tab on the right side of the details page, click the desired application version, then click **Deployment**. + +. In the pop-up **Location** dialog, select the installation location for the application, then click **OK**. + +. In the **Basic Information** tab, set the basic information for the application, then click **Next**. ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Name +|The user-defined name of the application. The name can only contain lowercase letters, numbers, and hyphens (-), must start with a lowercase letter and end with a lowercase letter or number, and can be up to 32 characters long. + +|Version +|The version of the application to be installed. + +|Description +|The description of the application. The description can contain any characters, with a maximum length of 256 characters. + +|Location +|The cluster and project to which the application belongs. The workspace to which the application belongs is the workspace to which the application template belongs by default. +|=== +-- + +. In the **App Settings** tab, modify the application's parameter settings as needed, then click **Install**. ++ +-- +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +The application template functionality is based on Helm Chart. The parameter settings in the **App Settings** tab should comply with the Values file specification of Helm Chart . For more information, see link:https://helm.sh/docs/chart_template_guide/values_files/[Helm Documentation]. + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + +After the application is installed, you can view the installed application in the target project. +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/06-upload-an-app-version.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/06-upload-an-app-version.adoc new file mode 100644 index 000000000..908ed5ddd --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/06-upload-an-app-version.adoc @@ -0,0 +1,42 @@ +--- +title: "Upload an Application Version" +keywords: "Kubernetes, {ks_product-en}, workspace, application template, upload application version" +description: "Describes how to upload an application version after creating an application template." +weight: 06 +--- + +:ks_permission: **Application/Application Version/Application Instance Management** +:ks_navigation: **App Management > App Templates** + +This section describes how to upload an application version after creating an application template. + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +* Already have a Helm Chart package in .tar.gz or .tgz format. For more information, see link:https://helm.sh/docs/topics/charts/[Helm Documentation]. + + +== Steps + +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-openDetailsPage.adoc[] + +. In the **Versions** tab on the right side of the details page, click **Upload Version**. + +. In the pop-up dialog, click **Upload Helm Chart**, select the Helm Chart package in .tar.gz or .tgz format stored locally, then click **OK**. ++ +-- +The new version will be displayed in the **Versions** tab of the details page after uploading. +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/08-delete-an-app-version.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/08-delete-an-app-version.adoc new file mode 100644 index 000000000..eb4cf83f4 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/08-delete-an-app-version.adoc @@ -0,0 +1,45 @@ +--- +title: "Delete Application Versions" +keywords: "Kubernetes, {ks_product-en}, workspace, application template, delete application version" +description: "Describes how to delete an application version in an application template." +weight: 08 +--- + +:ks_permission: **Application/Application Version/Application Instance Deletion** +:ks_navigation: **App Management > App Templates** + +This section describes how to delete an application version in an application template. + +// Warning +include::../../../../../../_ks_components-en/admonitions/warning.adoc[] + +The application version cannot be recovered after deletion, so please proceed with caution. + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +* If the application version you want to delete has been listed in the App Store, you need to contact the App Store administrator to delist the application version. + + +== Steps + +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-openDetailsPage.adoc[] + ++ + +. In the **Versions** tab on the right side of the details page, click the application version you want to delete, click **Delete**, and click **OK** in the pop-up dialog. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/09-download-a-helm-chart-package.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/09-download-a-helm-chart-package.adoc new file mode 100644 index 000000000..742d2af2e --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/09-download-a-helm-chart-package.adoc @@ -0,0 +1,39 @@ +--- +title: "Download the Helm Chart package" +keywords: "Kubernetes, {ks_product-en}, workspace, application template, download Helm Chart package" +description: "Describes how to download the Helm Chart package of an application version." +weight: 09 +--- + +:ks_permission: **Application/Application Version/Application Instance View** +:ks_navigation: **App Management > App Templates** + +This section describes how to download the Helm Chart package of an application version. + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +== Steps + +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-openDetailsPage.adoc[] + ++ + +. In the **Versions** tab on the right side of the details page, click the desired application version, then click **Download**. ++ +-- +The Helm Chart package of the application version will be downloaded to your local machine via the browser. +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/10-release-an-app-version-to-the-app-store.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/10-release-an-app-version-to-the-app-store.adoc new file mode 100644 index 000000000..1846f35ab --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/10-release-an-app-version-to-the-app-store.adoc @@ -0,0 +1,49 @@ +--- +title: "Release an Application Version to App Store" +keywords: "Kubernetes, {ks_product-en}, workspace, application template, release application version to app store" +description: "Describes how to release an application version to the App Store." +weight: 10 +--- + +:ks_permission: **Application/Application Version/Application Instance Management** +:ks_navigation: **App Management > App Templates** + +This section describes how to release an application version to the App Store. + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + + +== Steps + +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-openDetailsPage.adoc[] + ++ + +. In the **Versions** tab on the right side of the details page, click the application version you want to release, then click **Submit for Review**. + +. After the App Store administrator approves and lists it, click **App Store** in the top-left corner of the page, and you can view the listed application version in the App Store. ++ +-- +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +* After approval, the status of the application version will change to **Published**, indicating that it can be listed by the App Store administrator. After listing, all project members can install the application version into their projects from the App Store. + +* For more information on application review and listing, see link:../../../03-app-store-management/[App Store Management]. + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/11-delete-an-app-template.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/11-delete-an-app-template.adoc new file mode 100644 index 000000000..61cc5fa71 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/11-delete-an-app-template.adoc @@ -0,0 +1,42 @@ +--- +title: "Delete Application Templates" +keywords: "Kubernetes, {ks_product-en}, workspace, application template, delete application template" +description: "Describes how to delete an application template." +weight: 11 +--- + +:ks_permission: **Application/Application Version/Application Instance Deletion** +:ks_navigation: **App Management > App Templates** + +This section describes how to delete an application template. + +// Warning +include::../../../../../../_ks_components-en/admonitions/warning.adoc[] + +The application template cannot be recovered after deletion, so please proceed with caution. + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +// * All application versions in the application template have been deleted. For more information, see link:../08-delete-an-app-version/[Delete Application Versions]. + +== Steps + +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the application template you want to delete, then select **Delete** from the dropdown list. + +. In the **Delete App Template** dialog, enter the name of the application template, then click **OK**. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/_index.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/_index.adoc new file mode 100644 index 000000000..26f86c4c8 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/01-app-templates/_index.adoc @@ -0,0 +1,11 @@ +--- +title: "App Templates" +keywords: "Kubernetes, {ks_product-en}, workspace, application management, application template" +description: "Introduces how to manage application templates." +weight: 01 +layout: "second" +--- + +This section introduces how to manage application templates in a workspace. + +Each application template can contain one or more application versions defined by Helm Charts. You can upload Helm Charts as application templates to the workspace, thereby installing applications using the application template in all projects of the workspace. You can also further upload the application template to the App Store, thereby installing applications in all projects of KubeSphere. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/_index.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/_index.adoc new file mode 100644 index 000000000..fc31716ce --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/02-app-management/_index.adoc @@ -0,0 +1,15 @@ +--- +title: "Application Management" +keywords: "Kubernetes, {ks_product-en}, workspace, application management, application template" +description: "Introduces how to manage application templates through a workspace." +weight: 02 +layout: "second" +--- + +In KubeSphere, an application refers to a business program composed of one or more workloads, services, Ingresses, etc. Application templates in KubeSphere is based on Helm, defining the application's orchestration through Helm Chart. + +You can create an application template in a workspace that contains one or more application versions (each version defined by a Helm Chart), thereby installing the applications defined in the application template in the projects of the workspace. + +For more information about application repositories in a workspace, see link:../../../08-workspace-management/05-app-management/02-app-repositories/[App Repositories]. + +For more information about Helm, see link:https://helm.sh/docs/[Helm Documentation]. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/01-view-an-app-template-list.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/01-view-an-app-template-list.adoc new file mode 100644 index 000000000..3b410b43f --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/01-view-an-app-template-list.adoc @@ -0,0 +1,64 @@ +--- +title: "View Application Template List" +keywords: "Kubernetes, {ks_product-en}, app store management, applications, view application template list" +description: "Describes how to view the application template list." +weight: 01 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **Apps** + +This section describes how to view the application template list in the App Store. + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the top-right corner of the page, then select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] ++ +==== +* The **Apps** page displays the application templates in the App Store and provides the following information: ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-appTemplateName.adoc[] + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-status_v4.adoc[] + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-workspace.adoc[] + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-latestVersion_v4.adoc[] + +// |Category +// |The category to which the application template belongs. Assigning the application template to a category helps with management. For more information, see link:../../02-app-categories/[Application Categories]. + +|App Templates +|The type of the application template, such as **helm application** or **yaml application**. + +|Update Time +|The update time of the application template. +|=== +-- + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-searchForAppTemplates.adoc[] + +include::../../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/02-view-app-template-details.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/02-view-app-template-details.adoc new file mode 100644 index 000000000..7e46b3aa9 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/02-view-app-template-details.adoc @@ -0,0 +1,101 @@ +--- +title: "View Application Template Details" +keywords: "Kubernetes, {ks_product-en}, app store management, applications, view application template details" +description: "Describes how to view the application template details." +weight: 02 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **Apps** + +This section describes how to view the application template details. + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the top-right corner of the page, then select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-openDetailsPage.adoc[] + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewAttributes.adoc[] ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|App ID +|The name of the application. + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-status_v4.adoc[] + +|Category +|The category to which the application template belongs. Assign the application template to a category to facilitate management. For more information, see link:../../02-app-categories/[App Categories]. + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-type.adoc[] + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-workspace.adoc[] + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-creationTime.adoc[] +|=== +-- + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewVersions.adoc[] ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Status +|The current status of the application version. + +* **Not Submitted**: The application version has been uploaded to the workspace but has not been submitted for review. + +* **Submitted**: The application version has been submitted for review. + +* **Published**: The application version has been approved by the App Store administrator and can be listed in the App Store. + +* **Rejected**: The application version has not been approved by the App Store administrator, and the review was not passed. + +* **Unpublished**: The application version was published but has been canceled by the App Store administrator, or the application version was listed in the App Store but has been delisted by the App Store administrator. + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-version.adoc[] + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-developer.adoc[] + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-versionUpdateTime.adoc[] +|=== +-- + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-viewAppInformation.adoc[] + ++ + +// include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-viewAppReviewRecords.adoc[] + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-viewAppInstances.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/04-edit-an-app-template.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/04-edit-an-app-template.adoc new file mode 100644 index 000000000..0c948b105 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/04-edit-an-app-template.adoc @@ -0,0 +1,61 @@ +--- +title: "Edit Application Templates" +description: "Describes how to edit application template information in the App Store." +weight: 04 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **Apps** + +This section describes how to edit information for application templates in the App Store. + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the top-right corner of the page, then select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the application template you want to edit, then select **Edit** from the dropdown list. + +. Set the parameters for the application template in the **Edit Information** dialog, then click **OK**. ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Alias +|The alias of the application. The alias can only contain Chinese characters, letters, numbers, and hyphens (-), and cannot start or end with a hyphen (-). The maximum length is 63 characters. + +|Description +|The description of the application. The description can contain any characters, with a maximum length of 120 characters. + +|Icon +|The icon of the application. If the icon of the application template is not set, the system will use the first character of the application name in uppercase as the default icon. The icon format must be .png or .jpg, with a maximum size of 96 x 96 pixels and 20 KB. + +|App Category +|The functional category of the application. The application template will be automatically categorized under the selected category after being uploaded to the App Store. + +|Service Provider Website +|The website address of the service provider. Users who install the application from the App Store can contact the service provider for technical support. + +|App Screenshots +|The introduction images of the application. A maximum of 6 screenshots can be uploaded, with each screenshot not exceeding 2 MB in size. + +|App Introduction +|The introduction information of the application. Supports entering text and images in markdown format. +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/06-publish-an-app-template.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/06-publish-an-app-template.adoc new file mode 100644 index 000000000..dff3b874b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/06-publish-an-app-template.adoc @@ -0,0 +1,44 @@ +--- +title: "Publish Application Templates" +description: "Describes how to publish an application template." +weight: 06 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **Apps** + +This section describes how to publish an application template. + +[.admon.attention,cols="a"] +|=== +|Note + +| +Before listing the application template, at least one of its application versions must be in the **Published** status. +|=== + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the top-right corner of the page, then select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-openDetailsPage.adoc[] + +. Click **Listing** in the top-left corner of the details page. ++ +After the application is successfully listed, you can view the application in the **App Store** in the top-left corner. All projects in KubeSphere can install this application. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/08-cancel-release-an-app-version.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/08-cancel-release-an-app-version.adoc new file mode 100644 index 000000000..35f9bd6fb --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/08-cancel-release-an-app-version.adoc @@ -0,0 +1,41 @@ +--- +title: "Unpublish an App Version" +description: "Describes how to unpublish an application version." +weight: 08 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **Apps** + +This section describes how to unpublish an application version. + +After an application template is listed, if an application version within it is unpublished, the version will be removed from the App Store. If all application versions in the application template are in the **Unpublished** status, the application template will be automatically delisted from the App Store. + +After an application version is unpublished, both the App Store administrator and workspace members can delete the application version. + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the top-right corner of the page, then select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-openDetailsPage.adoc[] + ++ + +. In the **Versions** tab on the right side of the details page, click the application version you want to operate on, click **Unpublish**, and click **OK** in the pop-up dialog. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/09-delete-an-app-version.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/09-delete-an-app-version.adoc new file mode 100644 index 000000000..81de4cd86 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/09-delete-an-app-version.adoc @@ -0,0 +1,35 @@ +--- +title: "Delete an App Version" +description: "Describes how to delete an app version." +weight: 09 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **Apps** + +This section describes how to delete an app version in the App Store. + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the upper-right corner and select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-openDetailsPage.adoc[] + ++ + +. In the **Versions** tab on the right side of the details page, click the application version you want to delete, click **Delete**, and click **OK** in the pop-up dialog. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/10-suspend-an-app-template.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/10-suspend-an-app-template.adoc new file mode 100644 index 000000000..3768e9325 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/10-suspend-an-app-template.adoc @@ -0,0 +1,38 @@ +--- +title: "Remove App Templates" +keywords: "Kubernetes, {ks_product-en}, App Store Management, Apps, Remove App Template" +description: "Describes how to remove an app template." +weight: 10 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **Apps** + +This section describes how to remove an app template from the App Store. + +After an app template is removed, the app template and all its app versions will be removed from the App Store. Additionally, App Store administrators and workspace members can delete the entire app template or a specific app version. + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the upper-right corner and select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-oper-openDetailsPage.adoc[] + ++ + +. In the details page, click **Removal** in the upper-left corner, then click **OK** in the pop-up dialog. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/12-delete-an-app-template.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/12-delete-an-app-template.adoc new file mode 100644 index 000000000..414ab6303 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/12-delete-an-app-template.adoc @@ -0,0 +1,31 @@ +--- +title: "Delete App Templates" +description: "Describes how to delete an app template." +weight: 12 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **Apps** + +This section describes how to delete an app template in the App Store. + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the upper-right corner and select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the app template you want to delete, then select **Delete** from the dropdown list. + +. In the **Delete App Template** dialog, enter the name of the app template, then click **OK**. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/_index.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/_index.adoc new file mode 100644 index 000000000..5d4e610d7 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/_index.adoc @@ -0,0 +1,9 @@ +--- +title: "Applications" +keywords: "Kubernetes, {ks_product-en}, platform management, app store management, applications" +description: "Describes how to manage applications in the App Store." +weight: 01 +layout: "second" +--- + +This section describes how to manage application templates in the App Store. You can view and edit application information, and list or delist applications. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/02-app-categories/01-manage-app-categories.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/02-app-categories/01-manage-app-categories.adoc new file mode 100644 index 000000000..d56862aec --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/02-app-categories/01-manage-app-categories.adoc @@ -0,0 +1,49 @@ +--- +title: "Manage App Categories" +keywords: "Kubernetes, {ks_product-en}, App Store Management, App Categories, Manage App Categories" +description: "Describes how to create, edit, and delete app categories." +weight: 01 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **App Categories** + +This section describes how to create, edit, and delete app categories. + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the upper-right corner and select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the **App Categories** page, create, edit, or delete app categories as needed. ++ +==== +* Click image:/images/ks-qkcp/zh/icons/add-light.svg[add,18,18] in the upper-right corner of the app category list, set the name and icon of the app category in the pop-up dialog, then click **OK** to create an app category. + +* Click image:/images/ks-qkcp/zh/icons/pen-light.svg[pen,18,18] on the right side of an existing app category to edit its name and icon. + +* Click image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18] on the right side of an existing app category, then click **OK** in the pop-up dialog to delete the app category. ++ +-- +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +Before deleting an app category, you need to assign the apps in the category to other categories or set them as **Uncategorized**. + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/02-app-categories/02-set-the-category-of-an-app.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/02-app-categories/02-set-the-category-of-an-app.adoc new file mode 100644 index 000000000..c21beef90 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/02-app-categories/02-set-the-category-of-an-app.adoc @@ -0,0 +1,34 @@ +--- +title: "Set App Category" +keywords: "Kubernetes, {ks_product-en}, App Store Management, App Categories, Set App Category" +description: "Describes how to set the category of an app." +weight: 02 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **App Categories** + +This section describes how to set the category of an app. + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the upper-right corner and select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. In the app template list, select the checkbox on the left side of the app template, then click **Change Category** above the list. + +. In the **Modify Category** dialog, set the category of the app, then click **OK**. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/02-app-categories/_index.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/02-app-categories/_index.adoc new file mode 100644 index 000000000..9bcace6aa --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/02-app-categories/_index.adoc @@ -0,0 +1,11 @@ +--- +title: "App Categories" +keywords: "Kubernetes, {ks_product-en}, Platform Management, App Store Management, App Categories" +description: "Describes how to manage app categories." +weight: 02 +layout: "second" +--- + +This section describes how to manage app categories. + +You can assign app templates to a category as needed for easier management. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/03-app-review/01-review-an-app-version.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/03-app-review/01-review-an-app-version.adoc new file mode 100644 index 000000000..ecbe19fd3 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/03-app-review/01-review-an-app-version.adoc @@ -0,0 +1,47 @@ +--- +title: "Review App Versions" +keywords: "Kubernetes, {ks_product-en}, App Store, App Review, Review App Version" +description: "Describes how to review app versions submitted to the App Store." +weight: 01 +--- + +:ks_navigation: **Application Review** +:ks_permission: **App Store Management** + +This section describes how to review app versions submitted to the App Store. + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +* An app version has been submitted to the App Store, and has not yet been reviewed. + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the upper-right corner and select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the **New** tab, click the name of the app version you need to review. + +. In the **App Details** page, review the app's information, then click **Reject** or **Approve** as needed. ++ +-- +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +* If you click **Reject**, you need to further input the reason in the **Rejection Reason** dialog, then click **OK**. + +* After the app version is approved, if you want to publish it in the App Store, the App Store administrator should also list it. + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/03-app-review/02-view-app-review-records.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/03-app-review/02-view-app-review-records.adoc new file mode 100644 index 000000000..cc5fe5b31 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/03-app-review/02-view-app-review-records.adoc @@ -0,0 +1,68 @@ +--- +title: "View Review Records of App Versions" +keywords: "Kubernetes, {ks_product-en}, App Store, App Review, View App Version Review Records" +description: "Describes how to view review records of app versions." +weight: 02 +--- + +:ks_navigation: **Application Review** +:ks_permission: **App Store Management** + +This section describes how to view review records of app versions. + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the upper-right corner and select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the **Application Review** page, click the **New**, **Completed**, or **All** tab to view the review records of app versions. ++ +==== +* The **Application Review** page provides the following information: ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Name +|The icon, name, and Helm Chart version of the app version. + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-workspace.adoc[] + +|Submitter +|The user who submitted the app version. + +|Status +|The current review status of the app version. + +* **Audit**: The app version has been submitted by a workspace member, but has not yet been reviewed by the App Store administrator. + +* **Published**: The App Store administrator has approved the app version. + +* **Rejected**: The App Store administrator has rejected the app version. + +include::../../../../../_custom-en/workspaceManagement/appTemplates/appTemplates-para-versionUpdateTime.adoc[] +|=== +-- + +* Click the search box at the top of the list to search for app versions by name. + +include::../../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/03-app-review/_index.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/03-app-review/_index.adoc new file mode 100644 index 000000000..02d936b66 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/03-app-review/_index.adoc @@ -0,0 +1,11 @@ +--- +title: "App Review" +keywords: "Kubernetes, {ks_product-en}, Platform Management, App Store Management, App Review" +description: "Describes how to review app versions submitted to the App Store." +weight: 03 +layout: "second" +--- + +This section describes how to review app templates submitted by workspace members. + +Workspace members can submit app templates to the App Store after creating them. Users with the **App Store Management** permission can review these app templates. Approved app templates can be listed in the App Store. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/04-app-repositories/01-add-an-app-repository.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/04-app-repositories/01-add-an-app-repository.adoc new file mode 100644 index 000000000..836cc1529 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/04-app-repositories/01-add-an-app-repository.adoc @@ -0,0 +1,42 @@ +--- +title: "Add an App Repository" +keywords: "Kubernetes, {ks_product-en}, Platform, App Repositories, Add App Repository" +description: "Describes how to add an app repository." +weight: 01 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **App Repositories** + +This section describes how to add an app repository to the {ks_product-en} platform. + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +* A Helm Chart repository has been created in advance. For information on how to create a Helm Chart repository, see the link:https://helm.sh/docs/topics/chart_repository/[Helm Documentation]. + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the upper-right corner and select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. Click **Add** on the page. + +. In the **Add App Repository** dialog, set the parameters for the app repository, then click **OK**. ++ +-- +include::../../../../../_custom-en/workspaceManagement/appRepositories/appRepositories-para-createAppRepository.adoc[] + +The app repository will be displayed in the app repository list after it is created. +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/04-app-repositories/02-view-an-app-repository-list.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/04-app-repositories/02-view-an-app-repository-list.adoc new file mode 100644 index 000000000..f3d9bc5cb --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/04-app-repositories/02-view-an-app-repository-list.adoc @@ -0,0 +1,63 @@ +--- +title: "View App Repository List" +keywords: "Kubernetes, {ks_product-en}, Workspace, App Repositories, View App Repository List" +description: "Describes how to view the app repository list." +weight: 02 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **App Repositories** + +This section describes how to view the app repository list. + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the upper-right corner and select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] ++ +==== +* The app repository list provides the following information: ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Name +|The name and description of the app repository. + +|Status +|The current status of the app repository. + +* **Successful**: The app repository has been added and synchronized successfully. + +* **Syncing**: The app repository is currently being synchronized with the Helm Chart repository. + +* **Out-sync**: The app repository is not synchronized with the Helm Chart repository when the sync interval is set to 0. + +* **Failed**: The app repository failed to synchronize with the Helm Chart repository. + +|URL +|The URL of the Helm Chart repository. + +|=== +-- + +* Click the search box at the top of the list to search for app repositories by name. + +include::../../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/04-app-repositories/03-edit-an-app-repository.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/04-app-repositories/03-edit-an-app-repository.adoc new file mode 100644 index 000000000..56f5dd061 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/04-app-repositories/03-edit-an-app-repository.adoc @@ -0,0 +1,38 @@ +--- +title: "Edit App Repositories" +keywords: "Kubernetes, {ks_product-en}, Workspace, App Repositories, Edit App Repository" +description: "Describes how to edit an app repository." +weight: 03 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **App Repositories** + +This section describes how to edit an app repository. + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the upper-right corner and select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the app repository you want to edit, then select **Edit Information** from the dropdown list. + +. In the **Edit App Repository** dialog, set the parameters for the app repository, then click **OK**. ++ +-- +include::../../../../../_custom-en/workspaceManagement/appRepositories/appRepositories-para-createAppRepository.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/04-app-repositories/05-delete-an-app-repository.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/04-app-repositories/05-delete-an-app-repository.adoc new file mode 100644 index 000000000..9d92a7c14 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/04-app-repositories/05-delete-an-app-repository.adoc @@ -0,0 +1,41 @@ +--- +title: "Delete an App Repository" +keywords: "Kubernetes, {ks_product-en}, Workspace, App Repositories, Delete App Repository" +description: "Describes how to delete an app repository." +weight: 05 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **App Repositories** + +This section describes how to delete an app repository. + +// Warning +include::../../../../../../_ks_components-en/admonitions/warning.adoc[] + +After an app repository is deleted, users will not be able to install apps from the repository. Please proceed with caution. + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the upper-right corner and select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the app repository you want to delete, then select **Delete** from the dropdown list. + +. In the **Delete App Repository** dialog, enter the name of the app repository, then click **OK**. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/04-app-repositories/_index.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/04-app-repositories/_index.adoc new file mode 100644 index 000000000..ac81bdf37 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/04-app-repositories/_index.adoc @@ -0,0 +1,11 @@ +--- +title: "App Repositories" +keywords: "Kubernetes, {ks_product-en}, Workspace, App Management, App Repositories" +description: "Describes how to add and manage app repositories." +weight: 04 +layout: "second" +--- + +This section describes how to manage app repositories on the {ks_product-en} platform. + +Add Helm Chart repositories as app repositories to the {ks_product-en} platform, so that users can install apps from these repositories across all projects. For information on how to create a Helm Chart repository, see the link:https://helm.sh/docs/topics/chart_repository/[Helm Documentation]. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/01-view-an-app-list.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/01-view-an-app-list.adoc new file mode 100644 index 000000000..f3c77caa0 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/01-view-an-app-list.adoc @@ -0,0 +1,65 @@ +--- +title: "View App List" +description: "Describes how to view the list of deployed apps." +weight: 01 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **Deployment Management** + +This section describes how to view the list of deployed apps. + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the upper-right corner and select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] ++ +==== +* The app list provides the following information: ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Name +|The name of the app. + +include::../../../../../_custom-en/projectManagement/apps/apps-para-status_v4.adoc[] + +|App Type +|The type of the app template, such as **Helm App** or **YAML App**. + +|App Template +|The app template used to create the app. Only displayed for template-based apps. + +|Version +|The version number of the app. + +* For template-based apps, it displays the Helm Chart version. + +// * For custom apps, it displays the user-defined version number. + +|Update Time +|The update time of the app. +|=== +-- + +* Click the search box at the top of the list to search for apps by name. + +include::../../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/02-view-app-instance-details.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/02-view-app-instance-details.adoc new file mode 100644 index 000000000..9d037792d --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/02-view-app-instance-details.adoc @@ -0,0 +1,78 @@ +--- +title: "View App Details" +description: "Describes how to view app details." +weight: 02 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **Deployment Management** + +This section describes how to view the details of a deployed app. + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the upper-right corner and select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the **Deployment Management** page, click the name of an app to open its details page. + +. On the app details page, view the resource attributes of the app in the **Attributes** area on the left. ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Cluster +|The cluster to which the app belongs. + +|Project +|The project to which the app belongs. + +include::../../../../../_custom-en/projectManagement/apps/apps-para-status_v4.adoc[] + +|Application +|The app template used by the app. + +include::../../../../../_custom-en/projectManagement/apps/apps-para-details2.adoc[] +|=== +-- + ++ + +include::../../../../../_custom-en/projectManagement/apps/apps-oper-viewResourceStatus_v4.adoc[] + ++ + +. On the right side of the app details page, click **App Template** to view the information of the app template. ++ +-- +* Click **App Description** to view the introduction of the app template. + +* Click **Chart Files** to view the files in the Helm Chart package. On the right side of **Chart Files**, click the dropdown list to select the file you want to view. Click image:/images/ks-qkcp/zh/icons/download-dark-white.svg[download,18,18] to download the file to your local machine. +-- + +. On the right side of the app details page, click **App Settings** to view the settings information of the app. ++ +-- +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +The default settings of the app are saved in the **values.yaml** file in the Helm Chart package. The **App Settings** page displays the settings customized by the user during the app installation. + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/04-edit-an-app-information.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/04-edit-an-app-information.adoc new file mode 100644 index 000000000..e06e5486b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/04-edit-an-app-information.adoc @@ -0,0 +1,35 @@ +--- +title: "Edit App Information" +description: "Describes how to edit app information." +weight: 04 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **Deployment Management** + +This section describes how to edit the information of a deployed app. + +You can edit the alias and description of the app. KubeSphere does not support editing the name of a deployed app. + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the upper-right corner and select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the app you want to edit, then select **Edit Information** from the dropdown list. + +. In the **Edit Information** dialog, set the alias and description of the app, then click **OK**. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/06-delete-an-app-instance.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/06-delete-an-app-instance.adoc new file mode 100644 index 000000000..56aef0704 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/06-delete-an-app-instance.adoc @@ -0,0 +1,33 @@ +--- +title: "Delete App Instances" +description: "Describes how to delete a deployed app instance." +weight: 06 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **Deployment Management** + +This section describes how to delete a deployed app instance. + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the upper-right corner and select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the app you want to delete, then select **Delete** from the dropdown list. + +. In the **Delete App** dialog, enter the name of the app, then click **OK**. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/08-deploy-an-app-from-the-app-store.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/08-deploy-an-app-from-the-app-store.adoc new file mode 100644 index 000000000..4c45d995b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/08-deploy-an-app-from-the-app-store.adoc @@ -0,0 +1,64 @@ +--- +title: "Deploy App from App Store" +description: "Describes how to deploy an app from the App Store." +weight: 08 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **Deployment Management** + +This section describes how to deploy an app from the App Store on the App Store Management page. + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the upper-right corner and select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +. In the **Create App** dialog, click **From App Store**. + +. In the App Store, click the app template you want to use, then click **Deployment** in the upper-right corner. ++ +-- +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +If the **Deployment Notice** dialog pops up, please read the related content carefully, then click **Agree**. + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + +. In the pop-up **Location** dialog, select the installation location of the app, then click **OK**. + ++ + +include::../../../../../_custom-en/projectManagement/apps/apps-oper-installApp.adoc[] + ++ +-- +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +Apps in the App Store are provided by workspace members with relevant permissions or third parties. For more information about app parameters, please contact the relevant workspace members or the app provider. + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + +The app will be displayed in the app list after it is created. +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/10-deploy-an-app-using-an-app-template.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/10-deploy-an-app-using-an-app-template.adoc new file mode 100644 index 000000000..089ec19d0 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/10-deploy-an-app-using-an-app-template.adoc @@ -0,0 +1,65 @@ +--- +title: "Deploy App from App Templates" +keywords: "Kubernetes, {ks_product-en}, Project Management, Apps, Install App from App Template" +description: "Describes how to install an app from an app template." +weight: 10 +--- + +:ks_permission: **App Store Management** +:ks_navigation: **Deployment Management** + +This section describes how to deploy an app from an app template on the App Store Management page. + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + +* **KubeSphere App Store Management** should have been installed and enabled. + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the upper-right corner and select **App Store Management**. + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +. In the **Create App** dialog, click **From App Template**. + +. On the **App Template** page, click the **Current Workspace** dropdown list and select **Current Workspace** or an app repository. + +. Click the app template you want to use, then click **Install**. ++ +-- +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +App templates are created by workspace members with relevant permissions, and app repositories are created by App Store administrators. +For more information, see link:../../../02-app-management/01-app-templates/01-create-an-app-template/[Create App Templates] and link:../../../03-app-store-management/04-app-repositories/01-add-an-app-repository/[Add an App Repository]. + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + ++ + +include::../../../../../_custom-en/projectManagement/apps/apps-oper-installApp.adoc[] ++ +-- +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +For more information about app parameters, please contact the relevant workspace members or the app provider. + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + +The app will be displayed in the app list after it is created. +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/_index.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/_index.adoc new file mode 100644 index 000000000..32d05e0fa --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/05-app-deployment/_index.adoc @@ -0,0 +1,9 @@ +--- +title: "Deployment Management" +keywords: "Kubernetes, {ks_product-en}, Platform Management, Apps, App Management, App Deployment" +description: "Describes how to manage all deployed app instances and how to directly deploy apps to projects." +weight: 05 +layout: "second" +--- + +This section describes how to manage all deployed app instances on the {ks_product-en} platform and how to directly deploy apps to projects. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/_index.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/_index.adoc new file mode 100644 index 000000000..8b9def141 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/_index.adoc @@ -0,0 +1,15 @@ +--- +title: "App Store Management" +keywords: "Kubernetes, {ks_product-en}, platform management, app store management" +description: "Describes how to manage the App Store." +weight: 03 +layout: "second" +--- + +This section describes how to manage the App Store. + +The App Store provides application templates based on Helm Chart, and all project members of the {ks_product-en} platform can access the App Store. + +The App Store administrator can categorize, review, list, and delist application templates in the App Store, manage the platform's application repositories and all deployed application instances, and directly deploy applications to projects. + +After installing the "KubeSphere App Store Management" extension, click image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18] in the top-right corner of the page, click **App Store Management**, and enter the App Store management page. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/02-app-store/_index.adoc b/content/en/docs/v4.1/11-use-extensions/02-app-store/_index.adoc new file mode 100644 index 000000000..baab10d0f --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/02-app-store/_index.adoc @@ -0,0 +1,15 @@ +--- +title: "KubeSphere App Store Management" +weight: 02 +layout: "second" +--- + +This section introduces how to use the "KubeSphere App Store Management" extension. + +After installing the "KubeSphere App Store Management" extension, **App Templates** will appear under the **App Management** menu in the left navigation pane of the workspace, and **App Store Management** will appear in the extension access entry in the upper right corner of the page. + +By using this extension: + +- Workspace administrators can manage application templates, submit applications defined in the application templates to the App Store. After the App Store administrator approves and lists the application, it can be published to the App Store for all projects in KubeSphere to deploy the application. + +- App Store administrators can categorize, review, list, delist application templates in the App Store, manage the platform's application repositories and all deployed application instances, and directly deploy applications to projects. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/03-manually-compose-an-app.adoc b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/03-manually-compose-an-app.adoc new file mode 100644 index 000000000..086ba4694 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/03-manually-compose-an-app.adoc @@ -0,0 +1,60 @@ +--- +title: "Create Composed Apps" +keywords: "Kubernetes, {ks_product-en}, Project Management, Apps, Create Composed App" +description: "Describes how to create a composed app." +weight: 03 +--- + +:ks_permission: **Service Mesh Management** +:ks_navigation: **Service Mesh > Composed Apps** + +This section describes how to create a composed app. + +include::../../../../_custom-en/projectManagement/apps/apps-compose-description.adoc[] + +== Prerequisites + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + +* **KubeSphere Service Mesh** should have been installed and enabled. + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-clickCreate.adoc[] + +. On the **Basic Information** tab, set the basic information of the app, then click **Next**. ++ +-- +include::../../../../_custom-en/projectManagement/apps/apps-basic-para.adoc[] +-- + +. On the **Service Settings** tab, click **Create Service**, select **Stateful Service** or **Stateless Service** to create services for the app, then click **Next**. ++ +-- +include::../../../../_custom-en/clusterManagement/services/services-para-statelessStatefulExternal.adoc[] + +ifeval::["{file_output_type}" == "html"] +For parameter settings of **Stateful Service** and **Stateless Service**, see link:../../../../09-project-management/03-application-workloads/02-services/01-create-a-service/01-create-a-stateful-or-stateless-service/#_parameter_description[Create a Stateful or Stateless Service]. +endif::[] + +ifeval::["{file_output_type}" == "pdf"] +For parameter settings of **Stateful Service** and **Stateless Service**, see the "Create a Stateful or Stateless Service" section in the {ks_product-en} Project Management Guide. +endif::[] +-- + +. On the **Ingress Settings** tab, click **Add Routing Rule** to create routing rules for the app, then click **Create**. ++ +-- +include::../../../../_custom-en/clusterManagement/routes/routes-para-routingRules.adoc[] + +The app will be displayed on the **Composed Apps** page after it is created. +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/04-view-an-app-list.adoc b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/04-view-an-app-list.adoc new file mode 100644 index 000000000..12d6bfb64 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/04-view-an-app-list.adoc @@ -0,0 +1,59 @@ +--- +title: "View Composed App List" +keywords: "Kubernetes, {ks_product-en}, Project Management, Apps, View App List" +description: "Describes how to view the app list." +weight: 04 +--- + +:ks_permission: **Service Mesh View** +:ks_navigation: **Service Mesh > Composed Apps** + +This section describes how to view the composed app list. + +== Prerequisites + +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the **Composed Apps** page, view the app list. ++ +==== +* The app list provides the following information: ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Name +|The name of the app. + +include::../../../../_custom-en/projectManagement/apps/apps-para-status_v4.adoc[] + +|Version +|The version of the app. + +// * For template-based apps, it displays the Helm Chart version. + +* For composed apps, it displays the user-defined version number. + +|Creation Time +|The creation time of the app. +|=== +-- + +* Click the search box at the top of the list to search for apps by name. + +include::../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/05-view-composed-app-details.adoc b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/05-view-composed-app-details.adoc new file mode 100644 index 000000000..7bd21bb80 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/05-view-composed-app-details.adoc @@ -0,0 +1,118 @@ +--- +title: "View Composed App Details" +keywords: "Kubernetes, {ks_product-en}, project management, application, view composed app details" +description: "Learn how to view composed app details." +weight: 05 +--- + +:ks_permission: ** Service Mesh View** +:ks_navigation: **Service Mesh > Composed Apps** + + +This section describes how to view composed app details. + + +== Prerequisites + +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + +== Steps +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the **Composed Apps** page, click the name of an app to open its details page. + +. On the app details page, view the app's resource attributes in the **Attributes** area on the left. ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +include::../../../../_custom-en/projectManagement/apps/apps-para-details1.adoc[] + +include::../../../../_custom-en/projectManagement/apps/apps-para-details2.adoc[] + +|Application Governance +|Whether application governance is enabled for the app. After enabling app governance, you can use traffic monitoring, grayscale release, and tracing features. +|=== +-- + ++ + +include::../../../../_custom-en/projectManagement/apps/apps-oper-viewResourceStatus.adoc[] + ++ + +. On the app details page, click **Traffic Monitoring** on the right to view the app's traffic information. ++ +-- +Click a service in the graphic panel, and on the right side of the page, view the service's traffic monitoring information, related pods, and perform **Traffic Management**. + +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Traffic Policies > Load Balancing +|Load Balancing Algorithm + +* **Round Robin**: Distributes client requests to backends in rotation. +* **Least Request**: Randomly selects two healthy backends and sends client requests to the one with fewer connections. +* **Random**: Sends client requests to a backend randomly selected from all healthy backends. +* **Pass Through**: Directly forwards the connection to the original IP address of the caller's request without any form of load balancing. It is for advanced configurations, please use with caution. + +|Traffic Policies > Session Persistence +| +Maps requests to backend servers based on specific identifiers (e.g., HTTP header, Cookie, query parameter) to achieve balanced distribution and load sharing. + +* **Hash based on HTTP header **: Hashes based on a specific HTTP header. +* **Hash based on HTTP cookie**: Hashes based on an HTTP cookie. +* **Hash based on HTTP Query Parameter Name**: Hashes based on a specific HTTP query parameter. +* **Hash based on Source IP Address**: Hashes based on the source IP address. Applicable to TCP and HTTP connections. +* **Ring/Modulo Hash**: The ring/modulo hash load balancer uses a consistent hashing algorithm to hash backend hosts. +* **Maglev Hash**: The Maglev hash load balancer uses a consistent hashing algorithm to hash backend hosts. + +For more information, see link:https://istio.io/v1.16/docs/reference/config/networking/destination-rule/#LoadBalancerSettings-ConsistentHashLB[this document]. + +|Connection Pool +|Creates a fixed number of connection objects for the application and stores them in a connection pool for reuse. A connection object is retrieved from the connection pool for each request and returned to the pool after use. + +After enabling, set the maximum number of connections, maximum requests per connection, maximum retries, connection timeout, maximum request quantity, and maximum pending request quantity. + +|Circuit Breaker +|If a service cannot be accessed and the specified criteria are met, the ciruit breaker marks the service as unavailable and returns error response to clients directly for a specified period of time. + +After enabling, set the number of consecutive 5XX errors, inspection interval (seconds), maximum ejection ratio (%), and base ejection time (seconds). +|=== + +-- + +. On the app details page, click **Grayscale Release** on the right to view the app's grayscale release information. For more information, see link:../../02-grayscale-release/[Grayscale Release]. ++ +-- +// Note +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +To use the **Traffic Monitoring** and **Grayscale Release** features, you need to enable application governance when creating a composed app. For more information, see link:../03-manually-compose-an-app/[Create Composed Apps]. + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + +. On the app details page, click **Tracing** on the right to view the app's request tracing information. ++ +-- +// Note +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +* To use the **Tracing** feature, you need to enable application governance when creating a composed app. For more information, see link:../03-manually-compose-an-app/[Create Composed Apps]. + +* Additionally, you need to enable the project gateway and enable the **Tracing** feature for the project gateway. For more information, see link:../../../12-gateway/01-project-gateway/01-enable-a-project-gateway[Enable Project Gateway]. + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/06-edit-app-information.adoc b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/06-edit-app-information.adoc new file mode 100644 index 000000000..758fd6abc --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/06-edit-app-information.adoc @@ -0,0 +1,32 @@ +--- +title: "Edit Composed App Information" +keywords: "Kubernetes, {ks_product-en}, project management, application workloads, application, edit app information" +description: "Learn how to edit app information." +weight: 06 +--- + +:ks_permission: ** Service Mesh Management** +:ks_navigation: **Service Mesh > Composed Apps** + + +This section describes how to edit composed app information. + +You can edit the alias and description of an app. KubeSphere does not support editing the name of an already created app. + + +== Prerequisites + +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/projectManagement/apps/apps-oper-editAppInformation.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/07-add-a-service.adoc b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/07-add-a-service.adoc new file mode 100644 index 000000000..e1c5f625e --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/07-add-a-service.adoc @@ -0,0 +1,65 @@ +--- +title: "Add Services to Composed Apps" +keywords: "Kubernetes, {ks_product-en}, project management, application workloads, application, edit app settings" +description: "Learn how to add services to a composed app." +weight: 07 +--- + +:ks_permission: ** Service Mesh Management** +:ks_navigation: **Service Mesh > Composed Apps** + + +This section describes how to add stateful or stateless services to a composed app. + + +== Prerequisites + +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the **Composed Apps** page, click the name of an app to open its details page. + +. On the app details page, select **More > Add Service** in the top-left corner. + +. In the **Create Service** dialog, select **Stateful Service** or **Stateless Service** as needed. ++ +-- +// Note +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +include::../../../../_custom-en/clusterManagement/services/services-para-statelessStatefulExternal.adoc[] + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + ++ + +include::../../../../_custom-en/projectManagement/services/services-oper-setBasicInformation.adoc[] + ++ + +. On the **Pod Settings** tab, set the number of replicas, containers, update strategy, security context, scheduling rules, and metadata for the pods managed by the service backend workload, then click **Next**. + ++ + +include::../../../../_custom-en/projectManagement/services/services-oper-setStorageAdvanced.adoc[] ++ +-- +ifeval::["{file_output_type}" == "html"] +For parameter settings of **Stateful Service** and **Stateless Service**, see link:../../../../09-project-management/03-application-workloads/02-services/01-create-a-service/01-create-a-stateful-or-stateless-service/#_parameter_description[Create a Stateful or Stateless Service]. +endif::[] + +ifeval::["{file_output_type}" == "pdf"] +For parameter settings of **Stateful Service** and **Stateless Service**, see the "Create a Stateful or Stateless Service" section in the {ks_product-en} Project Management Guide. +endif::[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/08-add-an-app-route.adoc b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/08-add-an-app-route.adoc new file mode 100644 index 000000000..ada8463e0 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/08-add-an-app-route.adoc @@ -0,0 +1,36 @@ +--- +title: "Add Ingresses to Composed Apps" +keywords: "Kubernetes, {ks_product-en}, project management, application workloads, application, edit app settings" +description: "Learn how to add an Ingress to a composed app." +weight: 07 +--- + +:ks_permission: ** Service Mesh Management** +:ks_navigation: **Service Mesh > Composed Apps** + + +This section describes how to add an Ingress to a composed app. + + +== Prerequisites + +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the **Composed Apps** page, click the name of an app to open its details page. + +. On the app details page, select **More > Add Ingress** in the top-left corner. + ++ + +include::../../../../_custom-en/clusterManagement/routes/routes-oper-createARoute.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/10-delete-apps.adoc b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/10-delete-apps.adoc new file mode 100644 index 000000000..f0b2d2f08 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/10-delete-apps.adoc @@ -0,0 +1,54 @@ +--- +title: "Delete Composed Apps" +keywords: "Kubernetes, {ks_product-en}, project management, application, delete app" +description: "Learn how to delete an app." +weight: 10 +--- + +:ks_permission: ** Service Mesh Management** +:ks_navigation: **Service Mesh > Composed Apps** + + +This section describes how to delete a composed app. + + +== Prerequisites + +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + +== Delete a Single App + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ +. On the **Composed Apps** page, view the app list. + +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the app you want to delete, then select **Delete** from the dropdown list. + +. In the **Delete App** dialog, enter the name of the app, then click **OK**. + + +== Delete Multiple Apps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the **Composed Apps** page, view the app list. + +. Select the checkbox on the left side of the apps you want to delete, then click **Delete** above the app list. + +. In the **Delete Multiple Apps** dialog, enter the names of the apps, then click **OK**. ++ +-- +include::../../../../_custom-en/note-separateNamesByComma.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/_index.adoc b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/_index.adoc new file mode 100644 index 000000000..df60ab4ce --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/01-apps/_index.adoc @@ -0,0 +1,29 @@ +--- +title: "Composed Apps" +keywords: "Kubernetes, {ks_product-en}, Project Management, Apps" +description: "Describes how to manage composed apps installed in a project." +weight: 01 +layout: "second" +--- + +This section describes how to manage composed apps. + +include::../../../../_custom-en/projectManagement/apps/apps-types.adoc[] + +ifeval::["{file_output_type}" == "html"] +[.admon.note,cols="a"] +|=== +|Note + +|For more information about template-based apps, see link:../../../09-project-management/03-application-workloads/01-apps[Apps]. +|=== +endif::[] + +ifeval::["{file_output_type}" == "pdf"] +[.admon.note,cols="a"] +|=== +|Note + +|For more information about template-based apps, see the "Application Workloads > Apps" section in the {ks_product-en} Project Management Guide. +|=== +endif::[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/01-create-a-grayscale-release-task.adoc b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/01-create-a-grayscale-release-task.adoc new file mode 100644 index 000000000..0d0bc1d7e --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/01-create-a-grayscale-release-task.adoc @@ -0,0 +1,198 @@ +--- +title: "Create Grayscale Release Tasks" +keywords: "Kubernetes, {ks_product-en}, project management, grayscale release, create grayscale release task" +description: "Learn how to create a grayscale release task." +weight: 01 +--- + +:ks_permission: ** Service Mesh Management** +:ks_navigation: **Service Mesh > Grayscale Release** + + +This section describes how to create a grayscale release task. + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + +* **KubeSphere Service Mesh** should have been installed and enabled. + +* Prepare the new version container image in advance and upload it to the container image service, ensuring that the container image service has normal network connectivity with KubeSphere. + + +== Steps + +Refer to link:#_parameter_description[Parameter Description] to set the parameters for the grayscale release task. + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. Select a type for the grayscale release task as needed by hovering over the **Blue-Green Deployment**, **Canary Release**, or **Traffic Mirroring** area, then click **Create**. + +. On the **Basic Information** tab, set the name of the grayscale release task, then click **Next**. + +. On the **Service Settings** tab, select the app and service to be grayscale released, then click **Next**. + +. On the **New Version Settings** tab, set the service version number, number of pod replicas, and containers for the new version, then click **Next**. + +. On the **Strategy Settings** tab, set the traffic distribution strategy for the grayscale release task, then click **Create**. ++ +-- +After the grayscale release task is created, it will be displayed in the **Release Tasks** tab on the **Grayscale Release** page. +-- + + +== Parameter Description + +The following describes how to set the parameters for the grayscale release task. + +* Basic Information ++ +-- +Set the name of the task. The name can only contain lowercase letters, numbers, and hyphens (-), must start and end with a lowercase letter or number, and can be up to 253 characters long. +-- + +* Service Settings ++ +-- +Select the composed app and service to be grayscale released. + +* Click the dropdown list to select a composed app. + +* Click **Select** on the right side of the service to be grayscale released. + +// Note +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +Grayscale release only supports composed apps, not apps based on templates. + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + +* New Version Settings ++ +-- +Set the service version number, number of pod replicas, and containers for the new version. + +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|New Version Number +|The version number of the new version. The new version number can only contain lowercase letters and numbers, and can be up to 16 characters long. + +|Replica +| +The number of pod replicas for the new version. Click image:/images/ks-qkcp/zh/icons/chevron-up.svg[chevron-up,18,18]/image:/images/ks-qkcp/zh/icons/chevron-down.svg[chevron-down,18,18] to increase/decrease the number of pod replicas. + +|Add Container +| +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-addContainer.adoc[] + +* Directly enter the URL of the container image in the text box to replace the container image of the old version while keeping other container settings unchanged. +|=== +-- + +* New Version Settings > Add Container > Container Settings ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-desc-setImageNameTypeResource.adoc[] + +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerImage.adoc[] + +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerName.adoc[] + +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerType.adoc[] + +|CPU Request +|The CPU resources reserved for the container, in cores. + +|CPU Limit +|The upper limit of CPU resources allowed for the container, in cores. + +|Memory Request +|The memory resources reserved for the container, in MiB. + +|Memory Limit +|The upper limit of memory resources allowed for the container, in MiB. +|=== +-- + +* New Version Settings > Add Container > Port Settings ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-Port.adoc[] +-- + +* New Version Settings > Add Container > Image Pull Policy ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-imagePullPolicy.adoc[] +-- + +* New Version Settings > Add Container > Health Check ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-healthCheck.adoc[] +-- + +* New Version Settings > Add Container > Health Check > Add Probe ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-addProbe.adoc[] +-- + +* New Version Settings > Add Container > Lifecycle Management ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-lifecycleManagement.adoc[] +-- + +* New Version Settings > Add Container > Lifecycle Management > Add Action ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-addAction.adoc[] +-- + +* New Version Settings > Add Container > Start Command ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-startCommand.adoc[] +-- + +* New Version Settings > Add Container > Environment Variables ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-environmentVariables.adoc[] +-- + +* New Version Settings > Add Container > Container Security Context ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerSecurityContext.adoc[] +-- + +* New Version Settings > Add Container > Sync Host Timezone ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-syncTimeZone.adoc[] +-- + +* Strategy Settings ++ +==== +Set the traffic distribution strategy for the grayscale release task. + +include::../../../../_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-para-strategySettings.adoc[] +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/02-view-a-grayscale-release-task-list.adoc b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/02-view-a-grayscale-release-task-list.adoc new file mode 100644 index 000000000..eda982c31 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/02-view-a-grayscale-release-task-list.adoc @@ -0,0 +1,49 @@ +--- +title: "View Grayscale Release Task List" +keywords: "Kubernetes, {ks_product-en}, project management, grayscale release, view grayscale release task list" +description: "Learn how to view the grayscale release task list." +weight: 02 +--- + +:ks_permission: ** Service Mesh View** +:ks_navigation: **Service Mesh > Grayscale Release** + + +This section describes how to view the grayscale release task list. + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + +* **KubeSphere Service Mesh** should have been installed and enabled. + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the **Grayscale Release** page, click **Release Tasks** to open the grayscale release task list. ++ +-- +The grayscale release task list provides the following information: + +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Name +|The name, app, release mode, and service of the grayscale release task. + +|Version +|The version number and number of pod replicas for the new and old versions. + +include::../../../../_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-para-trafficSuccessLatency.adoc[] +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/03-view-grayscale-release-task-details.adoc b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/03-view-grayscale-release-task-details.adoc new file mode 100644 index 000000000..df76064df --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/03-view-grayscale-release-task-details.adoc @@ -0,0 +1,57 @@ +--- +title: "View Grayscale Release Task Details" +keywords: "Kubernetes, {ks_product-en}, project management, grayscale release, view grayscale release task details" +description: "Learn how to view the grayscale release task details." +weight: 03 +--- + +:ks_permission: ** Service Mesh View** +:ks_navigation: **Service Mesh > Grayscale Release** + + +This section describes how to view the grayscale release task details. + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + +* **KubeSphere Service Mesh** should have been installed and enabled. + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-oper-openDetailsPage.adoc[] ++ +-- +The task details page provides the following information: + +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Name +|The name and release mode of the grayscale release task. + +|Version +|The number of pod replicas, pod name, CPU usage, and memory usage for the new and old versions. + +|Traffic Distribution +| +* For Blue-Green Deployment, shows the service version currently receiving all traffic. + +* For Canary Release, shows the traffic distribution ratio between the new and old versions. + +* For Traffic Mirroring, shows the same copy of traffic received by the old version for the new version. + +include::../../../../_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-para-trafficSuccessLatency.adoc[] +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/04-switch-versions-blue-green-deployment.adoc b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/04-switch-versions-blue-green-deployment.adoc new file mode 100644 index 000000000..8f1b3157a --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/04-switch-versions-blue-green-deployment.adoc @@ -0,0 +1,35 @@ +--- +title: "Switch Online Version (Blue-Green Deployment)" +keywords: "Kubernetes, {ks_product-en}, project management, grayscale release, switch online version (blue-green deployment)" +description: "Learn how to switch the online version for a blue-green deployment task." +weight: 04 +--- + +:ks_permission: ** Service Mesh Management** +:ks_navigation: **Service Mesh > Grayscale Release** + +This section describes how to switch the online version for a blue-green deployment task. + +Based on business needs, you can set the new or old version in a blue-green deployment task to immediately take over all business traffic with one click. + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + +* **KubeSphere Service Mesh** should have been installed and enabled. + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the **Grayscale Release** page, click **Release Tasks**, then click the name of a blue-green deployment task to open its details page. + +. In the **Versions** area, click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] in the top-right corner of a version, then select **Take Over** from the dropdown list to set that version to immediately take over all business traffic. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/05-adjust-traffic-distribution-ratio-canary-release.adoc b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/05-adjust-traffic-distribution-ratio-canary-release.adoc new file mode 100644 index 000000000..2d616b5c6 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/05-adjust-traffic-distribution-ratio-canary-release.adoc @@ -0,0 +1,37 @@ +--- +title: "Adjust Traffic Distribution Ratio (Canary Release)" +keywords: "Kubernetes, {ks_product-en}, project management, grayscale release, adjust traffic distribution ratio (canary release)" +description: "Learn how to adjust the traffic distribution ratio for a canary release task." +weight: 05 +--- + +:ks_permission: ** Service Mesh Management** +:ks_navigation: **Service Mesh > Grayscale Release** + +This section describes how to adjust the traffic distribution ratio for a canary release task. + +Based on business needs, you can manually adjust the traffic distribution ratio between the new and old versions in a canary release task. + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + +* **KubeSphere Service Mesh** should have been installed and enabled. + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the **Grayscale Release** page, click **Release Tasks**, then click the name of a canary release task to open its details page. + +. In the **Traffic Distribution** area, drag the slider to adjust the traffic distribution ratio between the new and old versions, then click **OK** in the pop-up dialog. The system will distribute business traffic between the new and old versions according to the ratio. + +. (Optional) In the **Versions** area, click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] in the top-right corner of a version, then select **Take Over** from the dropdown list to set that version to immediately take over all business traffic. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/06-edit-settings-of-a-grayscale-release-task.adoc b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/06-edit-settings-of-a-grayscale-release-task.adoc new file mode 100644 index 000000000..df8d42812 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/06-edit-settings-of-a-grayscale-release-task.adoc @@ -0,0 +1,53 @@ +--- +title: "Edit Grayscale Release Task Settings" +keywords: "Kubernetes, {ks_product-en}, project management, grayscale release, edit grayscale release task settings" +description: "Learn how to edit grayscale release task settings." +weight: 06 +--- + +:ks_permission: ** Service Mesh Management** +:ks_navigation: **Service Mesh > Grayscale Release** + + +This section describes how to edit grayscale release task settings. + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + +* **KubeSphere Service Mesh** should have been installed and enabled. + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-oper-openDetailsPage.adoc[] + ++ + +. In the **Versions** area, click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] in the top-right corner of the new version, then select **Edit** from the dropdown list. + +. On the **New Version Settings** tab, click image:/images/ks-qkcp/zh/icons/chevron-up.svg[chevron-up,18,18]/image:/images/ks-qkcp/zh/icons/chevron-down.svg[chevron-down,18,18] to increase/decrease the number of pod replicas. ++ +-- +// Note +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +Grayscale release does not support modifying the version number and container image of the new version. + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + +. Click the **Strategy Settings** tab, set the traffic distribution strategy for the grayscale release task, then click **OK**. ++ +==== +include::../../../../_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-para-strategySettings.adoc[] +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/07-delete-a-grayscale-release-task.adoc b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/07-delete-a-grayscale-release-task.adoc new file mode 100644 index 000000000..17f513d3d --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/07-delete-a-grayscale-release-task.adoc @@ -0,0 +1,49 @@ +--- +title: "Delete Grayscale Release Tasks" +keywords: "Kubernetes, {ks_product-en}, project management, grayscale release, delete grayscale release task" +description: "Learn how to delete a grayscale release task." +weight: 07 +--- + +:ks_permission: ** Service Mesh Management** +:ks_navigation: **Service Mesh > Grayscale Release** + + +This section describes how to delete a grayscale release task. + +// Warning +include::../../../../../_ks_components-en/admonitions/warning.adoc[] + +A grayscale release task can only be deleted when one of the new or old versions has taken over all business traffic. After the grayscale release task is deleted, the version (includes services, workloads, and pods) that has not taken over the business traffic will also be deleted. + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + +* **KubeSphere Service Mesh** should have been installed and enabled. + +* One of the new or old versions has taken over all business traffic. For more information, see link:../04-switch-versions-blue-green-deployment/[Switch Online Version (Blue-Green Deployment)] and link:../05-adjust-traffic-distribution-ratio-canary-release/[Adjust Traffic Distribution Ratio (Canary Release)]. + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/projectManagement/grayscaleRelease/grayscaleRelease-oper-openDetailsPage.adoc[] + ++ + +. In the top-right corner of the grayscale release details page, click **Delete**. ++ +-- +The system will delete the grayscale release task and also delete the version that has not taken over the business traffic. +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/_index.adoc b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/_index.adoc new file mode 100644 index 000000000..a537220d4 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/_index.adoc @@ -0,0 +1,27 @@ +--- +title: "Grayscale Release" +keywords: "Kubernetes, {ks_product-en}, project management, grayscale release" +description: "Learn how to manage grayscale release tasks." +weight: 02 +layout: "second" +--- + + +This section describes how to use the grayscale release feature. + +When a container version needs to be updated, directly releasing a new version without sufficient testing to the production environment may pose significant risks to the business. Using the grayscale release feature, the business traffic in the production environment is forwarded to the new version being tested, thereby fully exposing and promptly fixing potential issues in the new version before its official release. + +KubeSphere supports the following grayscale release modes: + +* Blue-Green Deployment: Sends business traffic to the new version for testing. If the new version does not function normally, the business traffic can be immediately switched back to the old version. + +* Canary Release: Allocates business traffic to both the new and old versions according to a certain ratio, ensuring business continuity while testing the new version. + +* Traffic Mirroring: Sends a copy of the business traffic to the new version for testing without actually exposing the new version. + +// Note +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +Grayscale release only supports composed apps, not apps based on templates. + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/03-service-mesh/_index.adoc b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/_index.adoc new file mode 100644 index 000000000..d9cd4d7ed --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/03-service-mesh/_index.adoc @@ -0,0 +1,21 @@ +--- +title: "KubeSphere Service Mesh" +keywords: "Kubernetes, {ks_product-en}, Service Mesh" +description: "Describes how to use the KubeSphere Service Mesh extension." +weight: 03 +layout: "second" +--- + +This section describes how to use the "KubeSphere Service Mesh" extension. + +KubeSphere Service Mesh is used to enable the service mesh functionality of KubeSphere, built on the open-source project Istio, and visualizes microservice governance and traffic management. It has a powerful toolkit, including circuit breakers, blue-green deployments, canary releases, traffic mirroring, tracing, observability, and traffic control. + +After installing the "KubeSphere Service Mesh" extension, **Service Mesh** will be displayed in the project's left navigation pane, supporting creating composed apps and managing grayscale releases for composed apps. + +[.admon.attention,cols="a"] +|=== +|Note + +| +Before installing KubeSphere Service Mesh, you need to set up available Prometheus and OpenSearch services in the extension configuration. For more information about the extension configuration, see the details page of the "KubeSphere Service Mesh" extension in the Extensions Center. +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/00-web-console/01-log-in-and-go-to-a-project.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/00-web-console/01-log-in-and-go-to-a-project.adoc new file mode 100644 index 000000000..2752c9fcc --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/00-web-console/01-log-in-and-go-to-a-project.adoc @@ -0,0 +1,38 @@ +--- +title: "Log In and Access Multi-cluster Projects" +keywords: "Kubernetes, {ks_product-en}, project management, web console, multi-cluster projects" +description: "Learn how to log in and access multi-cluster projects." +weight: 01 +--- + +This section describes how to log in to the {ks_product-en} web console and access multi-cluster projects. + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* You should get the username and password for a multi-cluster project member. + +include::../../../../_custom-en/workspaceManagement/webConsole/webConsole-prer-logIn.adoc[] + + +== Steps + +include::../../../../_custom-en/workspaceManagement/webConsole/webConsole-oper-logIn.adoc[] ++ +-- +[.admon.note,cols="a"] +|=== +|Note + +| +include::../../../../_custom-en/workspaceManagement/webConsole/webConsole-note-firstLogin.adoc[] +|=== +-- + +. Click **Workspace Management**, then click the name of a workspace to enter the workspace. + +. In the left navigation pane, select **Projects**, then click **Multi-cluster Projects** to enter the multi-cluster project list page. + +. On the **Multi-cluster Projects** page, click the name of a multi-cluster project to enter the project. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/00-web-console/_index.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/00-web-console/_index.adoc new file mode 100644 index 000000000..bf586636c --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/00-web-console/_index.adoc @@ -0,0 +1,10 @@ +--- +title: "Web Console" +keywords: "Kubernetes, {ks_product-en}, federated project, web console" +description: "Learn how to access multi-cluster projects." +weight: 01 +layout: "second" +--- + + +This section describes how to log in to the {ks_product-en} web console and access multi-cluster projects. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/01-create-a-project.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/01-create-a-project.adoc new file mode 100644 index 000000000..797a540da --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/01-create-a-project.adoc @@ -0,0 +1,70 @@ +--- +title: "Create Multi-cluster Projects" +keywords: "Kuberentes, {ks_product-en}, workspace management, multi-cluster projects, create multi-cluster project" +description: "Learn how to create multi-cluster projects." +weight: 01 +--- + + +:ks_permission: **Federated Project Management** +:ks_navigation: **Projects > Multi-cluster Projects** + + +This section describes how to create multi-cluster projects. + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +. In the pop-up dialog, set the project parameters, then click **OK**. ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +include::../../../../_custom-en/clusterManagement/projects/projects-para-name.adoc[] + +include::../../../../_custom-en/clusterManagement/projects/projects-para-aliasDescription.adoc[] + +|Cluster +|The clusters available for the project. Resources in the project run in the clusters selected here. When creating a multi-cluster project, you can click **Add** to select multiple clusters, allowing resources in the project to run on different clusters. +|=== + +[.admon.note,cols="a"] +|=== +|Note + +| +ifeval::["{file_output_type}" == "html"] +To run a multi-cluster project on multiple clusters, the workspace to which the multi-cluster project belongs must be authorized to access multiple clusters. For more information, see link:../../../../08-workspace-management/02-workspaces/01-create-a-workspace[Create Workspaces]. + +endif::[] + +ifeval::["{file_output_type}" == "pdf"] +To run a multi-cluster project on multiple clusters, the workspace to which the multi-cluster project belongs must be authorized to access multiple clusters. For more information, see the "Create Workspaces" section in the {ks_product-en} Workspace Management Guide. + +endif::[] +|=== + +After the project is created, you can invite users to join the project and deploy business in the project. +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/02-view-a-project-list.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/02-view-a-project-list.adoc new file mode 100644 index 000000000..63699ac08 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/02-view-a-project-list.adoc @@ -0,0 +1,66 @@ +--- +title: "View Multi-cluster Project List" +keywords: "Kuberentes, {ks_product-en}, workspace management, multi-cluster projects, how to view project list" +description: "Learn how to view the project list." +weight: 02 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **Projects > Multi-cluster Projects** + + +include::../../../../_custom-en/workspaceManagement/projects/projects-desc-viewProjectList.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ +==== +* The project list provides the following information: ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Name +|The name and description of the project. + +|Status +|The current status of the project. + +* **Active**: The project is in normal status. +* **Deleting**: The project is in the process of being deleted. + +|Cluster +|The clusters available for the project. + +|Creation Time +|The creation time of the project. +|=== +-- + +include::../../../../_custom-en/workspaceManagement/projects/projects-oper-searchForProjects.adoc[] + +include::../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../_ks_components-en/oper-customizeColumns.adoc[] + + +* Click the name of a project in the list to open the project management page. You can view and manage resources in the project on the page. + +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/03-edit-project-information.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/03-edit-project-information.adoc new file mode 100644 index 000000000..6045da023 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/03-edit-project-information.adoc @@ -0,0 +1,35 @@ +--- +title: "Edit Multi-cluster Project Information" +keywords: "Kuberentes, {ks_product-en}, workspace management, multi-cluster projects, edit project information" +description: "Learn how to edit project information." +weight: 03 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Projects > Multi-cluster Projects** + + +include::../../../../_custom-en/clusterManagement/projects/projects-desc-editInformation.adoc[] + +include::../../../../_custom-en/clusterManagement/projects/projects-note-editInformation.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/projects/projects-oper-editInformation.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/04-edit-project-annotations.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/04-edit-project-annotations.adoc new file mode 100644 index 000000000..ff2fb2241 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/04-edit-project-annotations.adoc @@ -0,0 +1,42 @@ +--- +title: "Edit Multi-cluster Project Annotations" +keywords: "Kuberentes, {ks_product-en}, workspace management, multi-cluster projects, edit project annotations" +description: "Learn how to edit project annotations." +weight: 04 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Projects > Multi-cluster Projects** + + +This section describes how to edit project annotations. + +Project annotations are key-value pairs that add additional metadata or descriptive information to a project. + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + + +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the project you want to edit, then select **Edit Annotations** from the dropdown list. + +. In the **Edit Annotations** dialog, set the key-value pairs, then click **OK**. ++ +-- +* Click **Add** to set multiple annotations. + +* Click image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18] on the right side of a created annotation to delete it. +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/05-add-a-cluster.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/05-add-a-cluster.adoc new file mode 100644 index 000000000..e0a134a45 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/05-add-a-cluster.adoc @@ -0,0 +1,56 @@ +--- +title: "Add Clusters to Multi-cluster Project" +keywords: "Kuberentes, {ks_product-en}, workspace management, multi-cluster projects, add clusters to multi-cluster project" +description: "Learn how to add clusters to a multi-cluster project." +weight: 05 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Projects > Multi-cluster Projects** + + +This section describes how to add clusters to a multi-cluster project. + +A multi-cluster project is a project created based on multiple clusters. Resources in a multi-cluster project can run on different clusters. + +[.admon.note,cols="a"] +|=== +|Note + +| +ifeval::["{file_output_type}" == "html"] +To run a multi-cluster project on multiple clusters, the workspace to which the multi-cluster project belongs must be authorized to access multiple clusters. For more information, see link:../../../../08-workspace-management/02-workspaces/01-create-a-workspace[Create Workspaces]. + +endif::[] + +ifeval::["{file_output_type}" == "pdf"] +To run a multi-cluster project on multiple clusters, the workspace to which the multi-cluster project belongs must be authorized to access multiple clusters. For more information, see the "Create Workspaces" section in the {ks_produc-en} Workspace Management Guide. + +endif::[] +|=== + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + +. Click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right side of the project you want to operate, then select **Add Cluster** from the dropdown list. + +. In the **Add Cluster** dialog, select clusters from the dropdown list, then click **OK**. ++ +-- +* Click **Add Cluster** to add multiple clusters. + +* Click image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18] on the right side of an added cluster to cancel adding that cluster. +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/06-delete-projects.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/06-delete-projects.adoc new file mode 100644 index 000000000..2267713af --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/06-delete-projects.adoc @@ -0,0 +1,46 @@ +--- +title: "Delete Multi-cluster Projects" +keywords: "Kuberentes, {ks_product-en}, workspace management, multi-cluster projects, delete projects" +description: "Learn how to delete projects." +weight: 06 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Projects > Multi-cluster Projects** + + +include::../../../../_custom-en/clusterManagement/projects/projects-desc-deleteProjects.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + + +== Delete a Single Project + +include::../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/projects/projects-oper-deleteASingleProject.adoc[] + + +== Batch Delete Projects + +include::../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/projects/projects-oper-deleteMultipleProjects.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/_index.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/_index.adoc new file mode 100644 index 000000000..926227cdd --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/_index.adoc @@ -0,0 +1,10 @@ +--- +title: "Manage Multi-cluster Projects" +keywords: "Kuberentes, {ks_product-en}, workspace management, multi-cluster projects" +description: "Learn how to view multi-cluster project information and manage multi-cluster projects." +weight: 01.5 +layout: "second" +--- + + +This section describes how to manage multi-cluster projects. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/02-overview/01-view-project-overall-information.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/02-overview/01-view-project-overall-information.adoc new file mode 100644 index 000000000..0f89a3788 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/02-overview/01-view-project-overall-information.adoc @@ -0,0 +1,54 @@ +--- +title: "Multi-cluster Project Overview" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, overview, view multi-cluster project overview information" +description: "Learn how to view the overview information of multi-cluster projects." +weight: 01 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **Overview** + + +This section describes how to view the overview information of multi-cluster projects. + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] ++ +-- +The **Overview** page provides the following information: + +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Workspace +|The workspace to which the multi-cluster project belongs. + +|Creator +|The user who created the multi-cluster project. + +|Resource Status +|The application resources created and physical resources used in the multi-cluster project. Click the dropdown list in the top-right corner to select a cluster and a time range for the data. + +* **Application Resources**: The number of deployments, statefulsets, persistent volume claims, services, and ingresses created in the multi-cluster project. + +* **Physical Resources**: The CPU and memory usage of the multi-cluster project. + +|Top 5 for Resource Usage +|The top 5 workloads in the multi-cluster project with the highest usage of specific resources. Click the dropdown list to select a cluster and sort by CPU, memory, outbound traffic, or inbound traffic. +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/02-overview/_index.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/02-overview/_index.adoc new file mode 100644 index 000000000..0ad49ea97 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/02-overview/_index.adoc @@ -0,0 +1,7 @@ +--- +title: "Overview" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, overview" +description: "Learn how to view the overview information of multi-cluster projects." +weight: 02 +layout: "second" +--- diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/01-apps/01-compose-an-app.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/01-apps/01-compose-an-app.adoc new file mode 100644 index 000000000..b894248eb --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/01-apps/01-compose-an-app.adoc @@ -0,0 +1,67 @@ +--- +title: "Create Composed Apps" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, applications, create application" +description: "Learn how to create an application in a multi-cluster project." +weight: 01 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Composed Apps** + + +This section describes how to create a composed app in a multi-cluster project. + +include::../../../../../_custom-en/projectManagement/apps/apps-compose-description.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* To enable app governance for the application, **KubeSphere Service Mesh** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the **Apps** page, click **Create**. + +. On the **Basic Information** tab, set the basic information for the app, then click **Next**. ++ +-- +include::../../../../../_custom-en/projectManagement/apps/apps-basic-para.adoc[] +-- + +. On the **Service Settings** tab, click **Create Service**, select **Stateful Service** or **Stateless Service** to create a service for the app, then click **Next**. ++ +-- +include::../../../../../_custom-en/clusterManagement/services/services-para-statelessStatefulExternal.adoc[] + +[.admon.note,cols="a"] +|=== +|Note + +| +For more information, see link:../../02-services/01-create-a-stateful-or-stateless-service[Create a Stateful or Stateless Service]. +|=== +-- + +. On the **Ingress Settings** tab, click **Add Routing Rule** to create routing rules for the app, then click **Create**. ++ +-- +include::../../../../../_custom-en/multi-clusterProjectManagement/routes/routes-create-ClusterDiff.adoc[] + +include::../../../../../_custom-en/clusterManagement/routes/routes-para-routingRules.adoc[] + +After the app is created, it will be displayed on the app list page. +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/01-apps/02-view-an-app-list.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/01-apps/02-view-an-app-list.adoc new file mode 100644 index 000000000..23dcbcf12 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/01-apps/02-view-an-app-list.adoc @@ -0,0 +1,73 @@ +--- +title: "View Composed App List" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, applications, view application list" +description: "Learn how to view the application list in a multi-cluster project." +weight: 02 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **Application Workloads > Composed Apps** + + +This section describes how to view the application list in a multi-cluster project. + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the **Apps** page, view the list of apps created in the current multi-cluster project. ++ +==== +* The app list provides the following information: ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Name +|The name of the app. + +|Status +|The current status of the app. + +* **Waiting**: The system is creating the app. + +* **Running**: The app is running normally. + +* **Updating**: The system is updating the app version. + +* **Deleting**: The system is deleting the app. + +* **Failed**: The app creation failed. + + +|Version +|The version number of the app. For composed apps, it displays the user-defined version number. + +|Creation Time +|The creation time of the app. +|=== +-- + +* Click the search box at the top of the list and enter keywords to search for apps by name. + +include::../../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/01-apps/03-view-app-details.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/01-apps/03-view-app-details.adoc new file mode 100644 index 000000000..4b4c8b2ff --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/01-apps/03-view-app-details.adoc @@ -0,0 +1,82 @@ +--- +title: "View Composed App Details" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, applications, view application details" +description: "Learn how to view application details in a multi-cluster project." +weight: 03 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **Application Workloads > Composed Apps** + + +This section describes how to view application details in a multi-cluster project. + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the **Apps** page, click the name of an app to open its details page. + +. On the app details page, view the app's resource attributes in the **Attributes** area on the left. ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +include::../../../../../_custom-en/multi-clusterProjectManagement/apps/apps-para-details.adoc[] + +|=== +-- + ++ + +include::../../../../../_custom-en/multi-clusterProjectManagement/apps/apps-oper-viewResourceStatus.adoc[] + ++ + +. On the app details page, click **External Access** on the right to view the app's external access mode. + +. On the app details page, click **Traffic Management** on the right to view the app's traffic information. ++ +-- +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +* In the **Cluster** area, you can select a cluster where the app is located to view the traffic information of the app in the specified cluster. + +* To use the **Traffic Monitoring** feature, the KubeSphere Service Mesh extension should have been installed and enabled, and you need to enable application governance when creating the app. For more information, see link:../01-compose-an-app/[Create Composed Apps]. + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + +. On the app details page, click **Tracing** on the right to view the app's request tracing information. ++ +-- +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +* In the **Cluster** area, you can select a cluster where the app is located to view the request tracing information of the app in the specified cluster. + +* To use the **Tracing** feature, the KubeSphere Service Mesh extension should have been installed and enabled, and you need to perform the following operations: + +** Enable application governance when creating the app. For more information, see link:../01-compose-an-app/[Create Composed Apps]. + +** Enable the project gateway and enable the tracing feature for the project gateway. For more information, see link:../../../../12-gateway/01-project-gateway/01-enable-a-project-gateway[Enable Project Gateway]. +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/01-apps/04-delete-apps.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/01-apps/04-delete-apps.adoc new file mode 100644 index 000000000..4986252c6 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/01-apps/04-delete-apps.adoc @@ -0,0 +1,44 @@ +--- +title: "Delete Composed Apps" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, applications, delete application" +description: "Learn how to delete an application from a multi-cluster project." +weight: 04 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Composed Apps** + + +This section describes how to delete an application from a multi-cluster project. + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. On the **Apps** page, find the app you want to delete, click image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] on the right, then select **Delete** from the dropdown list. + +. In the **Delete App** dialog, enter the name of the app, then click **OK**. ++ +-- +// Warning +include::../../../../../../_ks_components-en/admonitions/warning.adoc[] + +The app cannot be recovered after deletion, so proceed with caution. + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/01-apps/_index.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/01-apps/_index.adoc new file mode 100644 index 000000000..b961970db --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/01-apps/_index.adoc @@ -0,0 +1,11 @@ +--- +title: "Composed Apps" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, applications, management" +description: "Learn how to manage composed apps in multi-cluster projects." +weight: 01 +layout: "second" +--- + +This section describes how to manage applications installed in multi-cluster projects. Only composed apps can be created in multi-cluster projects, not apps based on templates. + +include::../../../../../_custom-en/projectManagement/apps/apps-types.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/01-create-a-stateful-or-stateless-service.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/01-create-a-stateful-or-stateless-service.adoc new file mode 100644 index 000000000..05758b2ac --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/01-create-a-stateful-or-stateless-service.adoc @@ -0,0 +1,299 @@ +--- +title: "Create a Stateful or Stateless Service" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, workloads, services, create service, create stateful or stateless service" +description: "Learn how to create a stateful or stateless service." +weight: 01 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Services** + + +This section describes how to create a stateful or stateless service in a multi-cluster project. + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +Refer to link:#_parameter_description[Parameter Description] to set the parameters for the service. + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +. In the **Create Service** dialog, select **Stateful Service** or **Stateless Service** as needed. ++ +-- +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +include::../../../../../_custom-en/clusterManagement/services/services-para-statelessStatefulExternal.adoc[] + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + ++ + +include::../../../../../_custom-en/projectManagement/services/services-oper-setBasicInformation.adoc[] + ++ + +. On the **Pod Settings** tab, set the number of replicas, containers, update strategy, security context, scheduling rules, and metadata for the pods managed by the service backend workload in the cluster, then click **Next**. + ++ + +include::../../../../../_custom-en/multi-clusterProjectManagement/services/services-oper-setStorageAdvancedDiff.adoc[] + + +== Parameter Description + +The following describes how to set the parameters for stateful and stateless services. + +* Basic Information ++ +-- +include::../../../../../_custom-en/projectManagement/services/services-para-setServiceInformation.adoc[] + +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +include::../../../../../_custom-en/clusterManagement/services/services-para-serviceName.adoc[] + +include::../../../../../_custom-en/clusterManagement/services/services-para-serviceAlias.adoc[] + +include::../../../../../_custom-en/projectManagement/services/services-para-serviceVersion.adoc[] + +include::../../../../../_custom-en/clusterManagement/services/services-para-serviceDescription.adoc[] +|=== +-- + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-podReplicas.adoc[] + +* Pod Settings > Add Container ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-addContainer.adoc[] +-- + +* Pod Settings > Add Container > Container Settings ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-desc-setImageNameTypeResource.adoc[] + +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerImage.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerName.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerType.adoc[] + +include::../../../../../_custom-en/clusterManagement/projects/projects-para-containerQuotas.adoc[] +|=== +-- + +* Pod Settings > Add Container > Port Settings ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-Port.adoc[] +-- + +* Pod Settings > Add Container > Image Pull Policy ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-imagePullPolicy.adoc[] +-- + +* Pod Settings > Add Container > Health Check ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-healthCheck.adoc[] +-- + +* Pod Settings > Add Container > Health Check > Add Probe ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-addProbe.adoc[] +-- + +* Pod Settings > Add Container > Lifecycle Management ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-lifecycleManagement.adoc[] +-- + +* Pod Settings > Add Container > Lifecycle Management > Add Action ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-addAction.adoc[] +-- + +* Pod Settings > Add Container > Start Command ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-startCommand.adoc[] +-- + +* Pod Settings > Add Container > Environment Variables ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-environmentVariables.adoc[] +-- + +* Pod Settings > Add Container > Pod Security Context ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerSecurityContext.adoc[] +-- + +* Pod Settings > Add Container > Sync Host Timezone ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-syncTimeZone.adoc[] +-- + +* Pod Settings > Update Strategy ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-updatePolicy.adoc[] +-- + +* Pod Settings > Update Strategy > Rolling Update Settings ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-rollingUpdate.adoc[] +-- + +* Pod Settings > Pod Security Context ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-podSecurityContext.adoc[] +-- + +* Pod Settings > Pod Scheduling Rules ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-podSchedulingRules.adoc[] +-- + +* Pod Settings > Pod Scheduling Rules > Custom Rules ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-customRules.adoc[] +-- + +* Pod Settings > Pod Graceful Period ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-PodGracePeriod.adoc[] +-- + +* Pod Settings > Add Metadata ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-PodMetadata.adoc[] +-- + +* Storage Settings ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-desc-mountVolume.adoc[] + +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +// include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-collectLogsOnVolume.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-addPVCTemplate.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-mountVolume.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-mountSecretOrConfigmap.adoc[] +|=== + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-oper-editDeleteVolume.adoc[] +-- + +* Storage Settings > Add Persistent Volume Claim Template ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-volumeTemplate.adoc[] +-- + +* Storage Settings > Mount Volume > Persistent Volume ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-persistentVolume.adoc[] +-- + +* Storage Settings > Mount Volume > Temporary Volume ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-temporaryVolume.adoc[] +-- + +* Storage Settings > Mount Volume > HostPath Volume ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-hostpathVolume.adoc[] +-- + +* Storage Settings > Mount ConfigMap or Secret ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-mountConfigmapSecret.adoc[] +-- + +* Advanced Settings ++ +-- +// include::../../../../../_custom-en/projectManagement/services/services-desc-setLabelsAnnotations.adoc[] + +Specify nodes for the pods managed by the service backend workload, set the external access mode, session persistence settings, and metadata for the service. + +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +// include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-podIpPool.adoc[] + +include::../../../../../_custom-en/clusterManagement/services/services-para-externalAccess.adoc[] + +include::../../../../../_custom-en/clusterManagement/services/services-para-sessionPersistence.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-selectNode.adoc[] + +|Add Metadata +| +include::../../../../../_custom-en/projectManagement/services/services-desc-setServiceLabelWorkloadAnnotation.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-Metadata.adoc[] +|=== +-- + +* Cluster Differences ++ +-- +Differentiate the service based on containers, ports, and environment variables in different clusters. + +include::../../../../../_custom-en/multi-clusterProjectManagement/services/services-oper-setClusterDiff.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/02-view-a-service-list.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/02-view-a-service-list.adoc new file mode 100644 index 000000000..00d7ed17a --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/02-view-a-service-list.adoc @@ -0,0 +1,74 @@ +--- +title: "View Service List" +keywords: "Kubernetes, {ks_product-en}, project management, workloads, services, view service list" +description: "Learn how to view the service list." +weight: 02 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **Application Workloads > Services** + + +include::../../../../../_custom-en/clusterManagement/services/services-desc-viewServiceList.adoc[] + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] ++ +==== +* The service list provides the following information: ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +include::../../../../../_custom-en/clusterManagement/services/services-para-name.adoc[] + +|Status +|The status of the service, either **Running** or **Deleting**. + +|Service Type +|The type of the service. Depending on how the service is created, {ks_product-en} categorizes services into the following types: + +include::../../../../../_custom-en/clusterManagement/services/services-para-statelessStatefulExternal.adoc[] + +// * **External Service**: The service forwards business traffic to other services outside the cluster. The system does not allocate a virtual IP address to the service, and it can be accessed from within the cluster using a domain name in the format .**.svc.cluster.local**. + +// * **Custom Service**: A service created by the user by customizing the internal access mode and backend workload. + +|App +|The app to which the service belongs. + +// |Internal Access +// | +// include::../../../../../_custom-en/clusterManagement/services/services-para-internalAccess.adoc[] + +// include::../../../../../_custom-en/clusterManagement/services/services-para-virtualip-headless.adoc[] + +// include::../../../../../_custom-en/clusterManagement/services/services-para-externalName.adoc[] + +// include::../../../../../_custom-en/clusterManagement/services/services-para-externalAccess.adoc[] + +include::../../../../../_custom-en/clusterManagement/services/services-para-creationTime.adoc[] +|=== +-- + +include::../../../../../_custom-en/clusterManagement/services/services-oper-searchForServices.adoc[] + +include::../../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/03-view-service-details.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/03-view-service-details.adoc new file mode 100644 index 000000000..8ceb6743b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/03-view-service-details.adoc @@ -0,0 +1,37 @@ +--- +title: "View Service Details" +keywords: "Kubernetes, {ks_product-en}, project management, workloads, services, view service details" +description: "Learn how to view service details." +weight: 03 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **Application Workloads > Services** + + +include::../../../../../_custom-en/clusterManagement/services/services-desc-viewServiceDetails.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/services/services-oper-openDetailsPage.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/services/services-oper-viewServiceDetails-for-kubefed.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/04-edit-service-information.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/04-edit-service-information.adoc new file mode 100644 index 000000000..f67ea13e9 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/04-edit-service-information.adoc @@ -0,0 +1,33 @@ +--- +title: "Edit Service Information" +keywords: "Kubernetes, {ks_product-en}, project management, workloads, services, edit service information" +description: "Learn how to edit service information." +weight: 04 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Services** + + +include::../../../../../_custom-en/clusterManagement/services/services-desc-editServiceInformation.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/services/services-oper-editServiceInformation.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/05-edit-service-settings.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/05-edit-service-settings.adoc new file mode 100644 index 000000000..85c11a6bb --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/05-edit-service-settings.adoc @@ -0,0 +1,33 @@ +--- +title: "Edit Service Settings" +keywords: "Kubernetes, {ks_product-en}, project management, workloads, services, edit service settings" +description: "Learn how to edit service settings." +weight: 05 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Services** + + +include::../../../../../_custom-en/clusterManagement/services/services-desc-editServiceSettings.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/services/services-oper-editServiceSettings-for-kubefed.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/06-edit-service-external-access-settings.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/06-edit-service-external-access-settings.adoc new file mode 100644 index 000000000..af47f7a2d --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/06-edit-service-external-access-settings.adoc @@ -0,0 +1,41 @@ +--- +title: "Edit Service External Access Settings" +keywords: "Kubernetes, {ks_product-en}, project management, workloads, services, edit service external access settings" +description: "Learn how to edit external access settings for services." +weight: 06 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Services** + + +include::../../../../../_custom-en/clusterManagement/services/services-desc-editServiceExternalAccessSettings.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/services/services-oper-openDetailsPage.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/services/services-oper-openServiceExternalAccessSettings.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/services/services-oper-editServiceExternalAccessSettings.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/07-delete-services.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/07-delete-services.adoc new file mode 100644 index 000000000..c412f5dd8 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/07-delete-services.adoc @@ -0,0 +1,50 @@ +--- +title: "Delete Services" +keywords: "Kubernetes, {ks_product-en}, project management, workloads, services, delete service" +description: "Learn how to delete a service." +weight: 07 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Services** + + +include::../../../../../_custom-en/clusterManagement/services/services-desc-deleteServices.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Delete a Single Service + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/services/services-oper-deleteASingleService.adoc[] + ++ + +. In the **Delete Service** dialog, select the workloads to be deleted simultaneously, then click **OK**. + + +== Delete Multiple Services + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/services/services-oper-deleteMultipleServices.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/_index.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/_index.adoc new file mode 100644 index 000000000..d6c4b7c0f --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/02-services/_index.adoc @@ -0,0 +1,10 @@ +--- +title: "Services" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads, services" +description: "Learn how to manage services in multi-cluster projects." +weight: 02 +layout: "second" +--- + + +include::../../../../../_custom-en/clusterManagement/services/services-desc-services.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/01-create-a-workload.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/01-create-a-workload.adoc new file mode 100644 index 000000000..acee7f945 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/01-create-a-workload.adoc @@ -0,0 +1,289 @@ +--- +title: "Create Workloads" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads, workloads, create workload" +description: "Learn how to create a workload." +weight: 01 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Workloads** +:kubefed: + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-desc-createAWorkload.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +Refer to link:#_parameter_description[Parameter Description] to set the parameters for the workload. + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-multi-project-oper-openListPage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-multi-project-oper-createAWorkload-ClusterDiff.adoc[] + + +== Parameter Description + +The following describes how to set the parameters for the workload. + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-basicInformation.adoc[] + + +* Pod Settings > Replica Scheduling Mode ++ +-- +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +|Specify Replicas +|Manually set the number of pod replicas for each cluster. + +Click image:/images/ks-qkcp/zh/icons/add-light.svg[add,18,18]/image:/images/ks-qkcp/zh/icons/substract-light.svg[subtract,18,18] to increase/decrease the number of pod replicas, with a minimum value of **1**. + +|Specify Weights +|Set the total number of pod replicas and the weight for each cluster. Pod replicas will be scheduled to each cluster based on the weight ratio. + +Click image:/images/ks-qkcp/zh/icons/add-light.svg[add,18,18]/image:/images/ks-qkcp/zh/icons/substract-light.svg[subtract,18,18] to increase/decrease the weight of the cluster, with a minimum value of **1**. + +For example: If the total number of pod replicas is 10, and the weights for the host and member clusters are 3 and 2 respectively, then the number of pod replicas for the host cluster will be 6, and for the member cluster will be 4. +|=== +-- + +// include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-podReplicas.adoc[] + +* Pod Settings > Add Container ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-addContainer.adoc[] +-- + +* Pod Settings > Add Container > Container Settings ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-desc-setImageNameTypeResource.adoc[] + +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerImage.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerName.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerType.adoc[] + +include::../../../../../_custom-en/clusterManagement/projects/projects-para-containerQuotas.adoc[] +|=== +-- + +* Pod Settings > Add Container > Port Settings ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-Port.adoc[] +-- + +* Pod Settings > Add Container > Image Pull Policy ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-imagePullPolicy.adoc[] +-- + +* Pod Settings > Add Container > Health Check ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-healthCheck.adoc[] +-- + +* Pod Settings > Add Container > Health Check > Add Probe ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-addProbe.adoc[] +-- + +* Pod Settings > Add Container > Lifecycle Management ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-lifecycleManagement.adoc[] +-- + +* Pod Settings > Add Container > Lifecycle Management > Add Action ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-addAction.adoc[] +-- + +* Pod Settings > Add Container > Start Command ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-startCommand.adoc[] +-- + +* Pod Settings > Add Container > Environment Variables ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-environmentVariables.adoc[] +-- + +* Pod Settings > Add Container > Pod Security Context ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerSecurityContext.adoc[] +-- + +* Pod Settings > Add Container > Sync Host Timezone ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-syncTimeZone.adoc[] +-- + +* Pod Settings > Update Strategy ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-updatePolicy.adoc[] +-- + +* Pod Settings > Update Strategy > Rolling Update Settings ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-rollingUpdate.adoc[] +-- + +* Pod Settings > Pod Security Context ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-podSecurityContext.adoc[] +-- + +* Pod Settings > Pod Scheduling Rules ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-podSchedulingRules.adoc[] +-- + +* Pod Settings > Pod Scheduling Rules > Custom Rules ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-customRules.adoc[] +-- + +* Pod Settings > Pod Graceful Period ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-PodGracePeriod.adoc[] +-- + +* Pod Settings > Add Metadata ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-PodMetadata.adoc[] +-- + +* Storage Settings ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-desc-mountVolume.adoc[] + +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +// include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-collectLogsOnVolume.adoc[] + +// include::../../../../../_custom-en/projectManagement/workloads/workloads-desc-enableLogCollectionProject.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-addPVCTemplate.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-mountVolume.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-mountSecretOrConfigmap.adoc[] +|=== + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-oper-editDeleteVolume.adoc[] +-- + +* Storage Settings > Add Persistent Volume Claim Template ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-volumeTemplate.adoc[] +-- + +* Storage Settings > Mount Volume > Persistent Volume ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-persistentVolume.adoc[] +-- + +* Storage Settings > Mount Volume > Temporary Volume ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-temporaryVolume.adoc[] +-- + +* Storage Settings > Mount Volume > HostPath Volume ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-hostpathVolume.adoc[] +-- + +* Storage Settings > Mount ConfigMap or Secret ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-mountConfigmapSecret.adoc[] +-- + +* Advanced Settings ++ +-- +Specify nodes for the pods managed by the workload and set the metadata for the workload. + +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +// include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-podIpPool.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-selectNode.adoc[] + +|Add Metadata +| +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-desc-setWorkloadMetadata.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-Metadata.adoc[] +|=== +-- + +* Cluster Differences ++ +-- +Differentiate the workload based on containers, ports, and environment variables in different clusters. + +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +include::../../../../../_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-setClusterDiff.adoc[] + +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/02-view-a-workload-list.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/02-view-a-workload-list.adoc new file mode 100644 index 000000000..d4c5ea346 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/02-view-a-workload-list.adoc @@ -0,0 +1,43 @@ +--- +title: "View Workload List" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads, workloads, view workload list" +description: "Learn how to view the workload list." +weight: 02 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **Application Workloads > Workloads** + + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-desc-viewAWorkloadList.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-multi-project-oper-openListPage.adoc[] ++ +==== +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-multi-project-para-workloadList.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-multi-project-oper-searchForWorkloads.adoc[] + +include::../../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/03-view-workload-details.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/03-view-workload-details.adoc new file mode 100644 index 000000000..5256b9dd5 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/03-view-workload-details.adoc @@ -0,0 +1,41 @@ +--- +title: "View Workload Details" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads, workloads, view workload details" +description: "Learn how to view workload details." +weight: 03 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **Application Workloads > Workloads** + + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-desc-viewWorkloadDetails.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-multi-project-oper-openListPage.adoc[] + ++ + +include::../../../../../_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-openDetailsPage.adoc[] + ++ + +include::../../../../../_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-viewWorkloadDetails_v4.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/04-edit-workload-information.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/04-edit-workload-information.adoc new file mode 100644 index 000000000..f18b0a6f9 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/04-edit-workload-information.adoc @@ -0,0 +1,37 @@ +--- +title: "Edit Workload Information" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads, workloads, edit workload information" +description: "Learn how to edit workload information." +weight: 04 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Workloads** + + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-desc-editWorkloadInformation.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-multi-project-oper-openListPage.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-oper-editWorkloadInformation.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/05-adjust-the-number-of-pod-replicas.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/05-adjust-the-number-of-pod-replicas.adoc new file mode 100644 index 000000000..c3a908fc0 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/05-adjust-the-number-of-pod-replicas.adoc @@ -0,0 +1,40 @@ +--- +title: "Adjust Number of Pod Replicas" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads, workloads, adjust number of pod replicas" +description: "Learn how to adjust the number of pod replicas." +weight: 05 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Workloads** + + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-desc-adjustTheNumberOfPodReplicas.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-multi-project-oper-openListPage.adoc[] + ++ + +include::../../../../../_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-openDetailsPage.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-oper-adjustTheNumberOfPodReplicas.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/06-stop-workloads.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/06-stop-workloads.adoc new file mode 100644 index 000000000..e5230dd93 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/06-stop-workloads.adoc @@ -0,0 +1,37 @@ +--- +title: "Stop Workloads" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads, workloads, stop workload" +description: "Learn how to stop a workload." +weight: 06 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Workloads** + + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-desc-stopWorkloads.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-multi-project-oper-openListPage.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-oper-stopWorkloads.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/07-edit-workload-settings.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/07-edit-workload-settings.adoc new file mode 100644 index 000000000..77215a854 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/07-edit-workload-settings.adoc @@ -0,0 +1,224 @@ +--- +title: "Edit Workload Settings" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads, workloads, edit workload settings" +description: "Learn how to edit workload settings." +weight: 07 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Workloads** + + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-desc-editWorkloadSettings.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-multi-project-oper-openListPage.adoc[] + ++ + +include::../../../../../_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-openDetailsPage.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-oper-editWorkloadSettings.adoc[] + ++ + +. In the **Edit Settings** dialog, set the update strategy, containers, storage, pod scheduling rules (only available for deployments), pod graceful period, and cluster differences for the workload, then click **OK**. For specific parameter settings, see link:#_parameter_description[Parameter Description]. + +== Parameter Description + +* Update Strategy ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-updatePolicy.adoc[] +-- + +* Update Strategy > Rolling Update Settings ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-rollingUpdate.adoc[] +-- + +* Containers > Add Container ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-addContainer.adoc[] +-- + +* Containers > Add Container > Container Settings ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-desc-setImageNameTypeResource.adoc[] + +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerImage.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerName.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerType.adoc[] + +include::../../../../../_custom-en/clusterManagement/projects/projects-para-containerQuotas.adoc[] +|=== +-- + +* Containers > Add Container > Port Settings ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-Port.adoc[] +-- + +* Containers > Add Container > Image Pull Policy ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-imagePullPolicy.adoc[] +-- + +* Containers > Add Container > Health Check ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-healthCheck.adoc[] +-- + +* Containers > Add Container > Lifecycle Management ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-lifecycleManagement.adoc[] +-- +* Containers > Add Container > Lifecycle Management > Add Action ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-addAction.adoc[] +-- +* Containers > Add Container > Start Command ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-startCommand.adoc[] +-- + +* Containers > Add Container > Environment Variables ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-environmentVariables.adoc[] +-- + +* Containers > Add Container > Container Security Context ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerSecurityContext.adoc[] +-- + +* Containers > Add Container > Sync Host Timezone ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-syncTimeZone.adoc[] +-- + +* Storage ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-desc-mountVolume.adoc[] + +[%header,cols="1a,4a"] +|=== +|Parameter |Description + +// include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-collectLogsOnVolume.adoc[] + + +// +// include::../../../../../_custom-en/projectManagement/workloads/workloads-desc-enableLogCollectionProject.adoc[] + +// + + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-mountVolume.adoc[] + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-mountSecretOrConfigmap.adoc[] +|=== + +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-oper-editDeleteVolume_new.adoc[] +-- + +* Storage > Mount Volume > Persistent Volume ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-persistentVolume.adoc[] +-- + +* Storage > Mount Volume > Temporary Volume ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-temporaryVolume.adoc[] +-- + +* Storage > Mount Volume > HostPath Volume ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-hostpathVolume.adoc[] +-- + +* Storage > Mount ConfigMap or Secret ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-mountConfigmapSecret.adoc[] +-- + +* Pod Scheduling Rules (only available for deployments) ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-podSchedulingRules.adoc[] +-- + +* Pod Scheduling Rules > Custom Rules ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-customRules.adoc[] +-- + +* Pod Graceful Period ++ +-- +include::../../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-PodGracePeriod.adoc[] +-- + +// * Pod IP Pool +// + +// -- +// Select to allocate IP addresses for pods. +// -- + +* Cluster Differences ++ +-- +In the **Cluster** area, select one or more clusters where the project resides to differentiate the workload based on containers, ports, and environment variables in the specified clusters. + +[%header, cols="1a,4a"] +|=== +|Parameter |Description + +include::../../../../../_custom-en/multi-clusterProjectManagement/workloads/workloads-oper-setClusterDiff.adoc[] + +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/08-delete-workloads.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/08-delete-workloads.adoc new file mode 100644 index 000000000..202c93925 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/08-delete-workloads.adoc @@ -0,0 +1,58 @@ +--- +title: "Delete Workloads" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads, workloads, delete workload" +description: "Learn how to delete a workload." +weight: 08 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Workloads** + + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-desc-deleteWorkloads.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Delete a Single Workload + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-multi-project-oper-openListPage.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-oper-deleteASingleWorkload.adoc[] + ++ + +. In the **Delete Workload** dialog, select the related resources to be deleted simultaneously, then click **OK**. + + +== Delete Multiple Workloads + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-multi-project-oper-openListPage.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/workloads/workloads-oper-deleteMultipleWorkloads.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/_index.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/_index.adoc new file mode 100644 index 000000000..6a3dbfd43 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/_index.adoc @@ -0,0 +1,27 @@ +--- +title: "Workloads" +keywords: "Kubernetes, {ks_product-en}, project management, application workloads, workloads" +description: "Learn how to manage workloads in multi-cluster projects." +weight: 03 +layout: "second" +--- + +// include::../../../../../_custom-en/clusterManagement/workloads/workloads-desc-workloads.adoc[] + +This section describes how to manage workloads. + +In KubeSphere, applications run in pods. To ensure business continuity when a single pod fails, it is usually necessary to create multiple pod replicas for an application. Workloads are resources used to manage pod replicas, responsible for managing multiple pod replicas of an application, and mainly provide the following functions: + +* Automatically scale the number of pod replicas based on user-defined conditions. + +* Automatically update pods based on the update strategy specified by the user. + +* Roll back pods to a previous version. + +Multi-cluster projects support the following workload types: + +* Deployment: Used to manage stateless applications. Deployments manage multiple pod replicas that share a volume. When a pod replica is recreated, the new pod replica has a different name from the old one. + +* StatefulSet: Used to manage stateful applications. StatefulSets manage multiple pod replicas that can use independent volumes. Each pod replica has a fixed sequence number, and when a pod replica is recreated, the new pod replica has the same name as the old one. + +// * DaemonSet: Used to manage daemons. DaemonSets ensure that all or specific nodes run a pod replica. When a new node is added to the cluster, if the new node meets the pod scheduling rules, the DaemonSet automatically creates a pod replica on the new node. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/01-create-a-route.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/01-create-a-route.adoc new file mode 100644 index 000000000..9e07be44f --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/01-create-a-route.adoc @@ -0,0 +1,41 @@ +--- +title: "Create Ingresses" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads, ingresses, create ingress" +description: "Learn how to create an ingress." +weight: 01 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Ingresses** + + +include::../../../../../_custom-en/clusterManagement/routes/routes-desc-createARoute.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + +* To create an ingress that supports the HTTPS protocol, you need to create a secret of type **TLS Information**, which must contain the Base64-encoded certificate and private key. For more information, see link:../../../05-configuration/01-secrets/01-create-a-secret/[Create a Secret]. + +* There must be at least one service in the project to which the ingress belongs. For more information, see link:../../02-services/01-create-a-stateful-or-stateless-service/[Create a Stateful or Stateless Service]. + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/routes/routes-oper-createARoute.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/02-view-a-route-list.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/02-view-a-route-list.adoc new file mode 100644 index 000000000..751d43e2e --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/02-view-a-route-list.adoc @@ -0,0 +1,39 @@ +--- +title: "View Ingress List" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads, ingresses, view ingress list" +description: "Learn how to view the ingress list." +weight: 02 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **Application Workloads > Ingresses** + + +include::../../../../../_custom-en/clusterManagement/routes/routes-desc-viewARouteList.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] ++ +==== +include::../../../../../_custom-en/multi-clusterProjectManagement/routes/routes-para-routeList.adoc[] + +include::../../../../../_custom-en/clusterManagement/routes/routes-oper-searchForRoutes.adoc[] + +include::../../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/03-view-route-details.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/03-view-route-details.adoc new file mode 100644 index 000000000..580a81558 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/03-view-route-details.adoc @@ -0,0 +1,37 @@ +--- +title: "View Ingress Details" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads, ingresses, view ingress details" +description: "Learn how to view ingress details." +weight: 03 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **Application Workloads > Ingresses** + + +include::../../../../../_custom-en/clusterManagement/routes/routes-desc-viewRouteDetails.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/routes/routes-oper-openDetailsPage.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/routes/routes-oper-viewRouteDetails-for-kubefed.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/04-edit-route-information.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/04-edit-route-information.adoc new file mode 100644 index 000000000..9c5b3eb3b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/04-edit-route-information.adoc @@ -0,0 +1,33 @@ +--- +title: "Edit Ingress Information" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads, ingresses, edit ingress information" +description: "Learn how to edit ingress information." +weight: 04 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Ingresses** + + +include::../../../../../_custom-en/clusterManagement/routes/routes-desc-editRouteInformation.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/routes/routes-oper-editRouteInformation.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/05-edit-routing-rules.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/05-edit-routing-rules.adoc new file mode 100644 index 000000000..cd5df03a6 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/05-edit-routing-rules.adoc @@ -0,0 +1,32 @@ +--- +title: "Edit Routing Rules" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads, ingresses, edit routing rules" +description: "Learn how to edit routing rules." +weight: 05 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Ingresses** + + +include::../../../../../_custom-en/clusterManagement/routes/routes-desc-editingRutingRules.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/routes/routes-oper-editRoutingRules.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/06-edit-route-annotations.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/06-edit-route-annotations.adoc new file mode 100644 index 000000000..c92acbaa4 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/06-edit-route-annotations.adoc @@ -0,0 +1,33 @@ +--- +title: "Edit Ingress Annotations" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads, ingresses, edit ingress annotations" +description: "Learn how to edit ingress annotations." +weight: 06 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Ingresses** + + +include::../../../../../_custom-en/clusterManagement/routes/routes-desc-editRouteAnnotations.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/routes/routes-oper-editRouteAnnotations.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/07-delete-routes.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/07-delete-routes.adoc new file mode 100644 index 000000000..fbc908167 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/07-delete-routes.adoc @@ -0,0 +1,45 @@ +--- +title: "Delete Ingresses" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads, ingresses, delete ingress" +description: "Learn how to delete an ingress." +weight: 07 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **Application Workloads > Ingresses** + + +include::../../../../../_custom-en/clusterManagement/routes/routes-desc-deleteMultipleRoutes.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + +== Delete a Single Ingress + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/routes/routes-oper-deleteASingleRoute.adoc[] + + +== Batch Delete Ingresses + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/routes/routes-oper-deleteRoutes.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/_index.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/_index.adoc new file mode 100644 index 000000000..1742f6009 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/04-routes/_index.adoc @@ -0,0 +1,12 @@ +--- +title: "Ingresses" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads, ingresses" +description: "Learn how to manage ingresses in multi-cluster projects." +weight: 04 +layout: "second" +--- + + +include::../../../../../_custom-en/clusterManagement/routes/routes-desc-routes.adoc[] + +For more information about cluster gateways and project gateways, see link:../../../12-gateway/[KubeSphere Gateways]. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/_index.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/_index.adoc new file mode 100644 index 000000000..095e6d58c --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/_index.adoc @@ -0,0 +1,9 @@ +--- +title: "Application Workloads" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, application workloads" +description: "Learn how to manage application workloads in multi-cluster projects." +weight: 03 +layout: "second" +--- + +This section describes how to manage applications, services, workloads, and ingresses in multi-cluster projects. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/01-create-a-persistent-volume-claim.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/01-create-a-persistent-volume-claim.adoc new file mode 100644 index 000000000..d81f1b2f2 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/01-create-a-persistent-volume-claim.adoc @@ -0,0 +1,37 @@ +--- +title: "创建持久卷声明" +keywords: "Kubernetes, {ks_product}, 联邦项目, 存储, 持久卷声明, 创建持久卷声明" +description: "介绍如何创建持久卷声明。" +weight: 01 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **持久卷声明** + + +include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-desc-createAPersistentVolumeClaim.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-oper-createAPersistentVolumeClaim-for-kubefed.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/02-view-a-persistent-volume-claim-list.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/02-view-a-persistent-volume-claim-list.adoc new file mode 100644 index 000000000..f8f7b0619 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/02-view-a-persistent-volume-claim-list.adoc @@ -0,0 +1,39 @@ +--- +title: "查看持久卷声明列表" +keywords: "Kubernetes, {ks_product}, 联邦项目, 存储, 持久卷声明, 查看持久卷声明列表" +description: "介绍如何查看持久卷声明列表。" +weight: 02 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **持久卷声明** +:kubefed: + +include::../../../../_custom-en/clusterManagement/pods/pods-desc-viewAPersistentVolumeList.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] ++ +==== +include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-para-persistentVolumeClaimList.adoc[] + +include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-oper-searchForPersistentVolumeClaims.adoc[] + +include::../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/03-view-persistent-volume-claim-details.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/03-view-persistent-volume-claim-details.adoc new file mode 100644 index 000000000..cf19360a8 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/03-view-persistent-volume-claim-details.adoc @@ -0,0 +1,38 @@ +--- +title: "查看持久卷声明详情" +keywords: "Kubernetes, {ks_product}, 联邦项目, 存储, 持久卷声明, 查看持久卷声明详情" +description: "介绍如何查看持久卷声明详情。" +weight: 03 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **持久卷声明** + + +include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-desc-viewPersistentVolumeClaimDetails.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-oper-openDetailsPage.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-oper-viewPersistentVolumeClaimDetails-for-kubefed.adoc[] + diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/04-edit-persistent-volume-claim-information.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/04-edit-persistent-volume-claim-information.adoc new file mode 100644 index 000000000..e6d964d7c --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/04-edit-persistent-volume-claim-information.adoc @@ -0,0 +1,33 @@ +--- +title: "编辑持久卷声明信息" +keywords: "Kubernetes, {ks_product}, 联邦项目, 存储, 持久卷声明, 编辑持久卷声明信息" +description: "介绍如何编辑持久卷声明信息。" +weight: 04 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **持久卷声明** + + +include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-desc-editPersistentVolumeClaimInformation.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-oper-editPersistentVolumeClaimInformation.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/05-delete-persistent-volume-claims.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/05-delete-persistent-volume-claims.adoc new file mode 100644 index 000000000..a3164a3ce --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/05-delete-persistent-volume-claims.adoc @@ -0,0 +1,48 @@ +--- +title: "删除持久卷声明" +keywords: "Kubernetes, {ks_product}, 联邦项目, 存储, 持久卷声明, 删除持久卷声明" +description: "介绍如何删除持久卷声明。" +weight: 05 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **持久卷声明** + + +include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-desc-deletePersistentVolumeClaims.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + +include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-prer-backData.adoc[] + + +== 删除单个持久卷声明 + +include::../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-oper-deleteASinglePersistentVolumeClaim.adoc[] + + +== 批量删除持久卷声明 + +include::../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-oper-deleteMultiplePersistentVolumeClaims.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/_index.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/_index.adoc new file mode 100644 index 000000000..3e68f42c2 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/04-peristent-volume-claims/_index.adoc @@ -0,0 +1,11 @@ +--- +title: "Persistent Volume Claims" +keywords: "Kubernetes, {ks_product-en}, multi-cluster projects, storage, persistent volume claims" +description: "Learn how to manage persistent volume claims in multi-cluster projects." +weight: 04 +layout: "second" +--- + +This section describes how to manage persistent volume claims. + +The system creates storage areas for containers in the backend storage system based on the parameters in the persistent volume claim, with each storage area corresponding to a persistent volume on the {ks_product-en} platform. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/01-create-a-secret.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/01-create-a-secret.adoc new file mode 100644 index 000000000..8ab290069 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/01-create-a-secret.adoc @@ -0,0 +1,37 @@ +--- +title: "创建保密字典" +keywords: "Kubernetes, {ks_product}, 联邦项目, 配置, 保密字典, 创建保密字典" +description: "介绍如何创建保密字典。" +weight: 01 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **配置 > 保密字典** + + +include::../../../../../_custom-en/clusterManagement/secrets/secrets-desc-createASecret.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/secrets/secrets-oper-createASecret.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/02-view-a-secret-list.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/02-view-a-secret-list.adoc new file mode 100644 index 000000000..2ef6f9387 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/02-view-a-secret-list.adoc @@ -0,0 +1,39 @@ +--- +title: "查看保密字典列表" +keywords: "Kubernetes, {ks_product}, 联邦项目, 配置, 保密字典, 查看保密字典列表" +description: "介绍如何查看保密字典列表。" +weight: 02 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **配置 > 保密字典** +:kubefed: + +include::../../../../../_custom-en/clusterManagement/secrets/secrets-desc-viewASecretList.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] ++ +==== +include::../../../../../_custom-en/clusterManagement/secrets/secrets-para-secretList.adoc[] + +include::../../../../../_custom-en/clusterManagement/secrets/secrets-oper-searchForSecrets.adoc[] + +include::../../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/03-view-secret-details.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/03-view-secret-details.adoc new file mode 100644 index 000000000..9dbbd239b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/03-view-secret-details.adoc @@ -0,0 +1,37 @@ +--- +title: "查看保密字典详情" +keywords: "Kubernetes, {ks_product}, 联邦项目, 配置, 保密字典, 查看保密字典详情" +description: "介绍如何查看保密字典详情。" +weight: 03 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **配置 > 保密字典** + + +include::../../../../../_custom-en/clusterManagement/secrets/secrets-desc-viewSecretDetails.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/secrets/secrets-oper-openSecretDetailsPage.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/secrets/secrets-oper-viewSecretDetails-for-kubefed.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/04-edit-secret-information.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/04-edit-secret-information.adoc new file mode 100644 index 000000000..53b1f025b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/04-edit-secret-information.adoc @@ -0,0 +1,33 @@ +--- +title: "编辑保密字典信息" +keywords: "Kubernetes, {ks_product}, 联邦项目, 配置, 保密字典, 编辑保密字典信息" +description: "介绍如何编辑保密字典的键值对数据。" +weight: 04 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **配置 > 保密字典** + + +include::../../../../../_custom-en/clusterManagement/secrets/secrets-desc-editSecretInformation.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/secrets/secrets-oper-editSecretInformation.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/05-edit-secret-settings.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/05-edit-secret-settings.adoc new file mode 100644 index 000000000..c3c013ddd --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/05-edit-secret-settings.adoc @@ -0,0 +1,33 @@ +--- +title: "编辑保密字典设置" +keywords: "Kubernetes, {ks_product}, 联邦项目, 配置, 保密字典, 编辑保密字典设置" +description: "介绍如何编辑保密字典的设置。" +weight: 05 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **配置 > 保密字典** + + +include::../../../../../_custom-en/clusterManagement/secrets/secrets-desc-editSecretSettings.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/secrets/secrets-oper-editSecretSettings.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/06-delete-secrets.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/06-delete-secrets.adoc new file mode 100644 index 000000000..d080932d2 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/06-delete-secrets.adoc @@ -0,0 +1,46 @@ +--- +title: "删除保密字典" +keywords: "Kubernetes, {ks_product}, 联邦项目, 配置, 保密字典, 删除保密字典" +description: "介绍如何删除保密字典。" +weight: 06 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **配置 > 保密字典** + + +include::../../../../../_custom-en/clusterManagement/secrets/secrets-desc-deleteSecrets.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== 删除单个保密字典 + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/secrets/secrets-oper-deleteASingleSecret.adoc[] + + +== 批量删除保密字典 + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/secrets/secrets-oper-deleteMultipleSecrets.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/_index.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/_index.adoc new file mode 100644 index 000000000..08454a6c4 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/01-secrets/_index.adoc @@ -0,0 +1,11 @@ +--- +title: "保密字典" +keywords: "Kubernetes, {ks_product}, 联邦项目, 配置, 保密字典" +description: "介绍如何管理联邦项目中的保密字典。" +weight: 01 +layout: "second" +--- + + + +include::../../../../../_custom-en/clusterManagement/secrets/secrets-desc-secrets.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/01-create-a-configmap.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/01-create-a-configmap.adoc new file mode 100644 index 000000000..7bc976c95 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/01-create-a-configmap.adoc @@ -0,0 +1,37 @@ +--- +title: "创建配置字典" +keywords: "Kubernetes, {ks_product}, 联邦项目, 配置, 配置字典, 创建配置字典" +description: "介绍如何创建配置字典。" +weight: 01 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **配置 > 配置字典** + + +include::../../../../../_custom-en/clusterManagement/configmaps/configmaps-desc-createAConfigmap.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/configmaps/configmaps-oper-createAConfigmap.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/02-view-a-configmap-list.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/02-view-a-configmap-list.adoc new file mode 100644 index 000000000..965ec6913 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/02-view-a-configmap-list.adoc @@ -0,0 +1,39 @@ +--- +title: "查看配置字典列表" +keywords: "Kubernetes, {ks_product}, 联邦项目, 配置, 配置字典, 查看配置字典列表" +description: "介绍如何查看配置字典列表。" +weight: 02 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **配置 > 配置字典** + + +include::../../../../../_custom-en/clusterManagement/configmaps/configmaps-desc-viewAConfigmapList.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] ++ +==== +include::../../../../../_custom-en/multi-clusterProjectManagement/configmaps/configmaps-para-configmapList.adoc[] + +include::../../../../../_custom-en/clusterManagement/configmaps/configmaps-oper-searchForConfigmaps.adoc[] + +include::../../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/03-view-configmap-details.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/03-view-configmap-details.adoc new file mode 100644 index 000000000..a26d3ead9 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/03-view-configmap-details.adoc @@ -0,0 +1,37 @@ +--- +title: "查看配置字典详情" +keywords: "Kubernetes, {ks_product}, 联邦项目, 配置, 配置字典, 查看配置字典详情" +description: "介绍如何查看配置字典详情。" +weight: 03 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **配置 > 配置字典** + + +include::../../../../../_custom-en/clusterManagement/configmaps/configmaps-desc-viewConfigmapDetails.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/configmaps/configmaps-oper-openDetailsPage.adoc[] + ++ + +include::../../../../../_custom-en/multi-clusterProjectManagement/configmaps/configmaps-oper-viewConfigmapDetails.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/04-edit-configmap-information.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/04-edit-configmap-information.adoc new file mode 100644 index 000000000..698c750e0 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/04-edit-configmap-information.adoc @@ -0,0 +1,33 @@ +--- +title: "编辑配置字典信息" +keywords: "Kubernetes, {ks_product}, 联邦项目, 配置, 配置字典, 编辑配置字典信息" +description: "介绍如何编辑配置字典信息。" +weight: 04 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **配置 > 配置字典** + + +include::../../../../../_custom-en/clusterManagement/configmaps/configmaps-desc-editConfigmapInformation.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/configmaps/configmaps-oper-editConfigmapInformation.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/05-edit-configmap-settings.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/05-edit-configmap-settings.adoc new file mode 100644 index 000000000..c5b106785 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/05-edit-configmap-settings.adoc @@ -0,0 +1,33 @@ +--- +title: "编辑配置字典设置" +keywords: "Kubernetes, {ks_product}, 联邦项目, 配置, 配置字典, 编辑配置字典设置" +description: "介绍如何编辑配置字典设置。" +weight: 05 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **配置 > 配置字典** + + +include::../../../../../_custom-en/clusterManagement/configmaps/configmaps-desc-editConfigmapSettings.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/configmaps/configmaps-oper-editConfigmapSettings.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/06-delete-configmaps.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/06-delete-configmaps.adoc new file mode 100644 index 000000000..e57889c60 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/06-delete-configmaps.adoc @@ -0,0 +1,46 @@ +--- +title: "删除配置字典" +keywords: "Kubernetes, {ks_product}, 联邦项目, 配置, 配置字典, 删除配置字典" +description: "介绍如何删除配置字典。" +weight: 06 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **配置 > 配置字典** + + +include::../../../../../_custom-en/clusterManagement/configmaps/configmaps-desc-deleteConfigmaps.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== 删除单个配置字典 + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/configmaps/configmaps-oper-deleteASingleConfigmap.adoc[] + + +== 批量删除配置字典 + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/configmaps/configmaps-oper-deleteMultipleConfigmaps.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/_index.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/_index.adoc new file mode 100644 index 000000000..32fac0fe2 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/02-configmaps/_index.adoc @@ -0,0 +1,13 @@ +--- +title: "配置字典" +keywords: "Kubernetes, {ks_product}, 联邦项目, 配置, 配置字典" +description: "介绍如何管理联邦项目中的配置字典。" +weight: 02 +layout: "second" +--- + + + +include::../../../../../_custom-en/clusterManagement/configmaps/configmaps-desc-configmaps.adoc[] + +配置字典仅用于存储非保密数据。如需存储保密数据,请使用link:../01-secrets/[保密字典]。 diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/_index.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/_index.adoc new file mode 100644 index 000000000..853d7c1bf --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/05-configuration/_index.adoc @@ -0,0 +1,11 @@ +--- +title: "配置" +keywords: "Kubernetes, {ks_product}, 联邦项目, 配置" +description: "介绍如何管理保密字典、配置字典和服务帐户。" +weight: 05 +layout: "second" +--- + + + +include::../../../../_custom-en/multi-clusterProjectManagement/configmaps/config-desc.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/01-view-project-basic-information.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/01-view-project-basic-information.adoc new file mode 100644 index 000000000..7796253d7 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/01-view-project-basic-information.adoc @@ -0,0 +1,45 @@ +--- +title: "查看项目基本信息" +keywords: "Kubernetes, {ks_product}, 联邦项目, 项目设置, 基本信息, 查看项目基本信息" +description: "介绍如何查看项目基本信息。" +weight: 01 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **项目设置 > 基本信息** + + +本节介绍如何查看项目基本信息。 + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] ++ +-- +**基本信息**页面提供以下信息: + +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|项目信息 +|当前项目的信息,包括项目名称、所属企业空间、创建者和创建时间。 + +include::../../../../../_custom-en/clusterManagement/projects/projects-para-defaultContainerQuotas.adoc[] + +// include::../../../../../_custom-en/clusterManagement/projects/projects-para-projectQuotas.adoc[] +|=== +-- diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/02-edit-project-information.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/02-edit-project-information.adoc new file mode 100644 index 000000000..3ea23853b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/02-edit-project-information.adoc @@ -0,0 +1,46 @@ +--- +title: "编辑项目信息" +keywords: "Kubernetes, {ks_product}, 联邦项目, 项目设置, 基本信息, 编辑项目信息" +description: "介绍如何编辑项目信息。" +weight: 02 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **项目设置 > 基本信息** + + +本节介绍如何编辑项目基本信息。 + +您可以编辑项目的别名和描述。{ks_product_right}不支持编辑已创建项目的名称。 + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**基本信息**页面,点击**管理**,然后在下拉列表中选择**编辑信息**。 + +. 在**编辑信息**对话框,设置项目的别名和描述,然后点击**确定**。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +include::../../../../../_custom-en/clusterManagement/projects/projects-para-aliasDescription.adoc[] +|=== +-- diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/03-edit-annotation.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/03-edit-annotation.adoc new file mode 100644 index 000000000..db621cd28 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/03-edit-annotation.adoc @@ -0,0 +1,41 @@ +--- +title: "编辑项目注解" +keywords: "Kubernetes, {ks_product}, 联邦项目, 项目设置, 基本信息,添加项目集群" +description: "介绍如何编辑项目注解。" +weight: 03 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **项目设置 > 基本信息** + + +本节介绍如何编辑项目注解。 + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**基本信息**页面,点击**管理**,然后在下拉列表中选择**编辑注解**。 + +. 在弹出的对话框中,设置注解的键值对,然后点击**确定**。注解添加完成后将显示在项目基本信息页面。 ++ +-- +* 点击**添加**可以为当前项目添加一个或多个注解。 + +* 点击 image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18] 可删除当前待添加的注解。 +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/04-add-cluster.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/04-add-cluster.adoc new file mode 100644 index 000000000..2728a6d0e --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/04-add-cluster.adoc @@ -0,0 +1,41 @@ +--- +title: "添加项目集群" +keywords: "Kubernetes, {ks_product}, 联邦项目, 项目设置, 基本信息,添加项目集群" +description: "介绍如何添加项目集群。" +weight: 04 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **项目设置 > 基本信息** + + +本节介绍如何添加项目到其他集群。添加后将自动在对应集群创建当前项目。 + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**基本信息**页面,点击**管理**,然后在下拉列表中选择**添加集群**。 + +. 在弹出的对话框中,从下拉列表中选择想要添加当前项目的集群,然后点击**确定**。集群添加后将自动在对应集群创建当前项目。 ++ +-- +* 点击**添加集群**可以将当前项目添加到一个或多个集群。 + +* 点击 image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18] 可删除当前待添加的集群。 +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/05-edit-default-container-quotas.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/05-edit-default-container-quotas.adoc new file mode 100644 index 000000000..1d9d546fd --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/05-edit-default-container-quotas.adoc @@ -0,0 +1,37 @@ +--- +title: "编辑默认容器配额" +keywords: "Kubernetes, {ks_product}, 联邦项目, 项目设置, 基本信息, 编辑默认容器配额" +description: "介绍如何编辑默认容器配额。" +weight: 05 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **项目设置 > 基本信息** + + +include::../../../../../_custom-en/clusterManagement/projects/projects-desc-editDefaultContainerQuotas.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**基本信息**页面,点击**管理**,然后在下拉列表中选择**编辑默认容器配额**。 + ++ + +include::../../../../../_custom-en/clusterManagement/projects/projects-oper-editDefaultContainerQuotas.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/06-delete-a-project.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/06-delete-a-project.adoc new file mode 100644 index 000000000..c22d4b58c --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/06-delete-a-project.adoc @@ -0,0 +1,38 @@ +--- +title: "删除项目" +keywords: "Kubernetes, {ks_product}, 联邦项目, 项目设置, 基本信息, 删除项目" +description: "介绍如何删除项目。" +weight: 06 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **项目设置 > 基本信息** + + +include::../../../../../_custom-en/clusterManagement/projects/projects-desc-deleteProjects.adoc[] + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**基本信息**页面,点击**管理**,然后在下拉列表中选择**删除项目**。 + ++ + +include::../../../../../_custom-en/clusterManagement/projects/projects-oper-deleteASingleProject.adoc[] + diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/_index.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/_index.adoc new file mode 100644 index 000000000..702e364d7 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/01-basic-information/_index.adoc @@ -0,0 +1,11 @@ +--- +title: "基本信息" +keywords: "Kubernetes, {ks_product}, 联邦项目, 项目设置, 基本信息" +description: "介绍如何查看和管理联邦项目的基本信息。" +weight: 01 +layout: "second" +--- + + + +本节介绍如何查看和管理联邦项目的基本信息。 diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/02-project-quotas/01-view-project-quotas.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/02-project-quotas/01-view-project-quotas.adoc new file mode 100644 index 000000000..c9fffe4a5 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/02-project-quotas/01-view-project-quotas.adoc @@ -0,0 +1,35 @@ +--- +title: "查看项目配额" +keywords: "Kubernetes, {ks_product}, 联邦项目, 项目设置, 项目配额, 查看项目配额" +description: "介绍如何查看项目配额。" +weight: 01 +--- + +:ks_permission: **Federated Project Viewing** +:ks_navigation: **项目设置 > 项目配额** + + +本节介绍如何查看项目配额。 + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] ++ +-- +**项目配额**页面提供以下资源信息: + +include::../../../../../_custom-en/multi-clusterProjectManagement/project-config/project-quota-para_v4.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/02-project-quotas/02-edit-project-quotas.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/02-project-quotas/02-edit-project-quotas.adoc new file mode 100644 index 000000000..f5116838c --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/02-project-quotas/02-edit-project-quotas.adoc @@ -0,0 +1,35 @@ +--- +title: "编辑项目配额" +keywords: "Kubernetes, {ks_product}, 联邦项目, 项目设置, 项目配额, 编辑项目配额" +description: "介绍如何编辑项目配额。" +weight: 02 +--- + +:ks_permission: **Federated Project Management** +:ks_navigation: **项目设置 > 项目配额** + + +本节介绍如何编辑项目配额。 + + +== Prerequisites + +* **Application Management for Cluster Federation** should have been installed and enabled. + +* {empty} +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-prer-requiredPermission_v4.adoc[] + + +== Steps + +include::../../../../../_custom-en/multi-clusterProjectManagement/projectManagement-oper-openProjectPage_v4.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + +. 在**项目配额**页面,点击右上角的**编辑配额**,进入配额编辑页面。 + ++ + +include::../../../../../_custom-en/clusterManagement/projects/projects-oper-editProjectQuotas-for-kubefed.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/02-project-quotas/_index.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/02-project-quotas/_index.adoc new file mode 100644 index 000000000..cf21d5ad8 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/02-project-quotas/_index.adoc @@ -0,0 +1,10 @@ +--- +title: "项目配额" +keywords: "Kubernetes, {ks_product}, 联邦项目, 项目设置, 项目配额" +description: "介绍如何查看和管理联邦项目的配额。" +weight: 02 +layout: "second" +--- + + +本节介绍如何查看和管理联邦项目的配额。 diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/_index.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/_index.adoc new file mode 100644 index 000000000..21b5b59cc --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/06-project-settings/_index.adoc @@ -0,0 +1,8 @@ +--- +title: "项目设置" +keywords: "Kubernetes, {ks_product}, 联邦项目, 项目设置" +description: "介绍如何管理项目设置。" +weight: 06 +layout: "second" +--- + diff --git a/content/en/docs/v4.1/11-use-extensions/04-kubefed/_index.adoc b/content/en/docs/v4.1/11-use-extensions/04-kubefed/_index.adoc new file mode 100644 index 000000000..fb905fd44 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/04-kubefed/_index.adoc @@ -0,0 +1,16 @@ +--- +title: "Application Management for Cluster Federation" +keywords: "Kubernetes, {ks_product-en}, federated project" +description: "Learn how to manage federated projects and how to manage application workloads, volumes, configuration resources, and project settings in federated projects." +weight: 04 +layout: "second" +--- + + +This section describes how to use the "Application Management for Cluster Federation" extension to manage federated projects, and how to manage application workloads, persistent volume claims, configuration resources, and project settings in federated projects. + +A federated project is a project created based on multiple clusters. Resources in a federated project can run on different clusters. + +Application Management for Cluster Federation is an extension designed to simplify the management of applications across multiple federated Kubernetes clusters. Users can easily deploy, update, and manage applications across multiple federated clusters, while providing flexible configuration options to meet different needs. + +After installing the "Application Management for Cluster Federation" extension, **Multi-cluster Projects** will be displayed under the **Projects** menu in the left navigation pane of the workspace. \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-platform-services/01-intro.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-platform-services/01-intro.adoc new file mode 100644 index 000000000..9db3cc0c7 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-platform-services/01-intro.adoc @@ -0,0 +1,125 @@ +--- +title: "配置 WhizardTelemetry 平台服务" +description: "介绍如何配置 WhizardTelemetry 平台服务。" +weight: 01 +--- + +WhizardTelemetry 平台服务是 WhizardTelemetry 可观测平台中各扩展组件的公共服务。它是各个可观测性扩展组件通用的 APIServer,为所有可观测性扩展组件提供公共的后端平台服务。 + +**配置说明:** + +* 修改 WhizardTelemetry 平台服务的扩展组件配置,可配合 WhizardTelemetry 监控扩展组件,启用 Whizard 可观测中心。有关更多信息,请参阅 link:../../07-whizard/01-enable-whizard/[Whizard 可观测中心]。 + +* 为 WhizardTelemetry 日志、WhizardTelemetry 审计、WhizardTelemetry 事件、以及通知历史配置 OpenSearch 日志接收器时,如果需要使用多个 OpenSearch 数据库,可以按如下配置。 +// 有关组件配置的更多信息,请参阅扩展中心“WhizardTelemetry 平台服务”扩展组件的详情页说明。 ++ +[,yaml] +---- +whizard-telemetry: + config: + monitoring: + enabled: true + kind: 0 + endpoint: http://prometheus-k8s.kubesphere-monitoring-system.svc:9090 + observability: + enabled: false + endpoint: "http://query-frontend-whizard-operated.kubesphere-monitoring-system.svc:10902" + notification: + endpoint: http://notification-manager-svc.kubesphere-monitoring-system.svc:19093 + history: + enable: true + server: + elasticsearch: + endpoints: + - https://: + version: opensearchv2 + indexPrefix: notification-history + basicAuth: true + username: admin + password: admin + auditing: + enable: true + servers: + - elasticsearch: + cluster: + - cluster1 + - cluster2 + endpoints: + - https://: + version: opensearchv2 + indexPrefix: auditing + basicAuth: true + username: admin + password: admin + - elasticsearch: + cluster: + - cluster3 + - cluster4 + endpoints: + - https://: + version: opensearchv2 + indexPrefix: auditing + basicAuth: true + username: admin + password: admin + events: + enable: true + servers: + - elasticsearch: + cluster: + - cluster1 + - cluster2 + endpoints: + - https://opensearch-cluster-data.kubesphere-logging-system:9200 + version: opensearchv2 + indexPrefix: events + basicAuth: true + username: admin + password: admin + - elasticsearch: + cluster: + - cluster3 + - cluster4 + endpoints: + - https://opensearch-cluster-data.kubesphere-logging-system:9200 + version: opensearchv2 + indexPrefix: events + basicAuth: true + username: admin + password: admin + logging: + enable: true + servers: + - elasticsearch: + cluster: + - cluster1 + - cluster2 + endpoints: + - https://: + version: opensearchv2 + indexPrefix: logs + basicAuth: true + username: admin + password: admin + - elasticsearch: + cluster: + - cluster3 + - cluster4 + endpoints: + - https://: + version: opensearchv2 + indexPrefix: logs + basicAuth: true + username: admin + password: admin +---- + + +// //note +// [.admon.note,cols="a"] +// |=== +// |说明 + +// | +// 修改 WhizardTelemetry 平台服务的扩展组件配置,可配合 WhizardTelemetry 监控扩展组件,启用 Whizard 可观测中心。有关更多信息,请参阅 link:../../07-whizard/01-enable-whizard/[Whizard 可观测中心]。 +// |=== diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-platform-services/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-platform-services/_index.adoc new file mode 100644 index 000000000..eec972341 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-platform-services/_index.adoc @@ -0,0 +1,6 @@ +--- +title: "WhizardTelemetry 平台服务" +description: "介绍 WhizardTelemetry 平台服务。" +weight: 01 +layout: "second" +--- diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-vector/02-etl-solution/01-write-data-to-kafka.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-vector/02-etl-solution/01-write-data-to-kafka.adoc new file mode 100644 index 000000000..64331aa3f --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-vector/02-etl-solution/01-write-data-to-kafka.adoc @@ -0,0 +1,293 @@ +--- +title: "步骤 1:使用 Vector 将数据写入 Kafka" +weight: 01 +--- + + +== 部署 KSE 并安装日志相关组件 + +{ks_product_right}中需要安装的扩展组件: + +- RadonDB DMP +- OpenSearch 分布式检索与分析引擎 +- WhizardTelemetry 平台服务 +- WhizardTelemetry 数据流水线 +- WhizardTelemetry 日志 +- WhizardTelemetry 审计 +- WhizardTelemetry 通知 +- WhizardTelemetry 事件 + +=== 禁用 OpenSearch Sink + +在安装部署 WhizardTelemetry 日志、WhizardTelemetry 审计、WhizardTelemetry 事件以及 WhizardTelemetry 通知前,需要禁用这些扩展组件配置中 opensearch 的 sink。 + +以安装 WhizardTelemetry 审计扩展组件为例,将 sinks.opensearch.enabled 设置为 false。 + +image:/images/ks-qkcp/zh/v4.1/disable-opensearch.png[vector,100%] + +== 配置 Kafka + +在{ks_product_both}中,安装 **RadonDB DMP** 扩展组件后,点击顶部导航栏上的image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,然后点击 RadonDB DMP 进入数据库管理平台,创建 Kafka 集群以用于收集日志。 + +image:/images/ks-qkcp/zh/v4.1/dmp.png[vector,100%] + +image:/images/ks-qkcp/zh/v4.1/kafka.png[vector,100%] + +=== 启用自动创建 topic + +点击 Kafka 集群名称,进入**参数管理**页签,启用自动创建 topic 的功能。 + +image:/images/ks-qkcp/zh/v4.1/parameter.png[vector,100%] + +image:/images/ks-qkcp/zh/v4.1/enable-topic.png[vector,100%] + +[.admon.note,cols="a"] +|=== +|说明 + +| +在 Kafka 集群的详情页左侧可获取 Kafka 的读写地址。 +|=== + + +=== 创建 Kafka 用户 + +. 在 Kafka 集群的详情页面,进入 **Kafka 用户**页签,点击**创建**开始创建 Kafka 用户。 ++ +image:/images/ks-qkcp/zh/v4.1/kafka-user.png[vector,100%] + +. 按下图所示设置用户权限。 ++ +image:/images/ks-qkcp/zh/v4.1/user-permission.png[vector, 70%] + + +=== 获取证书 + +==== 查看证书相关信息 + +为了与 Kafka 通信,需要配置相关的证书及文件,具体为 -cluster-ca-cert,以及上一个步骤中创建的用户的 user.p12 字段及密码,详细信息可在{ks_product_left} Web 控制台界面上查询,如下所示。 + + +. 点击页面上方的**工作台 > 集群管理**,进入 host 集群。 +. 在左侧导航栏选择**配置 > 保密字典**。 +. 在**保密字典**页面,搜索 `cluster-ca-cert`,点击 Kafka 集群对应的保密字典进入详情页面,查看 **ca-crt** 字段的信息。 ++ +image:/images/ks-qkcp/zh/v4.1/ca-crt.png[vector,100%] ++ +. 在**保密字典**页面,搜索已创建的 Kafka 用户的名称,点击其对应的保密字典进入详情页面,查看 **user.p12** 及 **user.password** 字段的信息。 ++ +image:/images/ks-qkcp/zh/v4.1/user-password.png[vector,100%] + +==== 生成证书 + +. 在 Kafka 所在集群的节点上,执行以下命令。 ++ +==== +[.admon.note,cols="a"] +|=== +|说明 + +| +**kafka cluster** 为 Kafka 集群的名称,**kafka namespace** 为 Kafka 所在的 namespace,**kafka user** 为之前创建的 Kafka 用户。 +|=== + +[,bash] +---- +export kafka_cluster=< kafka cluster > +export kafka_namespace=< kafka namespace > +export kafka_user=< kafka user > +echo -e "apiVersion: v1\ndata:" > kafka-ca.yaml +echo " ca.crt: $(kubectl get secret -n $kafka_namespace ${kafka_cluster}-cluster-ca-cert \ +-o jsonpath='{.data.ca\.crt}')" >> kafka-ca.yaml +echo -e "kind: Secret\nmetadata:\n name: kafka-agent-cluster-ca\n labels:\n logging.whizard.io/certification: 'true'\n logging.whizard.io/vector-role: Agent\n \ +namespace: kubesphere-logging-system\ntype: Opaque" >> kafka-ca.yaml +echo "---" >> kafka-ca.yaml +echo -e "apiVersion: v1\ndata:" >> kafka-ca.yaml +echo " user.p12: $(kubectl get secret -n $kafka_namespace ${kafka_user} \ +-o jsonpath='{.data.user\.p12}')" >> kafka-ca.yaml +echo -e "kind: Secret\nmetadata:\n name: kafka-agent-user-ca\n labels:\n logging.whizard.io/certification: 'true'\n logging.whizard.io/vector-role: Agent\n \ +namespace: kubesphere-logging-system\ntype: Opaque" >> kafka-ca.yaml +---- + +此命令会生成 **kafka-ca.yaml** 文件,包含 **kafka-agent-cluster-ca** 以及 **kafka-agent-user-ca** 两个 secret 文件,分别含有上一个步骤中的 ca.crt 以及 user.p12 信息。示例如下: + +[,yaml] +---- +apiVersion: v1 +data: + ca.crt: xxx +kind: Secret +metadata: + name: kafka-agent-cluster-ca + labels: + logging.whizard.io/certification: 'true' + logging.whizard.io/vector-role: Agent + namespace: kubesphere-logging-system +type: Opaque +--- +apiVersion: v1 +data: + user.p12: xxxx +kind: Secret +metadata: + name: kafka-agent-user-ca + labels: + logging.whizard.io/certification: 'true' + logging.whizard.io/vector-role: Agent + namespace: kubesphere-logging-system +---- +==== + +. 将 **kafka-ca.yaml** 文件复制到需要收集日志数据的集群节点上,执行以下命令。 ++ +-- +[,bash] +---- +kubectl apply -f kafka-ca.yaml +---- + +此命令会在 **kubesphere-logging-system** 项目下创建 **kafka-agent-cluster-ca** 以及 **kafka-agent-user-ca** 两个 secret 文件。vector-config 会自动加载这两个 secret,并且在 vector 中配置相关证书。 +-- + +== 创建 Kafka 日志接收器 + +[,bash] +---- +cat <- + sinks: + kafka_auditing: + type: "kafka" + topic: "vector-{{ .cluster }}-auditing" + # 逗号分隔的 Kafka bootstrap servers 如:"10.14.22.123:9092,10.14.23.332:9092" + bootstrap_servers: "172.31.73.214:32239" + librdkafka_options: + security.protocol: "ssl" + ssl.endpoint.identification.algorithm: "none" + ssl.ca.location: "/etc/vector/custom/certification/ca.crt" + ssl.keystore.location: "/etc/vector/custom/certification/user.p12" + ssl.keystore.password: "yj5nwJLVqyII1ZHZCW2RQwJcyjKo3B9o" + encoding: + codec: "json" + inputs: + - auditing_remapped + batch: + max_events: 100 + timeout_secs: 10 +type: Opaque + +--- +kind: Secret +apiVersion: v1 +metadata: + name: vector-agent-events-sink-kafka + namespace: kubesphere-logging-system + labels: + logging.whizard.io/component: events + logging.whizard.io/enable: 'true' + logging.whizard.io/vector-role: Agent + annotations: + kubesphere.io/creator: admin +stringData: + sink.yaml: >- + sinks: + kafka_events: + type: "kafka" + topic: "vector-{{ .cluster }}-events" + bootstrap_servers: "172.31.73.214:32239" + librdkafka_options: + security.protocol: "ssl" + ssl.endpoint.identification.algorithm: "none" + ssl.ca.location: "/etc/vector/custom/certification/ca.crt" + ssl.keystore.location: "/etc/vector/custom/certification/user.p12" + ssl.keystore.password: "yj5nwJLVqyII1ZHZCW2RQwJcyjKo3B9o" + encoding: + codec: "json" + inputs: + - kube_events_remapped + batch: + max_events: 100 + timeout_secs: 10 +type: Opaque + +--- +kind: Secret +apiVersion: v1 +metadata: + name: vector-agent-logs-sink-kafka + namespace: kubesphere-logging-system + labels: + logging.whizard.io/component: logs + logging.whizard.io/enable: 'true' + logging.whizard.io/vector-role: Agent + annotations: + kubesphere.io/creator: admin +stringData: + sink.yaml: >- + sinks: + kafka_logs: + type: "kafka" + topic: "vector-{{ .cluster }}-logs" + bootstrap_servers: "172.31.73.214:32239" + librdkafka_options: + security.protocol: "ssl" + ssl.endpoint.identification.algorithm: "none" + ssl.ca.location: "/etc/vector/custom/certification/ca.crt" + ssl.keystore.location: "/etc/vector/custom/certification/user.p12" + ssl.keystore.password: "yj5nwJLVqyII1ZHZCW2RQwJcyjKo3B9o" + encoding: + codec: "json" + inputs: + - kube_logs_remapped + - systemd_logs_remapped + batch: + max_events: 100 + timeout_secs: 10 +type: Opaque + +--- +apiVersion: v1 +kind: Secret +metadata: + name: vector-aggregator-notification-history-sink-kafka + namespace: kubesphere-logging-system + labels: + logging.whizard.io/component: "notification-history" + logging.whizard.io/vector-role: Aggregator + logging.whizard.io/enable: "true" +stringData: + sink.yaml: >- + sinks: + kafka_notification_history: + type: "kafka" + topic: "vector-{{ .cluster }}-notification-history" + bootstrap_servers: "172.31.73.214:32239" + librdkafka_options: + security.protocol: "ssl" + ssl.endpoint.identification.algorithm: "none" + ssl.ca.location: "/etc/vector/custom/certification/ca.crt" + ssl.keystore.location: "/etc/vector/custom/certification/user.p12" + ssl.keystore.password: "yj5nwJLVqyII1ZHZCW2RQwJcyjKo3B9o" + encoding: + codec: "json" + inputs: + - notification_history_remapped + batch: + max_events: 100 + timeout_secs: 10 +type: Opaque +EOF +---- + diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-vector/02-etl-solution/02-read-data-from-kafka.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-vector/02-etl-solution/02-read-data-from-kafka.adoc new file mode 100644 index 000000000..6d0e9dbb2 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-vector/02-etl-solution/02-read-data-from-kafka.adoc @@ -0,0 +1,171 @@ +--- +title: "步骤 2:使用 Vector 从 Kafka 读取数据" +weight: 02 +--- + +== 部署 vector aggregator + +在 Kafka 所在集群,执行以下命令创建 vector namespace,并在该 namespace 下部署 vector-aggregator。 + +[.admon.note,cols="a"] +|=== +|说明 + +| +* 请勿将 vector aggregator 部署到 kubesphere-logging-system namespace, 以免与{ks_product_both}内置的 vector aggregator 冲突。 + +* 请联系{ks_product_both}交付服务专家获取 vector aggregator 的 helm 包。 +|=== + +[,bash] +---- +helm install vector-aggregator aggregator-0.30.0.tgz -n vector --create-namespace --set vectorConfig.image.tag=v0.2.1 --set image.tag=0.36.0-debian +---- + +所需镜像: + +[,bash] +---- +docker.io/timberio/vector:0.36.0-debian +docker.io/kubesphere/kubectl:v1.26.13 +docker.io/kubesphere/vector-config:v0.2.1 +---- + +== 获取证书 + +. 在 Kafka 所在集群的节点上,执行以下命令。 ++ +==== +[.admon.note,cols="a"] +|=== +|说明 + +| +**kafka cluster** 为 Kafka 集群的名称,**kafka namespace** 为 Kafka 所在的 namespace,**kafka user** 为之前创建的 Kafka 用户。 +|=== + +[,bash] +---- +export kafka_cluster=< kafka cluster > +export kafka_namespace=< kafka namespace > +export kafka_user=< kafka user > +echo -e "apiVersion: v1\ndata:" > kafka-aggregator-ca.yaml +echo " ca.crt: $(kubectl get secret -n $kafka_namespace ${kafka_cluster}-cluster-ca-cert \ +-o jsonpath='{.data.ca\.crt}')" >> kafka-aggregator-ca.yaml +echo -e "kind: Secret\nmetadata:\n name: kafka-aggregator-cluster-ca\n labels:\n logging.whizard.io/certification: 'true'\n logging.whizard.io/vector-role: Aggregator\n \ +namespace: vector\ntype: Opaque" >> kafka-aggregator-ca.yaml +echo "---" >> kafka-aggregator-ca.yaml +echo -e "apiVersion: v1\ndata:" >> kafka-aggregator-ca.yaml +echo " user.p12: $(kubectl get secret -n $kafka_namespace ${kafka_user} \ +-o jsonpath='{.data.user\.p12}')" >> kafka-aggregator-ca.yaml +echo -e "kind: Secret\nmetadata:\n name: kafka-aggregator-user-ca\n labels:\n logging.whizard.io/certification: 'true'\n logging.whizard.io/vector-role: Aggregator\n \ +namespace: vector\ntype: Opaque" >> kafka-aggregator-ca.yaml +---- + +此命令会生成 **kafka-aggregator-ca.yaml** 文件,包含 **kafka-aggregator-cluster-ca** 以及 **kafka-aggregator-user-ca** 两个 secret 文件,分别含有上一个步骤中的 ca.crt 以及 user.p12 信息。 +示例如下: + +[,yaml] +---- +apiVersion: v1 +data: + ca.crt: xxx +kind: Secret +metadata: + name: kafka-aggregator-cluster-ca + labels: + logging.whizard.io/certification: 'true' + logging.whizard.io/vector-role: Aggregator + namespace: vector +type: Opaque +--- +apiVersion: v1 +data: + user.p12: xxx +kind: Secret +metadata: + name: kafka-aggregator-user-ca + labels: + logging.whizard.io/certification: 'true' + logging.whizard.io/vector-role: Aggregator + namespace: vector +type: Opaque +---- + +==== + +== 配置 vector-aggregator,将消息发送至 OpenSearch + +创建 vector 配置,在 bootstrap_servers 填入相应的 Kafka 集群地址,在 sink:kafka_to_opensearch:endpoints 填入相应的 OpenSearch 地址。 + +[,bash] +---- +cat <- + sources: + kafka_source: + type: "kafka" + group_id: "ks" + topics: [ "^(vector)-.+" ] + bootstrap_servers: "172.31.53.102:32476" + librdkafka_options: + security.protocol: "ssl" + ssl.endpoint.identification.algorithm: "none" + ssl.ca.location: "/etc/vector/custom/certification/ca.crt" + ssl.keystore.location: "/etc/vector/custom/certification/user.p12" + ssl.keystore.password: "yj5nwJLVqyII1ZHZCW2RQwJcyjKo3B9o" + max.poll.interval.ms: "600000" + partition.assignment.strategy: roundrobin + decoding: + codec: json + session_timeout_ms: 20000 + socket_timeout_ms: 90000 + transforms: + kafka_remapped: + inputs: + - kafka_source + source: |- + .event.original = encode_json(.) + ts = parse_timestamp!(.timestamp, format: "%+") + .timestamp = format_timestamp!(ts, format: "%+", timezone: "local") + .topictime = to_unix_timestamp(ts, unit: "milliseconds") + .logstamp = from_unix_timestamp!(.topictime, unit: "milliseconds") + .logdate = .timestamp + .idxdate = format_timestamp!(ts, format: "%Y.%m.%d", timezone: "local") + tmp = split!(.topic, "-") + .index = join!(remove!(tmp, [0]), "-") + type: remap + sinks: + kafka_to_opensearch: + api_version: v8 + auth: + password: admin + strategy: basic + user: admin + batch: + timeout_secs: 5 + buffer: + max_events: 10000 + endpoints: + - https://: + tls: + verify_certificate: false + type: elasticsearch + inputs: + - kafka_remapped + bulk: + index: "{{ .index }}-%Y.%m.%d" + request: + timeout_sec: 180 +type: Opaque +EOF +---- diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-vector/02-etl-solution/03-configure-platform-service.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-vector/02-etl-solution/03-configure-platform-service.adoc new file mode 100644 index 000000000..0c4acc54e --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-vector/02-etl-solution/03-configure-platform-service.adoc @@ -0,0 +1,24 @@ +--- +title: "步骤 3:配置 WhizardTelemetry 平台服务" +weight: 03 +--- + +== 修改 whizard-telemetry-config + +如果使用外置 OpenSearch 数据库,需要修改配置文件 whizard-telemetry-config。 + +. 在集群左侧导航栏选择**配置 > 配置字典**。 + +. 在**配置字典**页面,查找 **whizard-telemetry-config**,点击右侧的image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑 yaml**。 ++ +image:/images/ks-qkcp/zh/v4.1/whizard-telemetry-config.png[vector,100%] + +. 修改 `notification:history:endpoints`、`logging:endpoints`、`auditing:endpoints` 和 `events:endpoints` 为 OpenSearch 地址,点击**确定**。 ++ +image:/images/ks-qkcp/zh/v4.1/edit-endpoint.png[vector,100%] + +== 在 KSE 界面查询日志 + +部署完成后,可以从 OpenSearch 查询到日志,如图所示。 + +image:/images/ks-qkcp/zh/v4.1/log.png[vector,100%] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-vector/02-etl-solution/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-vector/02-etl-solution/_index.adoc new file mode 100644 index 000000000..ab4be8eee --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-vector/02-etl-solution/_index.adoc @@ -0,0 +1,11 @@ +--- +title: "Vector 日志 ETL 方案 - 从 Kafka 到 OpenSearch" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理" +description: "介绍 Vector 日志 ETL 方案。" +weight: 13 +layout: "second" +--- + +== 总体方案 + +image:/images/ks-qkcp/zh/v4.1/vector-solution.png[vector, 100%] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-vector/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-vector/_index.adoc new file mode 100644 index 000000000..5ae2c8f6e --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/01-vector/_index.adoc @@ -0,0 +1,30 @@ +--- +title: "WhizardTelemetry 数据流水线" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理" +description: "介绍如何使用 WhizardTelemetry 数据流水线。" +weight: 1.5 +layout: "second" +--- + + +WhizardTelemetry 数据流水线是 WhizardTelemetry 可观测平台中提供可观测性数据的收集、转换和路由能力的扩展组件。 + + +//attention +[.admon.attention,cols="a"] +|=== +| 注意 + +| +* WhizardTelemetry 数据流水线是 WhizardTelemetry 日志、WhizardTelemetry 事件、WhizardTelemetry 审计、WhizardTelemetry 通知等共同依赖的扩展组件,因此在安装上述几个扩展组件之前必须先安装 WhizardTelemetry 数据流水线扩展组件,否则日志、通知、审计、事件等功能无法正常使用! + +* WhizardTelemetry 可观测平台支持从 OpenSearch 查询日志、审计、事件、通知历史等数据,因此需要在 WhizardTelemetry 数据流水线扩展组件里统一配置接收日志、审计、事件、通知历史等数据的 OpenSearch 服务的信息,可以是用户自行搭建的 OpenSearch 服务,也可以是通过 OpenSearch 分布式检索与分析引擎这个扩展组件安装的 OpenSearch 服务。 +|=== + +[.admon.note,cols="a"] +|=== +|说明 + +| +有关组件配置的更多信息,请参阅扩展中心“WhizardTelemetry 数据流水线”扩展组件的详情页说明。 +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/01-config.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/01-config.adoc new file mode 100644 index 000000000..04b8a9894 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/01-config.adoc @@ -0,0 +1,76 @@ +--- +title: "配置日志管理" +keywords: "Kubernetes, {ks_product}, 日志" +description: "介绍如何配置“WhizardTelemetry 日志”扩展组件。" +weight: 01 +--- + +WhizardTelemetry 日志支持通过配置扩展组件实现收集指定日志、按项目创建日志索引等功能。 + +[.admon.note,cols="a"] +|=== +|说明 + +| +更多配置信息,请参阅扩展中心 “WhizardTelemetry 日志”扩展组件的详情页说明。 +|=== + +== 收集指定日志 + +WhizardTelemetry 日志支持设置过滤条件,以收集包含或排除指定 namespace 的日志,可减少日志数量。 + +在 WhizardTelemetry 日志的扩展组件配置中,编辑如下参数: + +[,yaml] +---- +vector-logging: + filter: + extraLabelSelector: "app.kubernetes.io/name!=kube-events-exporter" + extraNamespaceLabelSelector: "" + # When includeNamespaces and excludeNamespaces are set at the same time, only excludeNamespaces will take effect. + includeNamespaces: [] + excludeNamespaces: [] +---- + +* extraLabelSelector:只收集带此标签的 pod 的日志。 +* extraNamespaceLabelSelector:只收集带此标签的 namespace 下的 pod 日志。 +* includeNamespaces:只收集指定 namespace 下的 pod 日志。 +* excludeNamespaces:不收集指定 namespace 下的 pod 日志。 + +== 按照 namespace 创建日志索引 + +WhizardTelemetry 日志支持为每个项目(namespace)创建一个索引,既可确定某个 namespace 的日志占用空间,方便整改业务,又便于进行日志分析。 + +=== Prerequisites + +版本要求:WhizardTelemetry 日志 >= 1.2.0,WhizardTelemetry 平台服务 >= 1.1.0。 + +=== Steps + +. 修改 WhizardTelemetry 日志扩展组件配置。无需修改 prefix 中的参数。 ++ +[,yaml] +---- +vector-logging: + sinks: + opensearch: + index: + prefix: "{{ .cluster }}-{{ .kubernetes.namespace_name }}-logs" + timestring: "%Y.%m.%d" +---- + +. 修改 WhizardTelemetry 平台服务扩展组件配置。无需修改 indexPrefix 中的参数。 ++ +[,yaml] +---- +whizard-telemetry: + config: + logging: + enable: true + servers: + - elasticsearch: + endpoints: + - https://opensearch-cluster-data.kubesphere-logging-system:9200 + indexPrefix: "{{ .cluster }}-{{ .kubernetes.namespace_name }}-logs" + timestring: "%Y.%m.%d" +---- diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/03-use-log-query-tools.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/03-use-log-query-tools.adoc new file mode 100644 index 000000000..fe54f3846 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/03-use-log-query-tools.adoc @@ -0,0 +1,52 @@ +--- +title: "使用容器日志查询工具" +keywords: "Kubernetes, {ks_product}, 集群管理, 工具箱, 查询容器日志" +description: "介绍如何使用容器日志查询工具。" +weight: 01 +--- + +本节介绍如何查询容器日志。 + +容器日志:从容器标准输出获取的日志。容器日志的内容由容器中运行的应用程序决定。 + + +== Prerequisites + +* 您需要获得平台、集群、企业空间或项目的资源查看权限,以查看特定范围的日志。 +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 日志**扩展组件。 + +== Steps + +. 以具有相关资源查看权限的用户登录{ks_product_left} Web 控制台。 + +. 将光标悬停在页面右下角的image:/images/ks-qkcp/zh/icons/hammer.svg[hammer,18,18]图标,然后在菜单中选择**容器日志查询**。 + +. 在弹出的对话框,设置搜索条件查询日志。 ++ +-- +* 如果有多个集群,点击**集群**下拉列表可查询特定集群中的日志。 + +* 点击搜索框,设置搜索条件,然后按 **Enter** 可查看符合特定条件的日志。您可以同时设置多个搜索条件。 + +* 在查询结果页面可查看日志的时间分布图,点击柱状图,切换到该时间段的日志列表。点击image:/images/ks-qkcp/zh/icons/start-dark.svg[start-dark,18,18]/image:/images/ks-qkcp/zh/icons/stop-dark-white.svg[stop-dark-white,18,18]可开启/停止实时数据刷新,点击**日志导出**下拉列表可选择正序或倒序导出容器日志,点击**刷新频率**的时间可选择数据的刷新频率。 + +* 在查询结果列表右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]可定制列表中显示的信息。 + +* 点击查询结果中的日志条目,查看日志的详细信息。 +-- + +== 查询 Calico 日志 + +“WhizardTelemetry 日志”扩展组件默认收集 Calico 的日志,包含 Calico pod ip 的分配和释放信息,可限定查询条件查询 Calico 日志。 + +. 将光标悬停在页面右下角的image:/images/ks-qkcp/zh/icons/hammer.svg[hammer,18,18]图标,然后在菜单中选择**容器日志查询**。 + +. 在弹出的对话框,设置搜索条件查询 Calico 日志。 ++ +-- +namespace: kube-system + +pod: + +container: calico-cni +-- diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/05-log-collection/01-enable-logsidecar.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/05-log-collection/01-enable-logsidecar.adoc new file mode 100644 index 000000000..3ea2baebb --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/05-log-collection/01-enable-logsidecar.adoc @@ -0,0 +1,48 @@ +--- +title: "启用日志收集" +description: "介绍如何修改扩展组件的配置,以启用日志收集功能。" +weight: 01 +--- + +本节介绍如何修改“WhizardTelemetry 日志”扩展组件的配置,以启用日志收集功能。 +//note +[.admon.note,cols="a"] +|=== +|说明 + +| +启用后,项目左侧导航栏的**项目设置**菜单下将显⽰**日志收集**选项。 +|=== + + +== Prerequisites + +* 您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息,请参阅link:../../../../../05-users-and-roles/01-users/[用户]和link:../../../../../05-users-and-roles/02-platform-roles/[平台角色]。 + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 日志**扩展组件。 + +== Steps + +. 以具有 **platform-admin** 角色的用户登录{ks_product_left} Web 控制台。 +. 点击**扩展中心**。 +. 点击已安装的 **WhizardTelemetry 日志**扩展组件,进入组件详情页,点击**管理**。 +. 点击组件图标下的image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],选择**扩展组件配置**。 +. 在扩展组件配置文件中,将 **logsidecar-injector.enabled** 参数设置为 **true**,然后保存文件。 ++ +-- +[,yaml] +---- +logsidecar-injector: + enabled: true +---- + +[.admon.note,cols="a"] +|=== +|说明 + +| +由于控制此参数更新的 job 只会在 host 集群运行,因此如果想仅开启或关闭某些 member 集群的落盘日志收集功能,只设置 member 集群的 logsidecar-injector.enabled 不会生效。每次修改此参数都需要同时修改 host 集群的参数,以此来触发参数更新。 + +例如,当需要将某个 member 集群的日志收集功能关闭,只需要在该 member 集群的配置中设置 logsidecar-injector.enabled: false,然后在 host 集群的配置中设置 logsidecar-injector.updateVersion: 1。后续再进行同样操作只需要更新 logsidecar-injector.updateVersion,即可触发更新。 +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/05-log-collection/02-enable-project-log-collection.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/05-log-collection/02-enable-project-log-collection.adoc new file mode 100644 index 000000000..f89c0ef88 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/05-log-collection/02-enable-project-log-collection.adoc @@ -0,0 +1,57 @@ +--- +title: "在项目中启用日志收集" +keywords: "Kubernetes, {ks_product}, 项目管理, 项目设置, 日志收集, 启用日志收集" +description: "介绍如何启用日志收集。" +weight: 02 +--- + + +:ks_permission: **项目设置管理** +:ks_navigation: **项目设置 > 日志收集** + + +本节介绍如何在项目中启用日志收集。 +//note +[.admon.note,cols="a"] +|=== +|说明 + +| +启用后,在项目中创建工作负载和任务时,**存储设置**页签的**收集卷上日志**功能将可用。 +|=== + + +== Prerequisites + + +* {empty} +include::../../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 日志**扩展组件,并已link:../01-enable-logsidecar/[启用日志收集]。 + +== Steps + +include::../../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**收集卷上日志**区域,点击切换开关将功能状态设置为**已启用**。 + +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +ifeval::["{file_output_type}" == "html"] +启用日志收集后,您需要重启容器组才能对现有的容器组生效。有关更多信息,请参阅link:../../../../../09-project-management/03-application-workloads/03-workloads/05-re-create-a-workload/[重新创建工作负载]、link:../../../../../09-project-management/03-application-workloads/04-jobs/05-rerun-a-job/[重新运行任务]或link:../../../../../09-project-management/03-application-workloads/06-pods/05-delete-pods/[删除容器组]。 +endif::[] + +ifeval::["{file_output_type}" == "pdf"] +启用日志收集后,您需要重启容器组才能对现有的容器组生效。有关更多信息,请参阅《{ks_product_right}项目管理指南》的“应用负载”章节,重新创建工作负载、重新运行任务或删除容器组。 +endif::[] + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/05-log-collection/03-enable-collect-volume-logs.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/05-log-collection/03-enable-collect-volume-logs.adoc new file mode 100644 index 000000000..3cd53e64d --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/05-log-collection/03-enable-collect-volume-logs.adoc @@ -0,0 +1,48 @@ +--- +title: "启用收集卷上日志" +keywords: "Kubernetes, {ks_product}, 项目管理, 项目设置, 日志收集, 收集卷上的日志" +description: "介绍如何启用收集卷上日志。" +weight: 03 +--- + + +:ks_permission: **应用负载管理** + +ifeval::["{file_output_type}" == "html"] +本节介绍如何在创建工作负载、服务或任务时启用收集卷上的日志。有关更多信息,请参阅link:../../../../../09-project-management/03-application-workloads/03-workloads/01-create-a-workload/[创建工作负载]或link:../../../../../09-project-management/03-application-workloads/04-jobs/01-create-a-job/[创建任务]。 +endif::[] + +ifeval::["{file_output_type}" == "pdf"] +本节介绍如何在创建工作负载、服务或任务时启用收集卷上的日志。有关更多信息,请参阅《{ks_product_right}项目管理指南》的“应用负载”章节,创建工作负载或创建任务。 +endif::[] + + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 日志**扩展组件,并已link:../02-enable-project-log-collection/[在项目中启用日志收集]。 + +== Steps + +include::../../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +. 在左侧导航栏选择**应用负载 > 工作负载**或**应用负载 > 任务**。 + +. 在工作负载页面,点击**部署**、**有状态副本集**或**守护进程集**打开工作负载列表,或在任务页面,点击**任务**或**定时任务**打开任务列表。 + +. 在页面点击**创建**。 + +. 在**存储设置**页签,点击**收集卷上日志**开关启用该功能。 + +. 点击**挂载卷**,为容器挂载**读写**模式的持久卷或临时卷,并设置**容器日志路径**。 + +. 设置容器中的应用程序,将日志导出到卷挂载目录下的容器日志路径。 ++ +日志收集完成后将打印到容器的标准输出,您可以在{ks_product_both}提供的工具箱对容器日志进行查询。有关更多信息,请参阅link:../../03-use-log-query-tools/[使用容器日志查询工具]。 diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/05-log-collection/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/05-log-collection/_index.adoc new file mode 100644 index 000000000..3eb1813cc --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/05-log-collection/_index.adoc @@ -0,0 +1,23 @@ +--- +title: "日志收集" +keywords: "Kubernetes, {ks_product}, 项目管理, 项目设置, 日志收集" +description: "介绍如何启用和禁用日志收集功能。" +weight: 02 +layout: "second" +--- + +本节介绍如何使用日志收集功能。 + +日志收集功能启用后,{ks_product_right}将读取容器保存在卷上的日志文件,然后将日志文件的内容打印到容器的标准输出。使用日志收集功能需要进行以下步骤: + +. 安装并启用“WhizardTelemetry 日志”扩展组件。 + +. 在“WhizardTelemetry 日志”扩展组件的配置中启用 `logsidecar-injector`。有关更多信息,请参阅link:01-enable-logsidecar/[启用日志收集]。 + +. 在项目中启用日志收集。 + +. 设置容器,将运行日志文件输出到容器中的路径下。有关更多信息,请联系容器镜像的开发者。 + +. 创建工作负载、服务或任务时启用**收集卷上的日志**,为容器挂载一个可读写的卷,并设置日志文件的路径。 + +. 使用{ks_product_both}提供的工具箱对容器日志进行查询。有关更多信息,请参阅link:../03-use-log-query-tools/[使用容器日志查询工具]。 diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/01-config-opensearch.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/01-config-opensearch.adoc new file mode 100644 index 000000000..4d1ba6360 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/01-config-opensearch.adoc @@ -0,0 +1,151 @@ +--- +title: "配置 OpenSearch 日志接收器" +description: "介绍如何配置 OpenSearch 日志接收器。" +weight: 01 +--- + +本节介绍如何配置 OpenSearch 日志接收器,以便将日志数据发送到指定的 OpenSearch 数据库。 + +[.admon.note,cols="a"] +|=== +|说明 + +| +在扩展组件安装时或安装完成后均可以修改扩展组件配置,以配置日志接收器。下文仅介绍扩展组件已安装的情况下,如何配置 OpenSearch 日志接收器。 +|=== + + +== Prerequisites + +* 您需要在{ks_product_both}平台具有 **platform-admin** 角色。 +* 已获取 OpenSearch 的服务地址和服务端口。 + +== 配置步骤 + +. 以具有 **platform-admin** 角色的用户登录{ks_product_left} Web 控制台。 +. 点击**扩展中心**。 +. 点击扩展组件的名称,进入组件详情页。 +. 点击组件图标下的image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],选择**扩展组件配置**。 + +. 编辑 **WhizardTelemetry 日志**的扩展组件配置,修改 `vector-logging` 下 opensearch 的相关配置。 ++ +[,yaml] +---- +vector-logging: + sinks: + opensearch: + # Create opensearch sink or not + enabled: true + # Configurations for the opensearch sink, more info for https://vector.dev/docs/reference/configuration/sinks/elasticsearch/ + # Usually users needn't change the following OpenSearch sink config, and the default sinks in secret "kubesphere-logging-system/vector-sinks" created by the WhizardTelemetry Data Pipeline extension will be used. + metadata: + api_version: v8 + auth: + strategy: basic + user: admin + password: admin + batch: + timeout_secs: 5 + buffer: + max_events: 10000 + endpoints: + - https://: + tls: + verify_certificate: false +---- + +. 编辑 **WhizardTelemetry 审计**的扩展组件配置,修改 `kube-auditing` 下 opensearch 的相关配置。 ++ +-- +[.admon.note,cols="a"] +|=== +|说明 + +| +另外,还需要启用 KubeSphere 和 Kubernetes 审计。有关更多信息,请参阅扩展中心“WhizardTelemetry 审计”扩展组件的详情页说明。 +|=== + +[,yaml] +---- +kube-auditing: + sinks: + opensearch: + # Create opensearch sink or not + enabled: true + # Configurations for the opensearch sink, more info for https://vector.dev/docs/reference/configuration/sinks/elasticsearch/ + # Usually users needn't change the following OpenSearch sink config, and the default sinks in secret "kubesphere-logging-system/vector-sinks" created by the WhizardTelemetry Data Pipeline extension will be used. + # metadata: + # api_version: v8 + # auth: + # strategy: basic + # user: admin + # password: admin + # batch: + # timeout_secs: 5 + # buffer: + # max_events: 10000 + # endpoints: + # - https://: + # tls: + # verify_certificate: false +---- + +-- + +. 编辑 **WhizardTelemetry 事件**的扩展组件配置,修改 `kube-events-exporter` 下 opensearch 的相关配置。 ++ +[,yaml] +---- +kube-events-exporter: + sinks: + opensearch: + # Create opensearch sink or not + enabled: true + # Configurations for the opensearch sink, more info for https://vector.dev/docs/reference/configuration/sinks/elasticsearch/ + # Usually users needn't change the following OpenSearch sink config, and the default sinks in secret "kubesphere-logging-system/vector-sinks" created by the WhizardTelemetry Data Pipeline extension will be used. + # metadata: + # api_version: v8 + # auth: + # strategy: basic + # user: admin + # password: admin + # batch: + # timeout_secs: 5 + # buffer: + # max_events: 10000 + # endpoints: + # - https://: + # tls: + # verify_certificate: false +---- + +. 编辑 **WhizardTelemetry 通知**的扩展组件配置,修改 `notification-history` 下 opensearch 的相关配置。 ++ +[,yaml] +---- +notification-history: + sinks: + opensearch: + # Create opensearch sink or not + enabled: true + # Configurations for the opensearch sink, more info for https://vector.dev/docs/reference/configuration/sinks/elasticsearch/ + # Usually users needn't change the following OpenSearch sink config, and the default sinks in secret "kubesphere-logging-system/vector-sinks" created by the WhizardTelemetry Data Pipeline extension will be used. + # metadata: + # api_version: v8 + # auth: + # strategy: basic + # user: admin + # password: admin + # batch: + # timeout_secs: 5 + # buffer: + # max_events: 10000 + # endpoints: + # - https://: + # tls: + # verify_certificate: false +---- + +. 编辑 **WhizardTelemetry 平台服务**的扩展组件配置,确保其中各组件配置下的 `endpoints` 与以上各个扩展组件的 `endpoints` 配置一致,以便{ks_product_both}平台能够正确查询日志数据。有关更多信息,请参阅扩展中心“WhizardTelemetry 平台服务”扩展组件的详情页说明。 ++ +至此,OpenSearch 日志接收器配置完成。在**集群设置 > 日志接收器**页面,可以看到 OpenSearch 已被配置为容器日志、资源事件、审计日志和通知历史的日志接收器。 diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/01-add-a-log-receiver.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/01-add-a-log-receiver.adoc new file mode 100644 index 000000000..e7a41d30b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/01-add-a-log-receiver.adoc @@ -0,0 +1,53 @@ +--- +title: "添加日志接收器" +keywords: "Kubernetes, {ks_product}, 集群管理, 集群设置, 日志接收器, 添加日志接收器" +description: "介绍如何添加日志接收器。" +weight: 01 +--- + +:ks_permission: **集群设置管理** +:ks_navigation: **集群设置 > 日志接收器** + + +本节介绍如何添加日志接收器。 + +{ks_product_right}支持使用 Elasticsearch、OpenSearch 和 Kafka 作为日志接收器。 + +* 每种类型的日志接收器只能添加一个。 + +* {ks_product_right}默认使用 OpenSearch 并提供日志分析工具,您可以在{ks_product_left} Web 控制台的工具箱中使用日志分析工具查询 OpenSearch 收集的日志。 + +* {ks_product_right}默认未安装 Kafka,并且目前未提供针对 Kafka 的日志分析工具。{ks_product_right}仅提供与 Kafka 对接的功能。如需使用 Kafka 作为日志接收器,您需要参阅 link:https://kafka.apache.org/documentation/[Kafka 官方文档]安装 Kafka。 + + +== Prerequisites + + +* {empty} +include::../../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 日志**、**WhizardTelemetry 事件**、**WhizardTelemetry 审计**、或 **WhizardTelemetry 通知**扩展组件。 + + +== Steps + +include::../../../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ +. 在**日志接收器**页面,点击**容器日志**、**资源事件**、**审计日志**或**通知历史**打开日志接收器列表。 + +. 在页面右侧点击**添加日志接收器**。 + +. 在**添加日志接收器**对话框,选择 **Elasticsearch**、 **OpenSearch** 或 **Kafka**。 + +. 设置日志接收器的参数,然后点击**确定**。 ++ +-- +include::../../../../../../_custom-en/clusterManagement/logReceivers/logReceivers-para-addLogReceiver.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/02-view-a-log-receiver-list.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/02-view-a-log-receiver-list.adoc new file mode 100644 index 000000000..f391b0ed0 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/02-view-a-log-receiver-list.adoc @@ -0,0 +1,66 @@ +--- +title: "查看日志接收器列表" +keywords: "Kubernetes, {ks_product}, 集群管理, 集群设置, 日志接收器, 查看日志接收器列表" +description: "介绍如何查看日志接收器列表。" +weight: 02 +--- + +:ks_permission: **集群设置查看** +:ks_navigation: **集群设置 > 日志接收器** + + +本节介绍如何查看日志接收器列表。 + + +== Prerequisites + + +* {empty} +include::../../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* 已添加一个日志接收器。 + + +== Steps + +include::../../../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**日志接收器**页面,点击**容器日志**、**资源事件**、**审计日志**或**通知历史**打开日志接收器列表。 + ++ +==== +* 日志接收器列表提供以下信息: ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|日志接收器的名称。{ks_product_right}支持 Elasticsearch、 OpenSearch、Kafka 日志接收器。 + +|地址 +| +include::../../../../../../_custom-en/clusterManagement/logReceivers/logReceivers-para-address.adoc[] + +|状态 +|日志接收器是否已启用,取值为**已启用**或**已禁用**。 + +|类型 +|日志接收器的类型,可以为**日志**、**事件**、**审计日志**或**通知历史**。 + +|创建时间 +|日志接收器的创建时间。 +|=== +-- + +include::../../../../../../../_ks_components-en/oper-refreshListData.adoc[] +==== diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/03-view-log-receiver-details.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/03-view-log-receiver-details.adoc new file mode 100644 index 000000000..de50239fe --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/03-view-log-receiver-details.adoc @@ -0,0 +1,46 @@ +--- +title: "查看日志接收器详情" +keywords: "Kubernetes, {ks_product}, 集群管理, 集群设置, 日志接收器, 查看日志接收器详情" +description: "介绍如何查看日志接收器详情。" +weight: 03 +--- + +:ks_permission: **集群设置查看** +:ks_navigation: **集群设置 > 日志接收器** + + +本节介绍如何查看日志接收器详情。 + + +== Prerequisites + + +* {empty} +include::../../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* 已添加一个日志接收器。 + + +== Steps + +include::../../../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**日志接收器**页面,点击**容器日志**、**资源事件**、**审计日志**或**通知历史**,然后在列表中点击一个日志接收器的名称打开其详情页面。 + ++ + +. 在日志接收器详情页面左侧的**属性**区域查看日志接收器是否已启用。 + +. 在日志接收器详情页面右侧的**资源状态**页签查看日志接收器的设置。 ++ +-- +include::../../../../../../_custom-en/clusterManagement/logReceivers/logReceivers-para-addLogReceiver.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/04-edit-log-receiver-settings.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/04-edit-log-receiver-settings.adoc new file mode 100644 index 000000000..bd85b48ea --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/04-edit-log-receiver-settings.adoc @@ -0,0 +1,55 @@ +--- +title: "编辑日志接收器设置" +keywords: "Kubernetes, {ks_product}, 集群管理, 集群设置, 日志接收器, 编辑日志接收器设置" +description: "介绍如何编辑日志接收器设置。" +weight: 04 +--- + +:ks_permission: **集群设置管理** +:ks_navigation: **集群设置 > 日志接收器** + + +本节介绍如何编辑日志接收器设置。 + + +== Prerequisites + + +* {empty} +include::../../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* 已添加一个日志接收器。 + + +== Steps + +include::../../../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**日志接收器**页面,点击**容器日志**、**资源事件**、**审计日志**或**通知历史**,然后在列表中点击一个日志接收器的名称打开其详情页面。 + ++ + +. 在日志接收器详情页面左上角点击**编辑**。 + +. 在弹出的对话框修改日志接收器的设置,然后点击**确定**。 ++ +-- +include::../../../../../../_custom-en/clusterManagement/logReceivers/logReceivers-para-addLogReceiver.adoc[] + +[.admon.attention,cols="a"] +|=== +|注意 + +| +修改完成后,需确保 **WhizardTelemetry 平台服务**的扩展组件配置中,各组件配置下的 `endpoints` 与修改的服务地址一致,以便{ks_product_both}平台能够正确查询日志数据。有关更多信息,请参阅扩展中心“WhizardTelemetry 平台服务”扩展组件的详情页说明。 + +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/05-enable-and-disable-log-receiver.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/05-enable-and-disable-log-receiver.adoc new file mode 100644 index 000000000..7c2043b57 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/05-enable-and-disable-log-receiver.adoc @@ -0,0 +1,42 @@ +--- +title: "启用和禁用日志接收器" +keywords: "Kubernetes, {ks_product}, 集群管理, 集群设置, 日志接收器, 启用, 禁用" +description: "介绍如何启用和禁用日志接收器。" +weight: 05 +--- + +:ks_permission: **集群设置管理** +:ks_navigation: **集群设置 > 日志接收器** + + +本节介绍如何启用和禁用日志接收器。 + + +== Prerequisites + + +* {empty} +include::../../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* 已添加一个日志接收器。 + + +== Steps + +include::../../../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**日志接收器**页面,点击**容器日志**、**资源事件**、**审计日志**或**通知历史**,然后在列表中点击一个日志接收器的名称打开其详情页面。 + ++ + +. 在日志接收器详情页面左上角点击**更多操作 > 更改状态**。 + +. 在弹出的对话框中选择**启用**或**禁用**,然后点击**确定**。 diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/06-delete-a-log-receiver.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/06-delete-a-log-receiver.adoc new file mode 100644 index 000000000..fa46b939d --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/06-delete-a-log-receiver.adoc @@ -0,0 +1,42 @@ +--- +title: "删除日志接收器" +keywords: "Kubernetes, {ks_product}, 集群管理, 集群设置, 日志接收器, 启用, 禁用" +description: "介绍如何删除日志接收器。" +weight: 06 +--- + +:ks_permission: **集群设置管理** +:ks_navigation: **集群设置 > 日志接收器** + + +本节介绍如何删除日志接收器。 + + +== Prerequisites + + +* {empty} +include::../../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* 已添加一个日志接收器。 + + +== Steps + +include::../../../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**日志接收器**页面,点击**容器日志**、**资源事件**、**审计日志**或**通知历史**,然后在列表中点击一个日志接收器的名称打开其详情页面。 + ++ + +. 在日志接收器详情页面左上角点击**更多操作 > 删除**。 + +. 在弹出的对话框中输入日志接收器的名称,然后点击**确定**。 diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/_index.adoc new file mode 100644 index 000000000..c60e67cf1 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/03-manage-log-receivers/_index.adoc @@ -0,0 +1,20 @@ +--- +title: "管理日志接收器" +keywords: "Kubernetes, {ks_product}, 集群管理, 集群设置, 日志接收器" +description: "介绍如何添加和管理日志接收器。" +weight: 03 +layout: "second" +--- + + +本节介绍如何管理日志接收器。 + +//note +[.admon.note,cols="a"] +|=== +|说明 + +| +安装并启用 WhizardTelemetry 日志、WhizardTelemetry 事件、WhizardTelemetry 审计、WhizardTelemetry 通知这四个扩展组件中的任意一个,集群左侧导航栏的**集群设置**菜单下都会显示**日志接收器**选项,**日志接收器**页面则会显示对应的页签。 + +|=== diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/_index.adoc new file mode 100644 index 000000000..ab4c5922b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/06-log-receivers/_index.adoc @@ -0,0 +1,19 @@ +--- +title: "日志接收器" +description: "介绍如何配置或添加日志接收器。" +weight: 03 +layout: "second" +--- + + +日志接收器用于收集系统的各类日志,配置或添加日志接收器,以便将 WhizardTelemetry 日志、WhizardTelemetry 审计、WhizardTelemetry 事件、以及通知历史的日志数据发送到外部日志接收器中。 + +{ks_product_right}支持收集以下类型的日志: + +* 容器日志:从容器标准输出获取的日志。容器日志的内容由容器中运行的应用程序决定。 + +* 资源事件:工作负载、任务、容器组、服务、应用路由等各类资源的事件。 + +* 审计日志:{ks_product} API 服务器接收请求的记录。 + +* 通知历史:{ks_product_right}平台向用户发送的告警通知的记录。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/_index.adoc new file mode 100644 index 000000000..09c227c86 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/02-logging/_index.adoc @@ -0,0 +1,28 @@ +--- +title: "WhizardTelemetry 日志" +keywords: "Kubernetes, {ks_product}, 日志" +description: "介绍如何使用“WhizardTelemetry 日志”扩展组件。" +weight: 02 +layout: "second" +--- + + +本节介绍如何使用“WhizardTelemetry 日志”扩展组件。 + +该组件提供多租户视角的云原生应用实时及历史日志收集、查询、导出、存储等功能,可对接如 ElasticSearch、OpenSearch、Kafka 等日志接收器。它默认收集 Calico 的日志,包含 Calico pod IP 地址的分配和释放信息。 + +安装“WhizardTelemetry 日志”扩展组件后, + +* 页面右下角的⼯具箱中将显⽰**容器⽇志查询**选项,支持用户查询自身权限范围内的容器日志。 +* 集群左侧导航栏的**集群设置**菜单下将显示**日志接收器**选项,**日志接收器**页面将显示**容器日志**页签,支持添加多种类型的日志接收器。 + +//attention +[.admon.attention,cols="a"] +|=== +| 注意 + +| +- WhizardTelemetry 日志依赖 WhizardTelemetry 平台服务和 WhizardTelemetry 数据流水线,因此在安装 WhizardTelemetry 日志之前必须先安装并配置好 WhizardTelemetry 平台服务和 WhizardTelemetry 数据流水线两个扩展组件,否则日志相关功能无法正常使用! + +- 若未收集到日志,请确保 Docker 的根目录在 /var/lib 下,否则需要修改 WhizardTelemetry 数据流水线中 agent 的挂载配置。有关更多信息,请参阅扩展中心 “WhizardTelemetry 数据流水线”扩展组件的详情页说明。 +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/03-events/01-use-event-query-tools.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/03-events/01-use-event-query-tools.adoc new file mode 100644 index 000000000..4e247ce54 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/03-events/01-use-event-query-tools.adoc @@ -0,0 +1,36 @@ +--- +title: "使用资源事件查询工具" +keywords: "Kubernetes, {ks_product}, 集群管理, 工具箱, 查询资源事件" +description: "介绍如何使用资源事件查询工具。" +weight: 02 +--- + +本节介绍如何查询资源事件。 + +资源事件:工作负载、任务、容器组、服务、应用路由等各类资源的事件。 + + +== Prerequisites + +* 您需要获得平台、集群、企业空间或项目的资源查看权限,以查看特定范围的事件。 +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 资源事件**扩展组件。 + +== Steps + +. 以具有相关资源查看权限的用户登录{ks_product_left} Web 控制台。 + +. 将光标悬停在页面右下角的image:/images/ks-qkcp/zh/icons/hammer.svg[hammer,18,18]图标,然后在菜单中选择**资源事件查询**。 + +. 在弹出的对话框,设置搜索条件查询事件。 ++ +-- +* 如果有多个集群,点击**集群**下拉列表可查询特定集群中的事件。 + +* 点击搜索框,设置搜索条件,然后按 **Enter** 可查看符合特定条件的事件。您可以同时设置多个搜索条件。 + +* 在查询结果页面可查看事件的时间分布图,点击柱状图,切换到该时间段的事件列表。点击image:/images/ks-qkcp/zh/icons/start-dark.svg[start-dark,18,18]/image:/images/ks-qkcp/zh/icons/stop-dark-white.svg[stop-dark-white,18,18]可开启/停止实时数据刷新,点击**刷新频率**的时间可选择数据的刷新频率。 + +* 在查询结果列表右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]可定制列表中显示的信息。 + +* 点击查询结果中的事件条目,查看事件的详细信息。 +-- diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/03-events/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/03-events/_index.adoc new file mode 100644 index 000000000..16b71a175 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/03-events/_index.adoc @@ -0,0 +1,27 @@ +--- +title: "WhizardTelemetry 事件" +keywords: "Kubernetes, {ks_product}, 事件" +description: "介绍如何使用“WhizardTelemetry 事件”扩展组件。" +weight: 03 +layout: "second" +--- + + +本节介绍如何使用“WhizardTelemetry 事件”扩展组件。 + +该组件可长期保存工作负载、任务、容器组、服务、应用路由等资源的事件,并提供多租户视角的事件检索和查看功能。 + +安装“WhizardTelemetry 事件”扩展组件后, + +* 页面右下角的⼯具箱中将显⽰**资源事件查询**选项,支持用户查询自身权限范围内的资源事件。 +* 集群左侧导航栏的**集群设置**菜单下将显示**日志接收器**选项,**日志接收器**页面将显示**资源事件**页签,支持添加多种类型的日志接收器。有关更多信息,请参阅link:../02-logging/06-log-receivers/[日志接收器]。 + +//attention +[.admon.attention,cols="a"] +|=== +| 注意 + +| +WhizardTelemetry 事件依赖 WhizardTelemetry 平台服务和 WhizardTelemetry 数据流水线,因此在安装 WhizardTelemetry 事件之前必须先安装并配置好 WhizardTelemetry 平台服务和 WhizardTelemetry 数据流水线两个扩展组件,否则事件相关功能无法正常使用! + +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/04-auditing/01-use-audit-query-tools.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/04-auditing/01-use-audit-query-tools.adoc new file mode 100644 index 000000000..c871534c5 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/04-auditing/01-use-audit-query-tools.adoc @@ -0,0 +1,117 @@ +--- +title: "使用审计日志查询工具" +keywords: "Kubernetes, {ks_product}, 集群管理, 工具箱, 查询审计日志" +description: "介绍如何使用审计日志查询工具。" +weight: 01 +--- + +本节介绍如何查询审计日志。 + +审计日志:{ks_product_right} API 服务器接收请求的记录,即{ks_product_both}平台上用户的操作行为。 + +== Prerequisites + +* 您需要获得平台、集群、企业空间或项目的资源查看权限,以查看特定范围的日志。 +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 审计**扩展组件。 + +== 启用审计 + +为获取审计日志数据,您需要启用 Kubernetes 和 KubeSphere 审计,即启用审计日志收集。 + +=== 启用 Kubernetes 审计 + +. 在集群的 master 节点上创建审计目录。 ++ +[,bash] +---- +mkdir /etc/kubernetes/audit +---- + +. 创建 policy 文件。 ++ +-- +[,bash] +---- +vi /etc/kubernetes/audit/audit-policy.yaml +---- + +[,yaml] +---- +apiVersion: audit.k8s.io/v1 +kind: Policy +rules: +- level: Metadata +---- +-- + +. 编辑 kube-apiserver.yaml 文件,添加以下内容。 ++ +-- +[,bash] +---- +vi /etc/kubernetes/manifests/kube-apiserver.yaml +---- + +[,yaml] +---- + spec: + containers: + - command: + - kube-apiserver + - --audit-policy-file=/etc/kubernetes/audit/audit-policy.yaml + - --audit-log-path=/etc/kubernetes/audit/audit.log + - --audit-log-maxbackup=10 + - --audit-log-maxsize=100 + volumeMounts: + - mountPath: /etc/kubernetes/audit + name: audit + volumes: + - hostPath: + path: /etc/kubernetes/audit + type: DirectoryOrCreate + name: audit +---- +-- + +=== 启用 KubeSphere 审计 + +编辑 KubeSphere Core (ks-core) chart 包中的 values.yaml 文件。 + +[,yaml] +---- +auditing: + enable: true + auditLevel: Metadata + logOptions: + path: /etc/audit/audit.log + +apiserver: + extraVolumeMounts: + - mountPath: /etc/audit + name: audit + extraVolumes: + - hostPath: + path: /etc/kubesphere/audit + type: DirectoryOrCreate + name: audit +---- + +== 查询审计日志 + +. 以具有相关资源查看权限的用户登录{ks_product_left} Web 控制台。 + +. 将光标悬停在页面右下角的image:/images/ks-qkcp/zh/icons/hammer.svg[hammer,18,18]图标,然后在菜单中选择**审计日志查询**。 + +. 在弹出的对话框,设置搜索条件查询日志。 ++ +-- +* 如果有多个集群,点击**集群**下拉列表可查询特定集群中的日志。 + +* 点击搜索框,设置搜索条件,然后按 **Enter** 可查看符合特定条件的日志。您可以同时设置多个搜索条件。 + +* 在查询结果页面可查看日志的时间分布图,点击柱状图,切换到该时间段的日志列表。点击image:/images/ks-qkcp/zh/icons/start-dark.svg[start-dark,18,18]/image:/images/ks-qkcp/zh/icons/stop-dark-white.svg[stop-dark-white,18,18]可开启/停止实时数据刷新,点击**刷新频率**的时间可选择数据的刷新频率。 + +* 在查询结果列表右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]可定制列表中显示的信息。 + +* 点击查询结果中的日志条目,查看日志的详细信息。 +-- diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/04-auditing/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/04-auditing/_index.adoc new file mode 100644 index 000000000..b12a6c6f6 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/04-auditing/_index.adoc @@ -0,0 +1,29 @@ +--- +title: "WhizardTelemetry 审计" +keywords: "Kubernetes, {ks_product}, 审计" +description: "介绍如何使用“WhizardTelemetry 审计”扩展组件。" +weight: 04 +layout: "second" +draft: true +--- + + +本节介绍如何使用“WhizardTelemetry 审计”扩展组件。 + +该组件实时记录在{ks_product_both}平台上的用户相关操作行为,并提供多租户视角的审计历史的检索及查看功能,可快速回溯相关用户的操作行为。 + +安装“WhizardTelemetry 审计”扩展组件后, + +* 页面右下角的⼯具箱中将显⽰**审计日志查询**选项,支持用户查询自身权限范围内的审计日志。 +* 集群左侧导航栏的**集群设置**菜单下将显示**日志接收器**选项,**日志接收器**页面将显示**审计日志**页签,支持添加多种类型的日志接收器。有关更多信息,请参阅link:../02-logging/06-log-receivers/_index/[日志接收器]。 + + +//attention +[.admon.attention,cols="a"] +|=== +| 注意 + +| +WhizardTelemetry 审计依赖 WhizardTelemetry 平台服务和 WhizardTelemetry 数据流水线,因此在安装 WhizardTelemetry 审计之前必须先安装并配置好 WhizardTelemetry 平台服务和 WhizardTelemetry 数据流水线两个扩展组件,否则审计功能无法正常使用! + +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/01-overview/01-cluster-monitoring-overview.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/01-overview/01-cluster-monitoring-overview.adoc new file mode 100644 index 000000000..bd913ab40 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/01-overview/01-cluster-monitoring-overview.adoc @@ -0,0 +1,79 @@ +--- +title: "查看集群监控概览" +description: "介绍如何查看集群概览页面的监控信息。" +weight: 01 +--- + +:ks_permission: **监控查看** +:ks_navigation: **概览** + + +本节介绍如何查看集群概览页面的监控信息。 + +ifeval::["{file_output_type}" == "html"] +有关集群概览页面的其他信息,请参阅link:../../../../../07-cluster-management/02-overview/01-view-cluster-overall-information/[查看集群概览信息]。 +endif::[] + +ifeval::["{file_output_type}" == "pdf"] +有关集群概览页面的其他信息,请参阅《{ks_product_right}集群管理指南》的“概览”章节。 +endif::[] + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 监控**扩展组件。 + +== Steps + +include::../../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ +-- +**概览**页面提供以下监控信息: + +[%header,cols="1a,4a"] +|=== +|功能区 |描述 + +|集群配额统计 +|当前集群中容器和项目的 CPU 配额和内存配额,包含预留数量、上限数量和总量。 + +|节点资源用量 +|所有节点的 CPU、内存、磁盘的总量和实时用量,以及集群允许创建的容器组总数和已创建的容器组数量。默认情况下每个节点最多允许创建 110 个容器组。 + +|容器组 +|当前集群的各种类型容器组的数量。 + +容器组状态类型包括: + +include::../../../../../_custom-en/clusterManagement/pods/pods-para-podStatus_overview.adoc[] + +容器组 QoS(服务质量)类型包括: + +include::../../../../../_custom-en/clusterManagement/pods/pods-para-qosTypes.adoc[] + +|Kubernetes 状态 +|当前集群的每秒 API 请求次数、API 请求延迟、容器组调度次数和容器组调度失败次数。 + +// |系统组件 +// |当前集群中的系统组件。系统组件是运行在{ks_product_both}平台中用于实现平台功能的工作负载。 + +|资源用量排行 +|当前集群中特定资源用量最高的 5 个节点、容器组和项目。 + +* 在左侧下拉列表中选择节点、容器组或项目,在右侧下拉列表中选择不同的排序依据。 + +* 在列表上方点击image:/images/ks-qkcp/zh/icons/sort-ascending.svg[sort-ascending,18,18]/image:/images/ks-qkcp/zh/icons/sort-descending.svg[sort-descending,18,18] 可按升序/降序排序。 + +* 点击下方的**查看更多**,查看节点、容器组和项目的资源用量详情。 +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/01-overview/02-workspace-monitoring-overview.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/01-overview/02-workspace-monitoring-overview.adoc new file mode 100644 index 000000000..c219e9c0c --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/01-overview/02-workspace-monitoring-overview.adoc @@ -0,0 +1,75 @@ +--- +title: "查看企业空间监控概览" +description: "介绍如何查看企业空间概览页面的监控信息。" +weight: 02 +--- + +:ks_permission: **监控查看** +:ks_navigation: **概览** + +本节介绍如何查看企业空间概览页面的监控信息。 + + +== Prerequisites + + +* {empty} +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 监控**扩展组件。 + +== Steps + +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] ++ +-- +**概览**页面的**资源用量**页签提供以下信息: + +[%header,cols="1a,4a"] +|=== +|功能区 |描述 + +|物理资源 +|企业空间在指定集群中的 CPU 和内存使用情况。 + +|应用资源 +|企业空间在指定集群中创建的部署、有状态副本集、守护进程集、任务、定时任务、持久卷声明等的数量。 +|=== + +include::../../../../../../_ks_components-en/oper-selectTimeRange.adoc[] + +include::../../../../../../_ks_components-en/oper-Autorefresh.adoc[] + +include::../../../../../../_ks_components-en/oper-refreshData.adoc[] + +* 在右上角点击**集群**下拉列表可查看特定集群中的数据。 +-- + +. 在**概览**页面点击**用量排行**页签查看企业空间中的项目的资源使用情况。 ++ +-- +* 在列表左上角点击**集群**下拉列表可查看特定集群中的数据。 + +* 在列表上方点击下拉列表可选择按照 CPU 用量、内存用量、容器组数量、出站流量或入站流量对项目进行排序。 + +* 在列表上方点击image:/images/ks-qkcp/zh/icons/sort-ascending.svg[sort-ascending,18,18]/image:/images/ks-qkcp/zh/icons/sort-descending.svg[sort-descending,18,18] 可按升序/降序排序。 + +include::../../../../../_custom-en/clusterManagement/clusterStatus/clusterStatus-oper-exportJsonData.adoc[] +-- + +. 在**概览**页面点击**集群信息**页签查看授权给企业空间的集群的 CPU、内存、磁盘的总量和已使用量,以及集群上可创建容器组的总数和已创建容器组的数量。 ++ +-- +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +默认情况下每个集群节点最多可以创建 110 个容器组。 + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/01-overview/03-project-monitoring-overview.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/01-overview/03-project-monitoring-overview.adoc new file mode 100644 index 000000000..ae318ec4a --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/01-overview/03-project-monitoring-overview.adoc @@ -0,0 +1,68 @@ +--- +title: "查看项目监控概览" +description: "介绍如何查看项目概览页面的监控信息。" +weight: 03 +--- + +:ks_permission: **监控查看** +:ks_navigation: **概览** + +本节介绍如何查看项目概览页面的监控信息。 + +ifeval::["{file_output_type}" == "html"] +有关项目概览页面的其他信息,请参阅link:../../../../../09-project-management/02-overview/01-view-project-overall-information/[查看项目概览信息]。 +endif::[] + +ifeval::["{file_output_type}" == "pdf"] +有关项目概览页面的其他信息,请参阅《{ks_product_right}项目管理指南》的“概览”章节。 +endif::[] + + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 监控**扩展组件。 + +== Steps + + +include::../../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] ++ +-- +**概览**页面提供以下监控信息: + +[%header,cols="1a,4a"] +|=== +|功能区 |描述 + +|资源用量 +|当前项目的CPU、内存、磁盘的总量和实时用量。 + +|容器组 +|当前项目的各种类型容器组的数量。 + +容器组状态类型包括: + +include::../../../../../_custom-en/clusterManagement/pods/pods-para-podStatus_overview.adoc[] + +容器组 QoS(服务质量)类型包括: + +include::../../../../../_custom-en/clusterManagement/pods/pods-para-qosTypes.adoc[] + +|资源用量排行 +|当前项目中特定资源用量最高的 5 个工作负载。点击下拉列表可选择按 CPU、内存、出站流量或入站流量排序。 + +* 在列表上方点击image:/images/ks-qkcp/zh/icons/sort-ascending.svg[sort-ascending,18,18]/image:/images/ks-qkcp/zh/icons/sort-descending.svg[sort-descending,18,18] 可按升序/降序排序。 + +* 点击下方的**查看更多**,查看工作负载的资源用量详情。 +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/01-overview/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/01-overview/_index.adoc new file mode 100644 index 000000000..3d9276e9b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/01-overview/_index.adoc @@ -0,0 +1,8 @@ +--- +title: "概览" +description: "介绍如何查看集群、企业空间、项目概览页面的监控信息。" +weight: 01 +layout: "second" +--- + +本节介绍安装“WhizardTelemetry 监控”扩展组件后,如何查看集群、企业空间、项目概览页面的监控信息。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/01-view-cluster-status-overview.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/01-view-cluster-status-overview.adoc new file mode 100644 index 000000000..0b9bed5f8 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/01-view-cluster-status-overview.adoc @@ -0,0 +1,63 @@ +--- +title: "查看集群状态概览" +keywords: "Kubernetes, {ks_product}, 监控告警, 集群状态,概览" +description: "介绍如何查看集群状态概览。" +weight: 01 +--- + +:ks_permission: **监控查看** +:ks_navigation: **监控告警 > 集群状态** + + +本节介绍如何查看集群状态概览。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 监控**扩展组件。 + +== Steps + +include::../../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**集群状态**页面的**概览**区域查看集群节点、集群资源、etcd 和服务组件的状态。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|集群节点状态 +|集群的节点总数和正常节点数量。 + +|集群资源用量 +|集群的 CPU、内存、磁盘资源的总数和已使用量,以及集群可创建容器组总数和已创建容器组数量。默认情况下每个正常集群节点最多可创建 110 个容器组。 + +|etcd 监控 +|etcd 数据库的服务状态、Raft 提议数量、数据库大小和客户端流量。 + +* **服务状态**:显示 etcd 集群的 Leader 节点、每个节点的 IP 地址和 1 小时内 Leader 变更次数。 + +* **Raft 提议**:显示 Raft 提议的每秒提交次数、应用次数、失败次数和排队提议数量。 + +* **数据库大小**:etcd 数据库大小随时间的变化。 + +* **客户端流量**:发送给 gRPC 客户端和从 gRPC 客户端接收的数据流量。 + +查看 etcd 监控信息需要提前启用 etcd 监控。有关更多信息,请参阅扩展中心 **WhizardTelemetry 监控**扩展组件的详情页说明。 + +|服务组件监控 +|Kubernetes API 服务器的请求延迟和每秒请求次数,以及调度器的累计调度次数和每秒调度次数。 +|=== +-- diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/02-view-physical-resource-status.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/02-view-physical-resource-status.adoc new file mode 100644 index 000000000..17bccf565 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/02-view-physical-resource-status.adoc @@ -0,0 +1,80 @@ +--- +title: "查看物理资源状态" +keywords: "Kubernetes, {ks_product}, 监控告警, 集群状态,物理资源状态" +description: "介绍如何查看物理资源状态。" +weight: 02 +--- + +:ks_permission: **监控查看** +:ks_navigation: **监控告警 > 集群状态** + + +本节介绍如何查看物理资源状态。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 监控**扩展组件。 + + + +== Steps + +include::../../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**集群状态**页面,点击**物理资源监控**查看集群物理资源的使用情况。 ++ +==== +* **物理资源监控**页签提供以下信息: ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|CPU 用量 +|显示指定时间范围内的集群 CPU 使用量百分比。 + +|CPU 平均负载 +|显示指定时间范围内的集群 CPU 平均负载。CPU 平均负载是一个无量纲值,表示单位时间内 CPU 的平均活跃进程数。 + +|内存用量 +|显示指定时间范围内的集群内存使用量百分比。 + +|磁盘用量 +|显示指定时间范围的内集群磁盘使用量。 + +|Inode 用量 +|显示指定时间范围内的集群 Inode 使用量百分比。 + +|磁盘吞吐 +|显示指定时间范围内的集群磁盘读写速率。 + +|IOPS +|显示指定时间范围内的集群磁盘每秒读写操作数。 + +|网络流量 +|显示指定时间范围内集群网络出入速率。 + +|容器组状态 +|显示指定时间范围内集群运行中、已完成和异常容器组的数。 +|=== +-- + +include::../../../../../../_ks_components-en/oper-selectTimeRange.adoc[] + +include::../../../../../../_ks_components-en/oper-Autorefresh.adoc[] + +include::../../../../../../_ks_components-en/oper-refreshData.adoc[] +==== diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/03-view-etcd-status.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/03-view-etcd-status.adoc new file mode 100644 index 000000000..663e6d661 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/03-view-etcd-status.adoc @@ -0,0 +1,91 @@ +--- +title: "查看 etcd 数据库状态" +keywords: "Kubernetes, {ks_product}, 监控告警, 集群状态,etcd 状态" +description: "介绍如何查看 etcd 数据库状态。" +weight: 03 +--- + +:ks_permission: **监控查看** +:ks_navigation: **监控告警 > 集群状态** + + +本节介绍如何查看 etcd 数据库状态。 + +[.admon.note,cols="a"] +|=== +|说明 + +| +查看 etcd 监控信息需要提前启用 etcd 监控。有关更多信息,请参阅扩展中心 **WhizardTelemetry 监控**扩展组件的详情页说明。 +|=== + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 监控**扩展组件。 + + +== Steps + +include::../../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**集群状态**页面,点击 **etcd 监控**页签查看 etcd 数据库的运行状态。 ++ +==== +* **etcd 监控**页签提供以下信息: ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|服务状态 +|显示 etcd 集群的 Leader 节点、每个节点的 IP 地址和 1 小时内 Leader 变更次数。 + +|数据库大小 +|指定时间范围内 etcd 数据库的大小。 + +|客户端流量 +|显示发送给 gRPC 客户端和从 gRPC 客户端接收的数据流量。 + +|gRPC 流式消息 +|显示服务端的 gRPC 流式消息每秒接收次数和发送次数。 + +|WAL 日志同步时间 +|显示 WAL 调用 fsync 的延迟。在应用日志条目之前,etcd 会在持久化日志条目到磁盘时调用 **wal_fsync**。 + +|数据库同步时间 +|显示后端调用提交延迟的分布。当 etcd 将其最新的增量快照提交到磁盘时,会调用 **backend_commit**。磁盘操作延迟较大(WAL 日志同步时间或库同步时间较长)通常表示磁盘存在问题,这可能会导致请求延迟过高或集群不稳定。 + +|Raft 提议 +| +显示当前 etcd 每秒的 Raft 提议次数。将鼠标悬停在折线图上即可查看具体某个时间点的提议数据。 + +* **提议提交速率**:协商一致提议的提交速率。如果集群运行状况良好,则该指标应随着时间的推移而增加。etcd 集群的几个健康成员可以同时具有不同的一般提议。单个成员与其 Leader 之间的持续较大滞后表示该成员缓慢或不健康。 + +* **提议应用速率**:协商一致提议的总应用率。etcd 服务器异步地应用每个提交的提议。提议提交速率和提议应用速率的差异应该很小(即使在高负载下也只有几千)。如果它们之间的差异持续增大,则表明 etcd 服务器过载。当使用大范围查询或大量 txn 操作等大规模查询时,可能会出现这种情况。 + +* **提议失败速率**:提议失败的总速率。该值受两个因素影响:与 Leader 选举相关的临时失败;集群成员数目达不到规定数目而导致长时间停机。 + +* **排队提议数**:当前待处理提议的数量。待处理提议的增加表明客户端负载较高或成员无法提交提议。 +|=== + +有关 etcd 数据库参数的更多信息,请参阅 link:https://etcd.io/docs/v3.5/metrics/[etcd 官方文档]。 +-- + +include::../../../../../../_ks_components-en/oper-selectTimeRange.adoc[] + +include::../../../../../../_ks_components-en/oper-Autorefresh.adoc[] + +include::../../../../../../_ks_components-en/oper-refreshData.adoc[] +==== diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/04-view-api-server-status.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/04-view-api-server-status.adoc new file mode 100644 index 000000000..71d0ba312 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/04-view-api-server-status.adoc @@ -0,0 +1,59 @@ +--- +title: "查看 Kubernetes API 服务器状态" +keywords: "Kubernetes, {ks_product}, 监控告警, 集群状态,API 服务器状态" +description: "介绍如何查看 Kubernetes API 服务器监控数据。" +weight: 04 +--- + +:ks_permission: **监控查看** +:ks_navigation: **监控告警 > 集群状态** + + +本节介绍如何查看 Kubernetes API 服务器状态。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 监控**扩展组件。 + + + +== Steps + +include::../../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**集群状态**页面,点击 **API Server 监控**页签查看 API 服务器的运行状态。 ++ +==== +* **API Server 监控**页签提供以下信息: ++ +-- +[%header,cols="1a,4a"] +|=== +|指标 |描述 + +|请求延迟 +|指定时间范围内 API 服务器的请求延迟。 + +|每秒请求次数 +|指定时间范围内 API 服务器每秒接受的请求数。 +|=== +-- + +include::../../../../../../_ks_components-en/oper-selectTimeRange.adoc[] + +include::../../../../../../_ks_components-en/oper-Autorefresh.adoc[] + +include::../../../../../../_ks_components-en/oper-refreshData.adoc[] +==== diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/05-view-scheduler-monitoring-data.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/05-view-scheduler-monitoring-data.adoc new file mode 100644 index 000000000..dc39fca97 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/05-view-scheduler-monitoring-data.adoc @@ -0,0 +1,62 @@ +--- +title: "查看调度器状态" +keywords: "Kubernetes, {ks_product}, 监控告警, 集群状态,调度器状态" +description: "介绍如何查看调度器状态。" +weight: 05 +--- + +:ks_permission: **监控查看** +:ks_navigation: **监控告警 > 集群状态** + + +本节介绍如何查看调度器状态。调度器根据容器组的资源需求、节点可用资源和其他约束条件决定容器组运行在哪些节点上。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 监控**扩展组件。 + + + +== Steps + +include::../../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**集群状态**页面,点击**调度器监控**页签查看调度器的运行状态。 ++ +==== +* **调度器监控**页签提供以下信息: ++ +-- +[%header,cols="1a,4a"] +|=== +|指标 |描述 + +|调度次数 +|指定时间范围内的容器组调度成功、错误和失败累计次数。 + +|调度速率 +|指定时间范围内的容器组每秒调度成功、错误和失败次数。 + +|调度延迟 +|指定时间范围内容器组调度延迟的 99% 分位数、90% 分位数、中位数和平均值。 +|=== +-- + +include::../../../../../../_ks_components-en/oper-selectTimeRange.adoc[] + +include::../../../../../../_ks_components-en/oper-Autorefresh.adoc[] + +include::../../../../../../_ks_components-en/oper-refreshData.adoc[] +==== diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/06-view-nodes-ranked-by-resource-usage.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/06-view-nodes-ranked-by-resource-usage.adoc new file mode 100644 index 000000000..2a1d8b27f --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/06-view-nodes-ranked-by-resource-usage.adoc @@ -0,0 +1,44 @@ +--- +title: "查看节点资源用量排行" +keywords: "Kubernetes, {ks_product}, 集群管理, 监控告警, 集群状态, 资源用量" +description: "介绍如何按照特定资源的用量对节点进行排序。" +weight: 06 +--- + +:ks_permission: **监控查看** +:ks_navigation: **监控告警 > 集群状态** + + +本节介绍如何按照特定资源的用量对节点进行排序。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 监控**扩展组件。 + + + +== Steps + +include::../../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**集群状态**页面,点击**资源用量排行**页签查看各节点的资源使用情况。 ++ +-- +* 在左上角点击下拉列表可选择按照 CPU 用量、CPU 平均负载、内存用量、磁盘用量、Inode 用量或容器组用量对节点进行排序。 + +include::../../../../../_custom-en/clusterManagement/clusterStatus/clusterStatus-oper-sortAscendingDescending.adoc[] + +include::../../../../../_custom-en/clusterManagement/clusterStatus/clusterStatus-oper-exportJsonData.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/_index.adoc new file mode 100644 index 000000000..c383597bd --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/03-cluster-status/_index.adoc @@ -0,0 +1,10 @@ +--- +title: "集群状态" +keywords: "Kubernetes, {ks_product}, 监控告警, 集群状态" +description: "介绍如何查看集群状态。" +weight: 03 +layout: "second" +--- + + +本节介绍如何查看集群状态。集群状态展示集群资源的监控数据和用量排行情况。 diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/04-application-resources/01-view-resource-usage.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/04-application-resources/01-view-resource-usage.adoc new file mode 100644 index 000000000..c81e04997 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/04-application-resources/01-view-resource-usage.adoc @@ -0,0 +1,61 @@ +--- +title: "查看应用资源用量" +keywords: "Kubernetes, {ks_product}, 集群管理, 监控告警, 资源用量" +description: "介绍如何查看应用资源用量的监控数据。" +weight: 01 +--- + +:ks_permission: **监控查看** +:ks_navigation: **监控告警 > 应用资源** + + +本节介绍如何查看应用资源用量。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 监控**扩展组件。 + + + +== Steps + +include::../../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**应用资源**页面,点击**资源用量**页签查看集群资源用量、应用资源用量和项目数量。 ++ +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|集群资源用量 +|当前集群已使用的 CPU 和内存资源数量。 + +|应用资源用量 +|当前集群中已创建的部署、有状态副本集、守护进程集、任务、定时任务、持久卷声明、服务、应用路由、容器组的数量。 + +|项目数量 +|当前集群中的项目数量。 +|=== + ++ +-- +* 点击**集群资源用量**和**应用资源用量**中的折线图,查看资源用量随时间变化的详细信息。 + +include::../../../../../../_ks_components-en/oper-selectTimeRange.adoc[] + +include::../../../../../../_ks_components-en/oper-Autorefresh.adoc[] + +include::../../../../../../_ks_components-en/oper-refreshData.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/04-application-resources/02-view-projects-ranked-by-resource-usage.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/04-application-resources/02-view-projects-ranked-by-resource-usage.adoc new file mode 100644 index 000000000..65da72fc0 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/04-application-resources/02-view-projects-ranked-by-resource-usage.adoc @@ -0,0 +1,44 @@ +--- +title: "查看项目资源用量排行" +keywords: "Kubernetes, {ks_product}, 集群管理, 应用资源,用量排行" +description: "介绍如何查看项目资源用量排行。" +weight: 02 +--- + +:ks_permission: **监控查看** +:ks_navigation: **监控告警 > 应用资源** + + +本节介绍如何查看项目资源用量排行。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 监控**扩展组件。 + + + +== 查看用量排行 + +include::../../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**应用资源**页面,点击**用量排行**页签查看各项目的资源使用情况。 ++ +-- +* 在列表左上角点击下拉列表可选择按照 CPU 用量、内存用量、容器组数量、出站流量或入站流量对项目进行排序。 + +include::../../../../../_custom-en/clusterManagement/clusterStatus/clusterStatus-oper-sortAscendingDescending.adoc[] + +include::../../../../../_custom-en/clusterManagement/clusterStatus/clusterStatus-oper-exportJsonData.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/04-application-resources/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/04-application-resources/_index.adoc new file mode 100644 index 000000000..67a96ccd6 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/04-application-resources/_index.adoc @@ -0,0 +1,11 @@ +--- +title: "应用资源" +keywords: "Kubernetes, {ks_product}, 集群管理, 监控告警, 应用资源" +description: "介绍如何查看应用资源数据。" +weight: 04 +layout: "second" +--- + + + +本节介绍如何查看应用资源数据。 diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/01-create-a-custom-monitoring-dashboard.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/01-create-a-custom-monitoring-dashboard.adoc new file mode 100644 index 000000000..b479c6721 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/01-create-a-custom-monitoring-dashboard.adoc @@ -0,0 +1,40 @@ +--- +title: "创建自定义监控面板" +keywords: "Kubernetes, {ks_product}, 集群管理, 自定义监控面板, 创建自定义监控面板" +description: "介绍如何创建自定义监控面板。" +weight: 01 +--- + +:ks_permission: **监控管理** +:ks_navigation: **监控告警 > 自定义监控** + + +include::../../../../../_custom-en/clusterManagement/customMonitoringDashboards/customMonitoringDashboards-desc-createACustomMonitoringDashboard.adoc[] + + +== Prerequisites + + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + +include::../../../../../_custom-en/clusterManagement/customMonitoringDashboards/customMonitoringDashboards-prer-exposeMetrics.adoc[] + +* 您需要在用于暴露工作负载的服务上设置监控导出器以声明提供应用程序监控指标的路径。{ks_product_right}将根据监控导出器的相关参数获取应用程序的监控指标。有关更多信息,请参阅link:../../08-edit-a-metrics-exporter/[编辑监控导出器]。 + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/customMonitoringDashboards/customMonitoringDashboards-oper-createACustomMonitoringDashboard.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/02-view-a-custom-monitoring-dashboard.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/02-view-a-custom-monitoring-dashboard.adoc new file mode 100644 index 000000000..db2eae4a5 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/02-view-a-custom-monitoring-dashboard.adoc @@ -0,0 +1,31 @@ +--- +title: "查看自定义监控面板" +keywords: "Kubernetes, {ks_product}, 集群管理, 自定义监控面板, 查看自定义监控面板" +description: "介绍如何查看自定义监控面板。" +weight: 02 +--- + +:ks_permission: **监控查看** +:ks_navigation: **监控告警 > 自定义监控** + + +include::../../../../../_custom-en/clusterManagement/customMonitoringDashboards/customMonitoringDashboards-desc-viewACustomMonitoringDashboard.adoc[] + + +== Prerequisites + + +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/customMonitoringDashboards/customMonitoringDashboards-oper-viewACustomMonitoringDashboard.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/03-edit-custom-monitoring-dashboard-information.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/03-edit-custom-monitoring-dashboard-information.adoc new file mode 100644 index 000000000..a248f6751 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/03-edit-custom-monitoring-dashboard-information.adoc @@ -0,0 +1,32 @@ +--- +title: "编辑自定义监控面板信息" +keywords: "Kubernetes, {ks_product}, 集群管理, 自定义监控面板, 编辑自定义监控面板信息" +description: "介绍如何编辑自定义监控面板的信息。" +weight: 03 +--- + +:ks_permission: **监控管理** +:ks_navigation: **监控告警 > 自定义监控** + + +本节介绍如何编辑自定义监控面板的信息。 + +您可以编辑自定义监控面板的别名和描述。{ks_product_right}不支持编辑自定义监控面板的名称。 + +== Prerequisites + + +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/customMonitoringDashboards/customMonitoringDashboards-oper-editCustomMonitoringDashboardInformation.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/04-edit-a-custom-monitoring-dashboard.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/04-edit-a-custom-monitoring-dashboard.adoc new file mode 100644 index 000000000..70030387e --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/04-edit-a-custom-monitoring-dashboard.adoc @@ -0,0 +1,31 @@ +--- +title: "编辑自定义监控面板" +keywords: "Kubernetes, {ks_product}, 集群管理, 自定义监控面板, 编辑自定义监控面板" +description: "介绍如何编辑自定义监控面板。" +weight: 04 +--- + +:ks_permission: **监控管理** +:ks_navigation: **监控告警 > 自定义监控** + + +include::../../../../../_custom-en/clusterManagement/customMonitoringDashboards/customMonitoringDashboards-desc-editACustomMonitoringDashboard.adoc[] + + +== Prerequisites + + +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/customMonitoringDashboards/customMonitoringDashboards-oper-editACustomMonitoringDashboard.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/05-delete-custom-monitoring-dashboards.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/05-delete-custom-monitoring-dashboards.adoc new file mode 100644 index 000000000..a6f2bcceb --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/05-delete-custom-monitoring-dashboards.adoc @@ -0,0 +1,43 @@ +--- +title: "删除自定义监控面板" +keywords: "Kubernetes, {ks_product}, 集群管理, 自定义监控面板, 删除自定义监控面板" +description: "介绍如何删除自定义监控面板。" +weight: 05 +--- + +:ks_permission: **监控管理** +:ks_navigation: **监控告警 > 自定义监控** + + +include::../../../../../_custom-en/clusterManagement/customMonitoringDashboards/customMonitoringDashboards-desc-deleteCustomMonitoringDashboards.adoc[] + + +== Prerequisites + + +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + +== 删除单个自定义监控面板 + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/customMonitoringDashboards/customMonitoringDashboards-oper-deleteASingleCustomMonitoringDashboard.adoc[] + + +== 批量删除自定义监控面板 + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/customMonitoringDashboards/customMonitoringDashboards-oper-deleteMultipleCustomMonitoringDashboards.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/_index.adoc new file mode 100644 index 000000000..ed33b43e4 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/05-custom-monitoring/_index.adoc @@ -0,0 +1,19 @@ +--- +title: "自定义监控" +keywords: "Kubernetes, {ks_product}, 集群管理, 自定义监控面板" +description: "介绍如何使用自定义监控面板。" +weight: 05 +layout: "second" +--- + + + +include::../../../../../_custom-en/clusterManagement/customMonitoringDashboards/customMonitoringDashboards-desc-customMonitoringDashboards.adoc[] + +include::../../../../../_custom-en/clusterManagement/customMonitoringDashboards/customMonitoringDashboards-desc-howToUse.adoc[] + +include::../../../../../_custom-en/clusterManagement/customMonitoringDashboards/customMonitoringDashboards-desc-exposeMetrics.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/customMonitoringDashboards/customMonitoringDashboards-oper-useCustomMonitoringDashboard.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/08-edit-a-metrics-exporter.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/08-edit-a-metrics-exporter.adoc new file mode 100644 index 000000000..efcd67aaf --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/08-edit-a-metrics-exporter.adoc @@ -0,0 +1,45 @@ +--- +title: "编辑监控导出器" +keywords: "Kubernetes, {ks_product}, 项目管理, 工作负载, 服务, 编辑监控导出器" +description: "介绍如何编辑监控导出器。" +weight: 08 +--- + +:ks_permission: **应用负载管理** +:ks_navigation: **应用负载 > 服务** + + +include::../../../../_custom-en/clusterManagement/services/services-desc-editAMetricsExporter.adoc[] + +include::../../../../_custom-en/clusterManagement/customMonitoringDashboards/customMonitoringDashboards-desc-exposeMetrics.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/services/services-oper-exposeMetrics.adoc[] + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + +include::../../../../_custom-en/clusterManagement/services/services-prer-exposeMetrics.adoc[] + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/services/services-oper-openDetailsPage.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/services/services-oper-editAMetricsExporter.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/_index.adoc new file mode 100644 index 000000000..c6df2b9fb --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/05-monitoring/_index.adoc @@ -0,0 +1,47 @@ +--- +title: "WhizardTelemetry 监控" +keywords: "Kubernetes, {ks_product}, 平台管理, Whizard 可观测中心" +description: "介绍如何使用“WhizardTelemetry 监控”扩展组件。" +weight: 05 +layout: "second" +--- + + +本节介绍如何使用“WhizardTelemetry 监控”扩展组件。 + +WhizardTelemetry 监控是 WhizardTelemetry 可观测平台中提供监控功能的扩展组件,其中包含了 Whizard 可观测中心。可提供多租户视角的云原生资源监控能力, 包括针对多集群、节点、工作负载、GPU、K8s 控制面等对象的核心监控指标实时和历史数据展示等功能。 + +本节仅介绍单集群环境下的监控功能。有关单集群的告警功能,请参阅 link:../06-alerting[WhizardTelemetry 告警]。有关多集群的监控和告警功能,请参阅 link:../07-whizard[Whizard 可观测中心]。 + +安装“WhizardTelemetry 监控”扩展组件后,集群和项目的左侧导航栏将显示**监控告警**选项,集群和项目中应用负载下的服务将支持**编辑监控导出器**,以下页面也将显示相关监控指标的数据: + +[%header,cols="1a,3a"] +|=== +|模块 +|页面 + +|集群管理 +| +* 概览页面; +* 集群节点、项目的列表和详情页; +* 工作负载、任务、容器组、服务、容器组 IP 池、持久卷声明的详情页; +* 集群设置的基本信息页面。 + +|企业空间管理 +| +* 概览页面; +* 项目列表。 + +|项目管理 +| +* 概览页面; +* 工作负载、任务、容器组、服务、持久卷声明的详情页。 +|=== + +[.admon.note,cols="a"] +|=== +|说明 + +| +有关组件配置的更多信息,请参阅扩展中心“WhizardTelemetry 监控”扩展组件的详情页说明。 +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/01-create-a-rule-group.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/01-create-a-rule-group.adoc new file mode 100644 index 000000000..d3bd54cad --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/01-create-a-rule-group.adoc @@ -0,0 +1,98 @@ +--- +title: "创建规则组" +keywords: "Kubernetes, {ks_product}, 集群管理, 监控告警, 规则组, 创建规则组" +description: "介绍如何创建告警规则组。" +weight: 01 +--- + + +:ks_permission: **规则组管理** +:ks_navigation: **监控告警 > 规则组** + + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-desc-createAnAlertingPolicy.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 告警**扩展组件。 + + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + +// +// include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-prer-exposeMetrics.adoc[] + +// + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 ++ +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-openListPage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-setBasicInfo.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-addAlertRule.adoc[] ++ +==== +include::../../../../../_custom-en/platformManagement/observabilityCenter/ruleGroups/ruleGroups-para-commonParameters_new.adoc[] + +* 规则模板 ++ +-- +通过下拉列表选择监控目标和触发条件。 + +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|资源类型 +|需要监控的工作负载的类型,如部署、有状态副本集、守护进程集。仅显示在项目的告警规则设置中。 + +|监控目标 +|需要监控的目标,如集群节点、工作负载等。 + +include::../../../../../_custom-en/platformManagement/observabilityCenter/ruleGroups/ruleGroups-para-triggerCondition.adoc[] +|=== +-- + +* 自定义规则 ++ +-- +通过 PromQL 表达式指定监控目标和触发条件。 + +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +include::../../../../../_custom-en/platformManagement/observabilityCenter/ruleGroups/ruleGroups-para-duration.adoc[] + +|告警级别 +| +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-para-alertLevel.adoc[] + +include::../../../../../_custom-en/platformManagement/observabilityCenter/ruleGroups/ruleGroups-para-ruleExpression.adoc[] +|=== +-- +==== + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-clickOK.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/02-view-a-rule-group-list.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/02-view-a-rule-group-list.adoc new file mode 100644 index 000000000..34a2eeca5 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/02-view-a-rule-group-list.adoc @@ -0,0 +1,45 @@ +--- +title: "查看规则组列表" +keywords: "Kubernetes, {ks_product}, 集群管理, 监控告警, 规则组, 查看规则组列表" +description: "介绍如何查看告警规则组列表。" +weight: 02 +--- + +:ks_permission: **规则组查看** +:ks_navigation: **监控告警 > 规则组** + + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-desc-viewAnAlertingPolicyList.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 告警**扩展组件。 + + + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-openListPage.adoc[] ++ +==== +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-para-alertingPolicyList.adoc[] + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-searchForAlertingPolicies.adoc[] + +include::../../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/03-view-rule-group-details.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/03-view-rule-group-details.adoc new file mode 100644 index 000000000..f0905de1d --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/03-view-rule-group-details.adoc @@ -0,0 +1,38 @@ +--- +title: "查看规则组详情" +keywords: "Kubernetes, {ks_product}, 集群管理, 监控告警, 规则组, 查看规则组详情" +description: "介绍如何查看规则组详情。" +weight: 03 +--- + +:ks_permission: **规则组查看** +:ks_navigation: **监控告警 > 规则组** + + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-desc-viewAlertingPolicyDetails.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 告警**扩展组件。 + + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-openDetailsPage.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-viewAlertingPolicyDetails.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/04-edit-rule-group-information.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/04-edit-rule-group-information.adoc new file mode 100644 index 000000000..f84eccb53 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/04-edit-rule-group-information.adoc @@ -0,0 +1,42 @@ +--- +title: "编辑规则组信息" +keywords: "Kubernetes, {ks_product}, 集群管理, 监控告警, 规则组, 编辑规则组信息" +description: "介绍如何编辑规则组信息。" +weight: 04 +--- + +:ks_permission: **规则组管理** +:ks_navigation: **监控告警 > 规则组** + + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-desc-editRuleGroupInformation.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 告警**扩展组件。 + + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-openListPage.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-clickEditInformation.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-editRuleGroupInformation.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/05-edit-alert-rules.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/05-edit-alert-rules.adoc new file mode 100644 index 000000000..afe521357 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/05-edit-alert-rules.adoc @@ -0,0 +1,42 @@ +--- +title: "编辑告警规则" +keywords: "Kubernetes, {ks_product}, 集群管理, 监控告警, 规则组, 编辑告警规则" +description: "介绍如何编辑规则组中的告警规则。" +weight: 05 +--- + +:ks_permission: **规则组管理** +:ks_navigation: **监控告警 > 规则组** + + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-desc-editAnAlertingPolicy.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 告警**扩展组件。 + + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-openListPage.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-editAnAlertingPolicy.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-editAlertRules.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/06-disable-and-enable-rule-groups.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/06-disable-and-enable-rule-groups.adoc new file mode 100644 index 000000000..c2b46c808 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/06-disable-and-enable-rule-groups.adoc @@ -0,0 +1,54 @@ +--- +title: "禁用和启用规则组" +keywords: "Kubernetes, {ks_product}, 集群管理, 监控告警, 规则组, 禁用和启用规则组" +description: "介绍如何禁用和启用告警规则组。" +weight: 06 +--- + +:ks_permission: **规则组管理** +:ks_navigation: **监控告警 > 规则组** + + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-desc-disableAndEnablerRuleGroups.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 告警**扩展组件。 + + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + +== 禁用和启用单个规则组 + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-openListPage.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-disableAndEnableASingleRuleGroup.adoc[] + + +== 批量禁用和启用规则组 + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-openListPage.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-disableAndEnableMultipleRuleGroups.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/07-delete-rule-groups.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/07-delete-rule-groups.adoc new file mode 100644 index 000000000..c7cc3dd68 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/07-delete-rule-groups.adoc @@ -0,0 +1,46 @@ +--- +title: "删除规则组" +keywords: "Kubernetes, {ks_product}, 集群管理, 监控告警, 规则组, 编辑规则组" +description: "介绍如何删除规则组。" +weight: 07 +--- + +:ks_permission: **规则组管理** +:ks_navigation: **监控告警 > 规则组** + + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-desc-deleteAlertingPolicies.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 告警**扩展组件。 + + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + +== 删除单个规则组 + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-deleteASingleAlertingPolicy.adoc[] + + +== 批量删除规则组 + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-deleteMultipleAlertingPolicies.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/08-reset-built-in-rule-groups.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/08-reset-built-in-rule-groups.adoc new file mode 100644 index 000000000..48f4df2d5 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/08-reset-built-in-rule-groups.adoc @@ -0,0 +1,60 @@ +--- +title: "重置内置规则组" +keywords: "Kubernetes, {ks_product}, 集群管理, 监控告警, 告警管理, 规则组, 删除规则组" +description: "介绍如何重置内置规则组。" +weight: 08 +--- + +:ks_permission: **规则组管理** +:ks_navigation: **监控告警 > 规则组** + + +本节介绍如何重置内置规则组。 + +[.admon.note,cols="a"] +|=== +|说明 + +| +* {ks_product_right}仅支持重置内置规则组,不支持重置自定义规则组。 +* 项目中没有内置规则组。 +|=== + +[.admon.warning,cols="a"] +|=== +|警告 + +| +规则组重置后不能恢复,请谨慎执行此操作。 +|=== + + + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 告警**扩展组件。 + + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群。 + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**规则组**页面,点击**内置规则组**打开规则组列表。 + +. 在需要重置的规则组右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**重置**。 + +. 在**重置规则组**对话框,点击**确定**。 + diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/_index.adoc new file mode 100644 index 000000000..1bd79efbe --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/03-rule-groups/_index.adoc @@ -0,0 +1,24 @@ +--- +title: "规则组" +keywords: "Kubernetes, {ks_product}, 集群管理, 规则组" +description: "介绍如何创建、编辑和查看告警规则组。" +weight: 03 +layout: "second" +--- + +本节介绍如何在集群和项目中创建、编辑、启用、禁用和查看告警规则组。 + +创建规则组后,系统可在特定监控指标满足预设条件和持续时间时生成告警。 + +//note +[.admon.note,cols="a"] +|=== +|说明 + +| +- {ks_product_right}为集群提供了内置规则组,同时也支持自定义规则组。若已启用 Whizard 可观测中心,内置规则组只能在 Whizard 可观测中心中进行管理。有关更多信息,请参阅 link:../../07-whizard/05-alert-management/01-rule-groups/[Whizard 规则组]。 + +- 在项目中,只支持自定义规则组。 +|=== + + diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/04-alerts/01-view-an-alert-list.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/04-alerts/01-view-an-alert-list.adoc new file mode 100644 index 000000000..bb8afc5a6 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/04-alerts/01-view-an-alert-list.adoc @@ -0,0 +1,45 @@ +--- +title: "查看告警列表" +keywords: "Kubernetes, {ks_product}, 集群管理, 告警, 查看告警列表" +description: "介绍如何查看告警列表。" +weight: 01 +--- + +:ks_permission: **告警查看** +:ks_navigation: **监控告警 > 告警** + + +include::../../../../../_custom-en/clusterManagement/alerts/alerts-desc-viewAnAlertingMessageList.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 告警**扩展组件。 + +* {empty} +include::../../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../..//_custom-en/clusterManagement/alerts/alerts-oper-openListPage.adoc[] + ++ +==== +include::../../../../../_custom-en/clusterManagement/alerts/alerts-para-alertingMessageList.adoc[] + +include::../../../../../_custom-en/clusterManagement/alerts/alerts-oper-searchForAlertingMessages_new.adoc[] + +include::../../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/04-alerts/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/04-alerts/_index.adoc new file mode 100644 index 000000000..1ede1ca08 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/04-alerts/_index.adoc @@ -0,0 +1,13 @@ +--- +title: "告警" +keywords: "Kubernetes, {ks_product}, 集群管理, 告警" +description: "介绍如何使用告警功能。" +weight: 04 +layout: "second" +--- + + + +本节介绍如何使用告警功能。 + +告警由系统根据告警规则组生成。当告警规则组中设置的指标满足预设的条件和持续时间时,系统将生成告警。当指标不再满足预设的条件时,告警将被系统自动清除。 diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/_index.adoc new file mode 100644 index 000000000..5fdd2d9aa --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/06-alerting/_index.adoc @@ -0,0 +1,93 @@ +--- +title: "WhizardTelemetry 告警" +keywords: "Kubernetes, {ks_product}, 集群管理, 监控告警" +description: "介绍如何使用“WhizardTelemetry 告警”扩展组件。" +weight: 06 +layout: "second" +--- + +本节介绍如何使用“WhizardTelemetry 告警”扩展组件。 + +WhizardTelemetry 告警基于 KubeSphere 采集的监控数据,可针对不同资源类型和监控指标,提供平台、集群及项目视角的告警及告警规则管理功能。 + +安装“WhizardTelemetry 告警”扩展组件后,集群和项目左侧导航栏的**监控告警**菜单下将显⽰**告警**和**规则组**选项。 + +//attention +[.admon.attention,cols="a"] +|=== +| 注意 + +| +- WhizardTelemetry 告警依赖 WhizardTelemetry 平台服务和 WhizardTelemetry 监控,因此在安装 WhizardTelemetry 告警之前必须先安装 WhizardTelemetry 平台服务和 WhizardTelemetry 监控两个扩展组件,否则告警相关功能无法正常使用! + +- 为了及时收到系统告警消息,建议同时安装 WhizardTelemetry 通知扩展组件。 +|=== + +**配置说明:** + +[.admon.attention,cols="a"] +|=== +|注意 + +| +如果在安装 WhizardTelemetry 告警之后,对 WhizardTelemetry 监控是否启用 Whizard 可观测中心进行了变更,请按以下说明更新WhizardTelemetry 告警的配置。 +|=== + +* 当 **WhizardTelemetry 监控**扩展组件未启用 Whizard 可观测中心时: + +. 安装 **WhizardTelemetry 告警**扩展组件时,设置 `global.rules.distributionMode` 为 Member。 + +. 配置 `agent.ruler.alertmanagersUrl` 为 alertmanager-proxy 服务地址(该服务由 WhizardTelemetry 通知提供,安装在 host 集群,默认可在 http://:31093 访问)。 ++ +-- +[,yaml] +---- +global: + rules: + distributionMode: Member + +agent: + ruler: + alertmanagersUrl: + - 'http://:31093' +---- + +[.admon.note,cols="a"] +|=== +|说明 + +| +如果未启用 WhizardTelemetry 通知,希望将告警发送到外部 alertmanager 时,请将 `agent.ruler.alertmanagersUrl` 配置为外部服务地址。 +|=== +-- + +* 当 **WhizardTelemetry 监控**扩展组件已启用 Whizard 可观测中心时: ++ +==== +安装 **WhizardTelemetry 告警**扩展组件时,保持 `global.rules.distributionMode` 为 None。 + +[,yaml] +---- +global: + rules: + distributionMode: None +---- + +在该场景下,告警默认直接推送到 alertmanager 服务(该服务由 WhizardTelemetry 通知提供,安装在 host 集群)。保持如下默认配置即可。 + +[,yaml] +---- +extension: + ruler: + alertmanagersUrl: + - 'dnssrv+http://whizard-notification-alertmanager-headless.kubesphere-monitoring-system.svc:9093' +---- + +[.admon.note,cols="a"] +|=== +|说明 + +| +如果未启用 WhizardTelemetry 通知,希望将告警发送到外部 alertmanager 时,请将 `extension.ruler.alertmanagersUrl` 配置为外部服务地址。 +|=== +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/01-enable-whizard.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/01-enable-whizard.adoc new file mode 100644 index 000000000..366f10b5a --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/01-enable-whizard.adoc @@ -0,0 +1,89 @@ +--- +title: "启用 Whizard 可观测中心" +description: "介绍如何启用 Whizard 可观测中心。" +weight: 01 +--- + +本节介绍如何配置相关扩展组件,以启用 Whizard 可观测中心。 + +为了使用 Whizard 可观测中心的完整功能,您需要安装并启用 WhizardTelemetry 平台服务、 WhizardTelemetry 监控以及 WhizardTelemetry 告警扩展组件,并进行以下配置。 + +== Prerequisites + +* 您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息,请参阅link:../../../../05-users-and-roles/01-users/[用户]和link:../../../../05-users-and-roles/02-platform-roles/[平台角色]。 + +* 已安装 **WhizardTelemetry 平台服务**、 **WhizardTelemetry 监控**以及 **WhizardTelemetry 告警**扩展组件。 + +// * 已在**平台设置 > 许可证**页面导入分布式云可观测中心的 license,否则,无法看到 Whizard 可观测中心的入口。 + +== Steps + +. 以具有 **platform-admin** 角色的用户登录{ks_product_left} Web 控制台。 +. 点击**扩展中心**。 +. 点击已安装的组件名称,进入组件详情页。 +. 点击组件图标下的image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],选择**扩展组件配置**。 ++ +-- +**WhizardTelemetry 平台服务** + +将配置文件中的 `whizard-telemetry.config.observability.enabled` 参数设置为 true,然后点击**确定**。 + +[,yaml] +---- +whizard-telemetry: + config: + observability: + enabled: true + endpoint: "http://query-frontend-whizard-operated.kubesphere-monitoring-system.svc:10902" +---- +**WhizardTelemetry 监控** + +修改配置文件的以下部分,然后点击**确定**。 + +[,yaml] +---- +whizard-monitoring-helper: + whizardHelper: + enabled: true ## set true to enable whizard + +whizard: + enabled: true + +frontend: + enabled: true + +whizardAgentProxy: + enabled: true + +whizard-agent-proxy: + config: + gatewayUrl: "http://172.31.73.206:30990" ## set whizard gateway url,default is http://{host_cluster_node_ip}:30990 + +kube-prometheus-stack: + prometheus: + agentMode: true # agentMode need to be set to true when enable whizard +---- + +**WhizardTelemetry 告警** + +确保 `global.rules.distributionMode` 为 None。 + +[,yaml] +---- +global: + rules: + distributionMode: None +---- + +-- +. 编辑完成后,点击顶部导航栏上的image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,即可发现 **Whizard 可观测中心**图标。 ++ +-- +[.admon.note,cols="a"] +|=== +|说明 + +| +启用过程可能需要一定时间,请等待启用完成。 +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/03-resource-monitoring/01-view-monitoring-data-of-multiple-clusters.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/03-resource-monitoring/01-view-monitoring-data-of-multiple-clusters.adoc new file mode 100644 index 000000000..1636c904b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/03-resource-monitoring/01-view-monitoring-data-of-multiple-clusters.adoc @@ -0,0 +1,86 @@ +--- +title: "查看多集群监控数据" +keywords: "Kubernetes, {ks_product}, 平台管理, Whizard 可观测中心, 查看多集群监控数据" +description: "介绍如何查看多集群监控数据。" +weight: 01 +--- + + +本节介绍如何查看多集群的监控数据。 + + +== Prerequisites + +* 您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息,请参阅link:../../../../../05-users-and-roles/01-users/[用户]和link:../../../../../05-users-and-roles/02-platform-roles/[平台角色]。 + +* host 集群和需要监控的成员集群需要启用 Whizard 可观测中心。 ++ +-- +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +如果成员集群未启用 Whizard 可观测中心,Whizard 可观测中心将无法获取成员集群的数据。 + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + + +== Steps + +include::../../../../../_custom-en/platformManagement/extensionManagement/extensionManagement-oper-logInAsPlatformAdmin.adoc[] + ++ + +. 在页面右上角点击image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,选择 **Whizard 可观测中心**。 + ++ +-- +Whizard 可观测中心的**概览**页面显示所有集群的监控信息。 + +[%header,cols="1a,4a"] +|=== +|功能区 |描述 + +|已创建资源数量 +|显示被监控的所有集群、节点、项目、容器组、部署、有状态副本集、守护进程集、任务、定时任务、卷、服务、应用路由的数量。 + +|资源使用情况 +|显示被监控的所有集群的所有节点的 CPU、内存、磁盘使用情况,以及可已创建容器组数量占可创建容器组最大数量的百分比。默认情况下每个节点最多可以创建 110 个容器组。 + +对于 CPU 和内存,将光标悬停在image:/images/ks-qkcp/zh/icons/eye.svg[eye,18,18]可查看已分配给容器和项目的资源预留和上限数量。 + +// |集群成员和集群角色 +// |显示被监控的所有集群的集群成员和集群角色数量。 + +|全局告警 +|显示全局告警规则组产生的告警数量及最近的告警消息。此处显示的告警不包括集群和项目告警规则组产生的告警。全局告警规则组由平台管理员在 Whizard 可观测中心管理。 + +告警级别的类型包括**提醒、警告、重要和紧急**。 + +告警状态的类型包括: + +include::../../../../../_custom-en/clusterManagement/alerts/alerts-para-alertingStatus.adoc[] + +|容器组 +|显示被监控的所有集群的各种类型容器组的数量。 + +容器组状态类型包括: + +include::../../../../../_custom-en/clusterManagement/pods/pods-para-podStatus_overview.adoc[] + +容器组 QoS(服务质量)类型包括: + +include::../../../../../_custom-en/clusterManagement/pods/pods-para-qosTypes.adoc[] +|=== +-- + +. 在页面右上角,点击**选择集群**,选择需要监控的集群。概览页面将展示选中集群的监控信息。 + +. 点击**收起集群列表/展开集群列表**,隐藏或展示右侧的集群列表。 ++ +-- +* 点击集群列表中的集群名称,进入该集群的概览页面。 + +* 点击image:/images/ks-qkcp/zh/icons/row.svg[row,18,18]和image:/images/ks-qkcp/zh/icons/list_view.svg[list_view,18,18]以列表或缩略图形式查看集群信息。 +-- + diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/03-resource-monitoring/03-resource-ranking.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/03-resource-monitoring/03-resource-ranking.adoc new file mode 100644 index 000000000..a6cdcb27c --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/03-resource-monitoring/03-resource-ranking.adoc @@ -0,0 +1,51 @@ +--- +title: "查看资源用量排行" +keywords: "Kubernetes, {ks_product}, 多集群, Whizard 可观测中心, 资源用量排行" +description: "介绍如何查看资源用量排行。" +weight: 03 +--- + +:ks_navigation: **资源监控 > 资源统计排行** + + +本节介绍如何查看资源用量排行,即当前资源用量最多的集群、节点、项目和容器组。 + + +== Prerequisites + +* 您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息,请参阅link:../../../../../05-users-and-roles/01-users/[用户]和link:../../../../../05-users-and-roles/02-platform-roles/[平台角色]。 + +* host 集群和需要监控的成员集群需要启用 Whizard 可观测中心。 ++ +-- +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +如果成员集群未启用 Whizard 可观测中心,Whizard 可观测中心将无法获取成员集群的数据。 + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + + +== Steps + +include::../../../../../_custom-en/platformManagement/extensionManagement/extensionManagement-oper-logInAsPlatformAdmin.adoc[] + +. 在页面右上角点击image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,选择 **Whizard 可观测中心**。 + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + + +. 在**集群**、**节点**、**项目**和**容器组**页签,查看资源用量详情。 ++ +-- +* 点击**选择集群**,选择需要监控的集群。 + +* 点击下拉列表可选择对象类型和排序依据。 + +include::../../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../../_ks_components-en/oper-customizeColumns.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/03-resource-monitoring/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/03-resource-monitoring/_index.adoc new file mode 100644 index 000000000..29d84fa19 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/03-resource-monitoring/_index.adoc @@ -0,0 +1,7 @@ +--- +title: "资源监控" +keywords: "Kubernetes, {ks_product}, 多集群, Whizard 可观测中心, 资源监控" +description: "介绍如何查看多集群的资源监控数据。" +weight: 03 +layout: "second" +--- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/01-create-a-rule-group.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/01-create-a-rule-group.adoc new file mode 100644 index 000000000..3b292f140 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/01-create-a-rule-group.adoc @@ -0,0 +1,157 @@ +--- +title: "创建规则组" +keywords: "Kubernetes, {ks_product}, 集群管理, 监控告警, 告警管理, 规则组, 创建规则组" +description: "介绍如何创建告警规则组。" +weight: 01 +--- + +// :ks_permission: **规则组管理** +:ks_navigation: **全局告警 > 自定义规则组** + + +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-desc-createAnAlertingPolicy.adoc[] + +[.admon.note,cols="a"] +|=== +|说明 + +| +{ks_product_right}仅支持创建自定义规则组,不支持创建内置规则组。 +|=== + +== Prerequisites + +* 您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息,请参阅link:../../../../../../05-users-and-roles/01-users/[用户]和link:../../../../../../05-users-and-roles/02-platform-roles/[平台角色]。 + +* 如需对应用程序的指标进行监控,您需要配置运行在容器中的应用程序,将符合 link:https://prometheus.io/docs/instrumenting/clientlibs/[Prometheus 规范]的监控指标暴露在某个服务端路径下,并在用于暴露工作负载的服务上设置监控导出器,以声明提供应用程序监控指标的路径。有关更多信息,请参阅link:../../../../05-monitoring/08-edit-a-metrics-exporter/[编辑监控导出器]。 + + +== Steps + +include::../../../../../../_custom-en/platformManagement/extensionManagement/extensionManagement-oper-logInAsPlatformAdmin.adoc[] + ++ + +. 在页面右上角点击image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,选择 **Whizard 可观测中心**。 + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-setBasicInfo.adoc[] + ++ + +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-addAlertRule.adoc[] ++ +include::../../../../../../_custom-en/platformManagement/observabilityCenter/ruleGroups/ruleGroups-para-commonParameters_new.adoc[] + +* 规则模板 ++ +-- +通过下拉列表选择监控目标和触发条件。 + +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|监控目标 +|需要监控的集群节点或工作负载。 + +include::../../../../../../_custom-en/platformManagement/observabilityCenter/ruleGroups/ruleGroups-para-triggerCondition.adoc[] +|=== +-- + +* 自定义规则 ++ +-- +通过 PromQL 表达式指定监控目标和触发条件。 + +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|集群设置 +|选择需要监控的资源所在的集群。 + +include::../../../../../../_custom-en/platformManagement/observabilityCenter/ruleGroups/ruleGroups-para-duration.adoc[] + +|告警级别 +| +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-para-alertLevel.adoc[] + +include::../../../../../../_custom-en/platformManagement/observabilityCenter/ruleGroups/ruleGroups-para-ruleExpression.adoc[] +|=== +-- + ++ + +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-clickOK.adoc[] + +// == 创建规则组示例 +// 创建一个 Process Exporter 全局告警规则,以监控集群节点上的僵尸进程。当节点上有僵尸进程的时候,就会触发告警。 + +// 创建 Process Exporter 告警规则需要启⽤ Process Exporter 扩展组件。 + +// === 启用 Process Exporter 扩展组件 + +// . 以具有 **platform-admin** 角色的用户登录{ks_product_left} Web 控制台。 + +// . 将光标悬停在页面右下角的image:/images/ks-qkcp/zh/icons/hammer.svg[hammer,18,18]图标,然后在菜单中选择 **kubectl**。 + +// . 在 **kubectl** 对话框,执行以下命令编辑集群配置文件: +// + +// -- +// // bash +// [,bash] +// ---- +// kubectl edit cc ks-installer -n kubesphere-system +// ---- +// -- + +// . 在集群配置文件中,将 **spec.monitoring.process_exporter.enabled** 参数设置为 **true**,然后保存文件。## 此处未找到,其他部分已确认 ok +// + +// -- +// // YAML +// [,yaml] +// ---- +// spec: +// monitoring: +// process_exporter: +// enabled: true +// ---- + +// // Note +// include::../../../../../../../_ks_components-en/admonitions/note.adoc[] + +// include::../../../../../../_custom-en/platformManagement/extensionManagement/extensionManagement-desc-waitForExtensionEnabled.adoc[] + +// include::../../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +// -- + +// === 创建 Process Exporter 规则组 + +// . 以具有 **platform-admin** 角色的用户登录{ks_product_left} Web 控制台。 +// . 在页面右上角点击image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,选择 **Whizard 可观测中心**。 +// . 在左侧导航栏选择**监控告警 > 规则组**。 +// . 在**规则组**页面,点击**自定义规则组**打开规则组列表。 +// . 在页面点击**创建**。 +// . 在**基本信息**页签,设置规则组的基本信息,然后点击**下一步**。 +// . 在**告警规则**页签,点击**添加告警规则**,选择**自定义规则**。 +// . 配置**集群设置**、**规则名称**、**告警级别**、**概要**。 +// . 在**告警规则表达式**下填写此表达式: +// + +// -- +// // bash +// [,bash] +// ---- +// sum by (cluster, job, instance, groupname)(namedprocess_namegroup_states{state="Zombie"}) > 0 +// ---- +// -- +// include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-clickOK.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/02-view-a-rule-group-list.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/02-view-a-rule-group-list.adoc new file mode 100644 index 000000000..c1c59e8d3 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/02-view-a-rule-group-list.adoc @@ -0,0 +1,56 @@ +--- +title: "查看规则组列表" +keywords: "Kubernetes, {ks_product}, 平台管理, Whizard 可观测中心, 告警管理, 规则组, 查看规则组列表" +description: "介绍如何查看告警规则组列表。" +weight: 02 +--- + +// :ks_permission: **规则组查看** +:ks_navigation: **全局告警 > 内置规则组/自定义规则组** + + +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-desc-viewAnAlertingPolicyList.adoc[] + + +== Prerequisites + +您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息,请参阅link:../../../../../../05-users-and-roles/01-users/[用户]和link:../../../../../../05-users-and-roles/02-platform-roles/[平台角色]。 + + +== Steps + +include::../../../../../../_custom-en/platformManagement/extensionManagement/extensionManagement-oper-logInAsPlatformAdmin.adoc[] + ++ + +. 在页面右上角点击image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,选择 **Whizard 可观测中心**。 + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +// include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-openListPage.adoc[] ++ +==== +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-para-alertingPolicyList_whizard.adoc[] + +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-searchForAlertingPolicies.adoc[] + +include::../../../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== + +//note +[.admon.note,cols="a"] +|=== +|说明 + +| +* 当添加或移除集群时,规则组列表的集群列信息不会同步更新。 + +* 移除集群时,也不会将仅适用该集群的规则组自动删除。 + +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/03-view-rule-group-details.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/03-view-rule-group-details.adoc new file mode 100644 index 000000000..3ffa4e6fc --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/03-view-rule-group-details.adoc @@ -0,0 +1,40 @@ +--- +title: "查看规则组详情" +keywords: "Kubernetes, {ks_product}, 平台管理, Whizard 可观测中心, 告警管理, 规则组, 查看规则组详情" +description: "介绍如何查看规则组详情。" +weight: 03 +--- + +// :ks_permission: **规则组查看** +// :ks_menu: **平台管理 > Whizard 可观测中心** +:ks_navigation: **全局告警 > 内置规则组/自定义规则组** + + +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-desc-viewAlertingPolicyDetails.adoc[] + + +== Prerequisites + +您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息,请参阅link:../../../../../../05-users-and-roles/01-users/[用户]和link:../../../../../../05-users-and-roles/02-platform-roles/[平台角色]。 + + +== Steps + +include::../../../../../../_custom-en/platformManagement/extensionManagement/extensionManagement-oper-logInAsPlatformAdmin.adoc[] + ++ + +. 在页面右上角点击image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,选择 **Whizard 可观测中心**。 + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +// include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-openDetailsPage.adoc[] +. 在列表中点击一个规则组的名称打开其详情页面。 + ++ + +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-viewAlertingPolicyDetails.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/04-edit-rule-group-information.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/04-edit-rule-group-information.adoc new file mode 100644 index 000000000..24681b7bc --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/04-edit-rule-group-information.adoc @@ -0,0 +1,43 @@ +--- +title: "编辑规则组信息" +keywords: "Kubernetes, {ks_product}, 平台管理, Whizard , 告警管理, 规则组, 编辑告警规则" +description: "介绍如何编辑告警规则组的信息。" +weight: 04 +--- + + +// :ks_permission: **规则组管理** +:ks_navigation: **全局告警 > 内置规则组/自定义规则组** + + +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-desc-editRuleGroupInformation.adoc[] + + +== Prerequisites + +您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息,请参阅link:../../../../../../05-users-and-roles/01-users/[用户]和link:../../../../../../05-users-and-roles/02-platform-roles/[平台角色]。 + + +== Steps + +include::../../../../../../_custom-en/platformManagement/extensionManagement/extensionManagement-oper-logInAsPlatformAdmin.adoc[] + ++ + +. 在页面右上角点击image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,选择 **Whizard 可观测中心**。 + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +// include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-openListPage.adoc[] + ++ + +. 在需要编辑的规则组右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑信息**。 + ++ + +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-editRuleGroupInformation.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/05-edit-alert-rules.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/05-edit-alert-rules.adoc new file mode 100644 index 000000000..02d014b22 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/05-edit-alert-rules.adoc @@ -0,0 +1,48 @@ +--- +title: "编辑告警规则" +keywords: "Kubernetes, {ks_product}, 平台管理, Whizard 可观测中心, 告警管理, 规则组, 编辑告警规则" +description: "介绍如何编辑告警规则组中的告警规则。" +weight: 05 +--- + +// :ks_permission: **规则组管理** +// :ks_menu: **平台管理 > Whizard 可观测中心** +:ks_navigation: **全局告警 > 内置规则组/自定义规则组** + + +本节介绍如何编辑规则组中的告警规则。 + + +== Prerequisites + +您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息,请参阅link:../../../../../../05-users-and-roles/01-users/[用户]和link:../../../../../../05-users-and-roles/02-platform-roles/[平台角色]。 + + +== Steps + +include::../../../../../../_custom-en/platformManagement/extensionManagement/extensionManagement-oper-logInAsPlatformAdmin.adoc[] + ++ + +. 在页面右上角点击image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,选择 **Whizard 可观测中心**。 + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-editAnAlertingPolicy.adoc[] + ++ + +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-editAlertRules.adoc[] + ++ + +[.admon.note,cols="a"] +|=== +|说明 + +|对于内置规则组,不支持删除和添加告警规则,只能编辑已有的告警规则。 +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/06-disable-and-enable-rule-groups.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/06-disable-and-enable-rule-groups.adoc new file mode 100644 index 000000000..0f108244b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/06-disable-and-enable-rule-groups.adoc @@ -0,0 +1,62 @@ +--- +title: "禁用和启用规则组" +keywords: "Kubernetes, {ks_product}, 集群管理, 监控告警, 规则组, 禁用和启用规则组" +description: "介绍如何禁用和启用告警规则组。" +weight: 06 +--- + + +// :ks_permission: **规则组管理** +// :ks_menu: **平台管理 > Whizard 可观测中心** +:ks_navigation: **全局告警 > 内置规则组/自定义规则组** + + +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-desc-disableAndEnablerRuleGroups.adoc[] + + +== Prerequisites + +您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息,请参阅link:../../../../../../05-users-and-roles/01-users/[用户]和link:../../../../../../05-users-and-roles/02-platform-roles/[平台角色]。 + + + +== 禁用和启用单个规则组 + +include::../../../../../../_custom-en/platformManagement/extensionManagement/extensionManagement-oper-logInAsPlatformAdmin.adoc[] + ++ + +. 在页面右上角点击image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,选择 **Whizard 可观测中心**。 + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +// include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-openListPage.adoc[] + ++ + +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-disableAndEnableASingleRuleGroup.adoc[] + + +== 批量禁用和启用规则组 + +include::../../../../../../_custom-en/platformManagement/extensionManagement/extensionManagement-oper-logInAsPlatformAdmin.adoc[] + ++ + +. 在页面右上角点击image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,选择 **Whizard 可观测中心**。 + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +// include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-openListPage.adoc[] + ++ + +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-disableAndEnableMultipleRuleGroups.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/07-delete-rule-groups.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/07-delete-rule-groups.adoc new file mode 100644 index 000000000..c1efb7253 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/07-delete-rule-groups.adoc @@ -0,0 +1,68 @@ +--- +title: "删除自定义规则组" +keywords: "Kubernetes, {ks_product}, 集群管理, 监控告警, 告警管理, 规则组, 删除规则组" +description: "介绍如何删除告警规则组。" +weight: 07 +--- + +// :ks_permission: **规则组管理** +// :ks_menu: **平台管理 > Whizard 可观测中心** +:ks_navigation: **全局告警 > 自定义规则组** + + +本节介绍如何删除告警规则组。 + +[.admon.note,cols="a"] +|=== +|说明 + +| +{ks_product_right}仅支持删除自定义规则组,不支持删除内置规则组。您可以重置内置规则组。 +|=== + +[.admon.warning,cols="a"] +|=== +|警告 + +| +规则组删除后不能恢复,请谨慎执行此操作。 +|=== + + +== Prerequisites + +您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息,请参阅link:../../../../../../05-users-and-roles/01-users/[用户]和link:../../../../../../05-users-and-roles/02-platform-roles/[平台角色]。 + + +== 删除单个规则组 + +include::../../../../../../_custom-en/platformManagement/extensionManagement/extensionManagement-oper-logInAsPlatformAdmin.adoc[] + ++ + +. 在页面右上角点击image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,选择 **Whizard 可观测中心**。 + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-deleteASingleAlertingPolicy.adoc[] + + +== 批量删除规则组 + +include::../../../../../../_custom-en/platformManagement/extensionManagement/extensionManagement-oper-logInAsPlatformAdmin.adoc[] + ++ + +. 在页面右上角点击image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,选择 **Whizard 可观测中心**。 + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-oper-deleteMultipleAlertingPolicies.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/08-reset-built-in-rule-groups.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/08-reset-built-in-rule-groups.adoc new file mode 100644 index 000000000..65c62d941 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/08-reset-built-in-rule-groups.adoc @@ -0,0 +1,54 @@ +--- +title: "重置内置规则组" +keywords: "Kubernetes, {ks_product}, 集群管理, 监控告警, 告警管理, 规则组, 删除规则组" +description: "介绍如何重置内置规则组。" +weight: 08 +--- + +// :ks_permission: **规则组管理** +// :ks_menu: **平台管理 > Whizard 可观测中心** +:ks_navigation: **全局告警 > 内置规则组** + + +本节介绍如何重置内置规则组。 + +[.admon.note,cols="a"] +|=== +|说明 + +| +{ks_product_right}仅支持重置内置规则组,不支持重置自定义规则组。 +|=== + +[.admon.warning,cols="a"] +|=== +|警告 + +| +规则组重置后不能恢复,请谨慎执行此操作。 +|=== + + + + +== Prerequisites + +您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息,请参阅link:../../../../../../05-users-and-roles/01-users/[用户]和link:../../../../../../05-users-and-roles/02-platform-roles/[平台角色]。 + + +== Steps + +include::../../../../../../_custom-en/platformManagement/extensionManagement/extensionManagement-oper-logInAsPlatformAdmin.adoc[] + ++ + +. 在页面右上角点击image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,选择 **Whizard 可观测中心**。 + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] + +. 在需要重置的规则组右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**重置**。 + +. 在**重置规则组**对话框,点击**确定**。 + diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/_index.adoc new file mode 100644 index 000000000..9bf75f9cd --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/01-rule-groups/_index.adoc @@ -0,0 +1,12 @@ +--- +title: "规则组" +keywords: "Kubernetes, {ks_product}, 平台管理, Whizard 可观测中心, 告警管理, 规则组" +description: "介绍如何在 Whizard 可观测中心使用告警规则组功能。" +weight: 01 +layout: "second" +--- + + +本节介绍如何在 Whizard 可观测中心创建、编辑、启用、禁用和查看全局告警规则组。 + +您可以在 Whizard 可观测中心的规则组页面创建全局告警规则组。区别于用户在集群和项目中创建的规则组,全局规则可用于监控平台管理的所有集群的资源。Whizard 可观测中心的**内置规则组**页面提供内置的规则组,**自定义规则组**页面支持创建规则组。通过规则组使系统在特定监控指标满足预设条件和持续时间时生成告警。 diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/02-alerts/01-view-an-alert-list.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/02-alerts/01-view-an-alert-list.adoc new file mode 100644 index 000000000..ff54c9a66 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/02-alerts/01-view-an-alert-list.adoc @@ -0,0 +1,45 @@ +--- +title: "查看告警列表" +keywords: "Kubernetes, {ks_product}, 平台管理, Whizard 可观测中心, 告警管理, 告警, 查看告警列表" +description: "介绍如何在 Whizard 可观测中心查看全局告警列表。" +weight: 01 +--- + +// :ks_permission: **告警查看** +:ks_navigation: **全局告警 > 内置告警/自定义告警** + + +本节介绍如何在 Whizard 可观测中心查看全局告警列表。 + +Whizard 可观测中心的**内置告警**和**自定义告警**页面显示系统根据全局告警规则组生成的告警,不包括系统根据集群和项目告警规则组生成的告警。 + + +== Prerequisites + +您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息,请参阅link:../../../../../../05-users-and-roles/01-users/[用户]和link:../../../../../../05-users-and-roles/02-platform-roles/[平台角色]。 + +== Steps + +include::../../../../../../_custom-en/platformManagement/extensionManagement/extensionManagement-oper-logInAsPlatformAdmin.adoc[] + ++ + +. 在页面右上角点击image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,选择 **Whizard 可观测中心**。 + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +// include::../../../../../../_custom-en/clusterManagement/alerts/alerts-oper-openListPage.adoc[] ++ +==== +include::../../../../../../_custom-en/clusterManagement/alerts/alerts-para-alertingMessageList.adoc[] + +include::../../../../../../_custom-en/clusterManagement/alerts/alerts-oper-searchForAlertingMessages_new.adoc[] + +include::../../../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/02-alerts/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/02-alerts/_index.adoc new file mode 100644 index 000000000..f375c3ddb --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/02-alerts/_index.adoc @@ -0,0 +1,14 @@ +--- +title: "告警" +keywords: "Kubernetes, {ks_product}, 平台管理, Whizard 可观测中心, 告警管理, 告警" +description: "介绍如何在 Whizard 可观测中心使用告警功能。" +weight: 02 +layout: "second" +--- + + + +本节介绍如何在 Whizard 可观测中心使用告警功能。 + +Whizard 可观测中心的**内置告警**和**自定义告警**页面显示系统根据全局**内置规则组**和全局**自定义规则组**生成的全局告警。当全局告警规则组中设置的指标满足预设的条件和持续时间时,系统将生成告警。当指标不再满足预设的条件时,告警将被系统自动清除。 + diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/_index.adoc new file mode 100644 index 000000000..a37696a12 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/05-alert-management/_index.adoc @@ -0,0 +1,10 @@ +--- +title: "全局告警" +keywords: "Kubernetes, {ks_product}, 平台管理, Whizard 可观测中心, 全局告警" +description: "介绍如何在 Whizard 可观测中心管理全局告警和全局规则组。" +weight: 05 +layout: "second" +--- + + +本节介绍如何在 Whizard 可观测中心管理全局告警和全局规则组。 diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/07-resource-query/01-pod/01-query-pod.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/07-resource-query/01-pod/01-query-pod.adoc new file mode 100644 index 000000000..ba273fab0 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/07-resource-query/01-pod/01-query-pod.adoc @@ -0,0 +1,63 @@ +--- +title: "跨集群查询容器组" +keywords: "Kubernetes, {ks_product}, Whizard 可观测中心, 容器组, 查询, 跨集群" +description: "介绍如何在 Whizard 可观测中心跨集群查询 pod。" +weight: 01 +--- + +// :ks_permission: **告警查看** +:ks_navigation: **资源查询 > 容器组** + + +本节介绍如何在 Whizard 可观测中心跨集群查询容器组。 + +对于单个集群,可在集群的容器组页面根据容器组名称和容器组 IP 地址查询容器组。 + +对于多集群环境,可在 Whizard 可观测中心根据容器组名称或容器组 IP 地址跨集群查询特定容器组的信息。 + + +== Prerequisites + +* 您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息,请参阅link:../../../../../../05-users-and-roles/01-users/[用户]和link:../../../../../../05-users-and-roles/02-platform-roles/[平台角色]。 + +* host 集群和需要监控的成员集群需要启用 Whizard 可观测中心。 ++ +-- +// Note +include::../../../../../../../_ks_components-en/admonitions/note.adoc[] + +如果成员集群未启用 Whizard 可观测中心,Whizard 可观测中心将无法获取成员集群的数据。 + +include::../../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + + +== Steps + +include::../../../../../../_custom-en/platformManagement/extensionManagement/extensionManagement-oper-logInAsPlatformAdmin.adoc[] + ++ + +. 在页面右上角点击image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,选择 **Whizard 可观测中心**。 + ++ + +include::../../../../../../../_ks_components-en/oper-navigate.adoc[] ++ +==== +include::../../../../../../_custom-en/clusterManagement/pods/pods-para-podList_whizard.adoc[] + +* 在列表左上角的下拉列表中选择一个集群,可以查看特定集群中的容器组。 + +// include::../../../../../../_custom-en/clusterManagement/pods/pods-oper-searchForPods.adoc[] +* 在列表上方点击搜索框并设置搜索条件,可按名称、状态、节点、项目或容器组 IP 地址搜索容器组。 + +include::../../../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../../../_ks_components-en/oper-customizeColumns.adoc[] + +* 点击容器组名称,可进入容器组详情页面。 + +* 点击节点名称,可进入节点详情页面。 + +==== diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/07-resource-query/01-pod/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/07-resource-query/01-pod/_index.adoc new file mode 100644 index 000000000..9aaa0d358 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/07-resource-query/01-pod/_index.adoc @@ -0,0 +1,6 @@ +--- +title: "容器组" +description: "介绍如何跨集群查询容器组。" +weight: 01 +layout: "second" +--- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/07-resource-query/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/07-resource-query/_index.adoc new file mode 100644 index 000000000..346a2457a --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/07-resource-query/_index.adoc @@ -0,0 +1,7 @@ +--- +title: "资源查询" +keywords: "Kubernetes, {ks_product}, Whizard 可观测中心, 查询资源" +description: "介绍如何跨集群查询资源信息。" +weight: 07 +layout: "second" +--- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/11-set-alert-components.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/11-set-alert-components.adoc new file mode 100644 index 000000000..6bd8a2dde --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/11-set-alert-components.adoc @@ -0,0 +1,148 @@ +--- +title: "设置组件" +keywords: "Kubernetes, {ks_product}, 平台管理, Whizard 可观测中心, 设置组件" +description: "介绍如何设置 Whizard 组件。" +weight: 11 +--- + +:ks_menu: **平台管理 > Whizard 可观测中心** + + +本节介绍如何设置 Whizard 可观测中心的组件。 + + +== Prerequisites + +您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息,请参阅link:../../../../05-users-and-roles/01-users/[用户]和link:../../../../05-users-and-roles/02-platform-roles/[平台角色]。 + + +== Steps + +include::../../../../_custom-en/platformManagement/extensionManagement/extensionManagement-oper-logInAsPlatformAdmin.adoc[] + ++ + +. 在页面右上角点击image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,选择 **Whizard 可观测中心**。 + ++ + +. 在**多集群监控**页面右侧,点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**组件设置**页面。 + + +. 在**数据接入**页签,设置以下参数。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|网关设置 +| + +* 组件副本数量: 设置存储网关组件的副本数量,默认值为 2。 + +* 容器配额: 设置 CPU 预留和限制以及内存预留和上限。 + +|数据路由 +| + +* 数据保留副本数量: 设置数据保留组件的副本数量,默认值为 1。 + +* 组件副本数量: 设置数据路由组件的副本数量,默认值为 2。 + +* 容器配额: 设置 CPU 预留和限制以及内存预留和上限。 + +|本地存储 +| + +* 本地数据存储时间: 设置本地数据的存储时间,最小时间至少 3 天,默认为 7 天。 + +* 组件副本数量: 设置本地存储组件的副本数量,默认值为 2。 + +* 容器配额: 设置 CPU 预留和限制以及内存预留和上限。 +|=== +-- + +. 在**数据查询**页签,设置以下参数。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|基础设置 +| + +* 组件副本数量: 设置 Query 组件的副本数量,默认值为 2。 + +* 容器配额: 设置 CPU 预留和限制以及内存预留和上限。 + +|缓存设置 +| + +* 组件副本数量: 设置 Cache 组件的副本数量,默认值为 2。 + +* 容器配额: 设置 CPU 预留和限制以及内存预留和上限。 + +|=== +-- + +. 在**长期存储**页签,点击**启用**启用长期存储组件。启用后,您可以配置对象存储、网关、保留周期与降采样的组件参数。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|对象存储 +| + +* Bucket 名称:S3 对象存储桶的名称。 + +* 区域:您创建 Bucket 的地理区域。 + +* 端点:要连接的 AWS S3 对象存储地址。 + +* Access Key:与 AWS 访问密钥 ID 相关联的密钥。 + +* Secret Key:与 AWS Access Key ID 关联的密钥。 + +**高级设置** + +* HTTP 协议:决定是否开启不安全的 HTTP 协议。 + +* 添加存储类:为对象存储添加用户元数据。开启后需要为对象存储参数添加键值。 + +* HTTP 配置:配置接收方用于与基于 HTTP 的 API 服务通信的 HTTP 客户端。 + +** TLS 证书:开启是否通过提交数字证书证明您的身份或表明您有权访问在线服务。 + +** TLS 连接 + +*** CA 证书:用于验证服务器证书的 CA 文件。 + +*** Cert 文件:用于向服务器进行客户端证书身份验证的证书文件。 + +*** 密钥:用于向服务器进行客户端证书身份验证的密钥文件。 + +*** 服务器名称:ServerName 扩展以指示服务器的名称。 + +*** 服务器证书验证:是否通过提交数字证书证明您的身份或表明您有权访问在线服务。 + +|存储网关 +|设置 CPU 预留和限制以及内存预留和上限。 + +|压缩及降采样 +| + +* 原始数据存储时间:原始数据存储时间,超过此时间将删除原始数据。 + +* 5m 降采样数据存储时间:指定降采样到数据点 5 分钟间隔的数据存储时间。 + +* 1h 降采样数据存储时间:指定降采样到数据点 5 分钟间隔的数据存储时间。 + +* 容器配额:设置 CPU 预留和限制以及内存预留和上限。 +|=== +-- + +. 在**规则计算**页签,设置容器配额。设置完成后,点击**确定**。 diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/_index.adoc new file mode 100644 index 000000000..fd9dd6b7f --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/07-whizard/_index.adoc @@ -0,0 +1,16 @@ +--- +title: "Whizard 可观测中心" +keywords: "Kubernetes, {ks_product}, 平台管理, Whizard 可观测中心" +description: "介绍如何使用 Whizard 可观测中心功能。" +weight: 07 +layout: "second" +--- + + +本节介绍如何使用 Whizard 可观测中心。 + +Whizard 可观测中心功能提供了跨集群的资源监控和告警信息。您可以在 Whizard 可观测中心查看所有集群的汇总监控数据和每个集群的具体监控数据,同时可以在平台层级创建全局告警规则组并查看系统生成的全局告警。 + +link:01-enable-whizard/[启用 Whizard 可观测中心]后,点击{ks_product_both}平台顶部导航栏上的image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,点击 **Whizard 可观测中心**,进入该组件的概览页面。 + + diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/09-events-altering/01-create-rules-for-auditing.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/09-events-altering/01-create-rules-for-auditing.adoc new file mode 100644 index 000000000..939f827d9 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/09-events-altering/01-create-rules-for-auditing.adoc @@ -0,0 +1,80 @@ +--- +title: "创建事件/审计的告警规则" +description: "介绍如何为事件和审计创建告警规则。" +weight: 01 +--- + +本节介绍如何为 Kubernetes 原生事件和 Kubernetes/KubeSphere 审计事件定义告警规则。 + + +== Prerequisites + +* 您需要在{ks_product_both}平台具有 **platform-admin** 角色。 + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 事件告警**扩展组件。 + + +== Steps + +. 在任意集群节点上,创建一个 yaml 文件,为该集群定义事件和审计的告警规则。 ++ +-- +点击link:../02-example-rules-for-auditing[此处]查看完整的告警规则示例。请参阅link:../02-example-rules-for-auditing/#_告警规则参数描述[参数描述]设置告警规则的参数。 + +简单示例如下: + +[,yaml] +---- +apiVersion: logging.whizard.io/v1alpha1 +kind: ClusterRuleGroup +metadata: + name: example-auditing-rule + namespace: kubesphere-logging-system +spec: + type: auditing + rules: + - desc: all action not need to be audit + expr: + kind: list + list: + - get + - list + - watch + name: ignore-action + - desc: all operator need to be audit + expr: + kind: list + list: + - create + - delete + - update + - patch + name: action + - desc: pod + expr: + kind: macro + macro: ObjectRef.Resource="pods" + name: pod + - desc: service + expr: + kind: macro + macro: ObjectRef.Resource="services" + name: service + - desc: the alias of the user related to audit event + expr: + alias: User.username + kind: alias + name: user +---- +-- + +. 执行以下命令,创建 CRD(定制资源定义)。 ++ +[,bash] +---- +kubectl apply -f xxx.yaml # 注意替换 yaml 文件的名称 +---- + +. 运行成功后,在**集群管理 > 定制资源定义**页面搜索 **ClusterRuleGroup**。 + +. 点击 **ClusterRuleGroup** 进入详情页,在右侧页面查看、编辑或删除告警规则。 diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/09-events-altering/02-example-rules-for-auditing.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/09-events-altering/02-example-rules-for-auditing.adoc new file mode 100644 index 000000000..e4a222cb8 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/09-events-altering/02-example-rules-for-auditing.adoc @@ -0,0 +1,1227 @@ +--- +title: "事件/审计的告警规则示例" +description: "介绍事件和审计的告警规则示例。" +weight: 02 +--- + +您可参照示例和参数描述,自定义事件和审计的告警规则,然后link:../01-create-rules-for-auditing[创建告警规则]。 + +== 事件告警规则示例 + +[,yaml] +---- +apiVersion: logging.whizard.io/v1alpha1 +kind: ClusterRuleGroup +metadata: + name: events-rules +spec: + type: events + rules: + - name: ContainerCreated + expr: + kind: rule + condition: type="Normal" and involvedObject.kind="Pod" and reason="Created" and involvedObject.fieldPath != "" + desc: create new container + enable: true + alerts: + severity: info + - name: ContainerStarted + expr: + kind: rule + condition: type="Normal" and involvedObject.kind="Pod" and reason="Started" and involvedObject.fieldPath != "" + desc: start new pod + alerts: + severity: warning + annotations: + summary: start new pod + summaryCn: 创建新容器 + enable: true + - name: ContainerFailed + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="Pod" and reason="Failed" and involvedObject.fieldPath != "" + desc: Create container failed + enable: true + alerts: + severity: warning + annotations: + summary: Container failed + summaryCn: 容器失败 + - name: ContainerKilling + expr: + kind: rule + condition: type="Normal" and involvedObject.kind="Pod" and reason="Killing" and involvedObject.fieldPath != "" + desc: container kill + enable: true + alerts: + severity: warning + annotations: + summary: container killing + summaryCn: 容器停止 + - name: ContainerPreempting + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="Pod" and reason="Preempting" + desc: container is preempting + alerts: + severity: warning + annotations: + summary: Container is preemting + summaryCn: 容器抢占中 + enable: true + - name: ContainerBackoff + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="Pod" and reason="BackOff" and involvedObject.fieldPath != "" and count>3 + desc: container back off + enable: true + alerts: + severity: warning + annotations: + summary: Container back-off + summaryCn: 容器回退 + - name: ContainerUnhealthy + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="Pod" and reason="Unhealthy" and count>3 + desc: container is unhealthy + alerts: + severity: warning + annotations: + summary: Container is unhealthy + summaryCn: 容器状态不良 + enable: true + - name: ContainerProbeWarning + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="Pod" and reason="ProbeWarning" and count>3 + desc: Warning to perform a probe to the container + alerts: + severity: warning + annotations: + summary: Warning to perform a probe to the container + summaryCn: 容器探测警告 + enable: true + - name: PodKillingExceededGracePeriod + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="Pod" and reason="ExceededGracePeriod" + desc: Pod killing exceeded specified grace period + enable: true + alerts: + severity: warning + annotations: + summary: Pod killing exceeded specified grace period + summaryCn: pod终止超时 + - name: PodKillFailed + expr: + kind: rule + condition: type="Warning" and reason="FailedKillPod" + desc: Warning to perform a probe to the container + enable: true + alerts: + severity: warning + annotations: + summary: Failed to kill pod + summaryCn: pod终止失败 + - name: PodContainerCreateFailed + expr: + kind: rule + condition: type="Warning" and reason="FailedCreatePodContainer" + desc: Failed to create pod container + enable: true + alerts: + severity: warning + annotations: + summary: Failed to create pod container + summaryCn: pod容器创建失败 + - name: PodFailed + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="Pod" and reason="Failed" and involvedObject.fieldPath="" + desc: Pod failed + enable: true + alerts: + severity: warning + annotations: + summary: Pod failed + summaryCn: pod失败 + - name: PodNetworkNotReady + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="Pod" and reason="NetworkNotReady" + desc: Pod network is not ready + enable: true + alerts: + severity: warning + annotations: + summary: Pod network is not ready + summaryCn: Pod网络异常 + - name: ImagePulling + expr: + kind: rule + condition: type="Normal" and involvedObject.kind="Pod" and reason="Pulling" + desc: pull images + enable: true + alerts: + severity: warning + - name: ImagePulled + expr: + kind: rule + condition: type="Normal" and involvedObject.kind="Pod" and reason="Pulled" + desc: images pulled + enable: true + alerts: + severity: warning + - name: ImagePullPolicyError + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="Pod" and reason="ErrImageNeverPull" + desc: Wrong image pull policy + enable: true + alerts: + severity: warning + annotations: + summary: Wrong image pull policy + summaryCn: 镜像拉取策略错误 + - name: ImageInspectFailed + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="Pod" and reason="InspectFailed" + desc: Failed to inspect image + enable: true + alerts: + severity: warning + annotations: + summary: Failed to inspect image + summaryCn: 镜像检查失败 + - name: NodeReady + expr: + kind: rule + condition: type="Normal" and involvedObject.kind="Node" and reason="NodeReady" + desc: Pod network is not ready + enable: true + alerts: + severity: warning + - name: NodeSchedulable + expr: + kind: rule + condition: type="Normal" and involvedObject.kind="Node" and reason="NodeSchedulable" + desc: node is schedulable + enable: true + alerts: + severity: warning + - name: NodeNotSchedulable + expr: + kind: rule + condition: type="Normal" and involvedObject.kind="Node" and reason="NodeNotSchedulable" + desc: node is not schedulable + enable: true + alerts: + severity: warning + - name: KubeletStarting + expr: + kind: rule + condition: type="Normal" and involvedObject.kind="Node" and reason="Starting" + desc: kubelet is starting + enable: true + alerts: + severity: warning + - name: KubeletSetupFailed + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="Node" and reason="KubeletSetupFailed" + desc: Failed to setup kubelet + enable: true + alerts: + severity: warning + annotations: + summary: Failed to setup kubelet + summaryCn: kubelet安装失败 + - name: VolumeAttachFailed + expr: + kind: rule + condition: type="Warning" and reason="FailedAttachVolume" + desc: Failed to attach volume + enable: true + alerts: + severity: warning + annotations: + summary: Failed to attach volume + summaryCn: 存储卷装载失败 + - name: VolumeMountFailed + expr: + kind: rule + condition: type="Warning" and reason="FailedMount" + desc: Failed to mount volume + enable: true + alerts: + severity: warning + annotations: + summary: Failed to mount volume + summaryCn: 存储卷挂载失败 + - name: VolumeResizeFailed + expr: + kind: rule + condition: type="Warning" and reason="VolumeResizeFailed" + desc: Failed to expand/reduce volume + enable: true + alerts: + severity: warning + annotations: + summary: Failed to expand/reduce volume + summaryCn: 存储卷扩缩容失败 + - name: VolumeResizeSuccess + expr: + kind: rule + condition: type="Normal" and reason="VolumeResizeSuccessful" + desc: volume resize success + enable: true + alerts: + severity: warning + - name: FileSystemResizeFailed + expr: + kind: rule + condition: type="Warning" and reason="FileSystemResizeFailed" + desc: failed to expand/reduce file system + enable: true + alerts: + severity: warning + annotations: + summary: Failed to expand/reduce file system + summaryCn: 文件系统扩缩容失败 + - name: FileSystemResized + expr: + kind: rule + condition: type="Normal" and reason="FileSystemResizeSuccessful" + desc: File system resize success + enable: true + alerts: + severity: warning + - name: VolumeMapFailed + expr: + kind: rule + condition: type="Warning" and reason="FailedMapVolume" + desc: Failed to map volume + enable: true + alerts: + severity: warning + annotations: + summary: Failed to map volume + summaryCn: 存储卷映射失败 + - name: VolumeAlreadyMounted + expr: + kind: rule + condition: type="Warning" and reason="AlreadyMountedVolume" + desc: Volume is already mounted + enable: true + alerts: + severity: warning + annotations: + summary: Volume is already mounted + summaryCn: 存储卷已被挂载 + - name: VolumeAttached + expr: + kind: rule + condition: type="Normal" and reason="SuccessfulAttachVolume" + desc: Volume is attached + enable: true + alerts: + severity: warning + - name: VolumeMounted + expr: + kind: rule + condition: type="Normal" and reason="SuccessfulMountVolume" + desc: volume is mounted + enable: true + alerts: + severity: warning + - name: NodeRebooted + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="Node" and reason="Rebooted" + desc: Node Rebooted + enable: true + alerts: + severity: warning + annotations: + summary: Node Rebooted + summaryCn: 节点重启 + - name: ContainerGCFailed + expr: + kind: rule + condition: type="Warning" and reason="ContainerGCFailed" + desc: Container GC failed + enable: true + alerts: + severity: warning + annotations: + summary: Container GC failed + summaryCn: 容器GC失败 + - name: ImageGCFailed + expr: + kind: rule + condition: type="Warning" and reason="ImageGCFailed" + desc: Image GC failed + enable: true + alerts: + severity: warning + annotations: + summary: Image GC failed + summaryCn: 镜像GC失败 + - name: NodeAllocatableEnforcementFailed + expr: + kind: rule + condition: type="Warning" and reason="FailedNodeAllocatableEnforcement" + desc: Node allocatable enforcement failed + enable: true + alerts: + severity: warning + annotations: + summary: Node allocatable enforcement failed + summaryCn: 节点可分配资源更新失败 + - name: NodeAllocatableEnforcedSuccess + expr: + kind: rule + condition: type="Normal" and involvedObject.kind="Node" and reason="NodeAllocatableEnforced" + desc: Node allocatable enforcement success + enable: true + alerts: + severity: warning + - name: SandboxChanged + expr: + kind: rule + condition: type="Normal" and reason="SandboxChanged" + desc: Sandbox changed + enable: true + alerts: + severity: warning + - name: SandboxCreateFailed + expr: + kind: rule + condition: type="Warning" and reason="FailedCreatePodSandBox" + desc: Failed to create sandbox + enable: true + alerts: + severity: warning + annotations: + summary: Failed to create sandbox + summaryCn: Sandbox创建失败 + - name: SandboxStatusFailed + expr: + kind: rule + condition: type="Warning" and reason="FailedPodSandBoxStatus" + desc: Failed to get sandbox status + enable: true + alerts: + severity: warning + annotations: + summary: Failed to get sandbox status + summaryCn: 获取Sandbox状态错误 + - name: DiskCapacityInvalid + expr: + kind: rule + condition: type="Warning" and reason="InvalidDiskCapacity" + desc: Invalid disk capacity + enable: true + alerts: + severity: warning + annotations: + summary: Invalid disk capacity + summaryCn: 磁盘容量配置不合法 + - name: DiskSpaceFreeFailed + expr: + kind: rule + condition: type="Warning" and reason="FreeDiskSpaceFailed" + desc: Failed to free disk space + enable: true + alerts: + severity: warning + annotations: + summary: Failed to free disk space + summaryCn: 磁盘空间释放失败 + - name: PodStatusSyncFailed + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="Pod" and reason="FailedSync" + desc: Failed To Sync Pod Status + enable: true + alerts: + severity: warning + annotations: + summary: Failed To Sync Pod Status + summaryCn: Pod状态同步失败 + - name: ConfigurationValidationFaile + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="Pod" and reason="FailedValidation" + desc: Configuration Validation Failed + enable: true + alerts: + severity: warning + annotations: + summary: Configuration Validation Failed + summaryCn: 配置验证失败 + - name: LifecycleHookPostStartFailed + expr: + kind: rule + condition: type="Warning" and reason="FailedPostStartHook" + desc: Failed to postStart LifecycleHook + enable: true + alerts: + severity: warning + annotations: + summary: Failed to postStart LifecycleHook + summaryCn: 容器启动后的生命周期钩子运行失败 + - name: LifecycleHookPreStopFailed + expr: + kind: rule + condition: type="Warning" and reason="FailedPreStopHook" + desc: Failed to preStop LifecycleHook + enable: true + alerts: + severity: warning + annotations: + summary: Failed to preStop LifecycleHook + summaryCn: 容器停止前的生命周期钩子运行失败 + - name: HPASelectorError + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="HorizontalPodAutoscaler" and reason in ("SelectorRequired","InvalidSelector") + desc: HPA selector error + enable: true + alerts: + severity: warning + annotations: + summary: HPA selector error + summaryCn: HPA选择器错误 + - name: HPAMetricError + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="HorizontalPodAutoscaler" and reason in ("FailedGetObjectMetric","InvalidMetricSourceType") + desc: Node allocatable enforcement failed + enable: true + alerts: + severity: warning + annotations: + summary: HPA metric error + summaryCn: HPA对象指标错误 + - name: HPAConvertFailed + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="HorizontalPodAutoscaler" and reason="FailedConvertHPA" + desc: Failed to convert HPA + enable: true + alerts: + severity: warning + annotations: + summary: Failed to convert HPA + summaryCn: HPA转换失败 + - name: HPAGetScaleFailed + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="HorizontalPodAutoscaler" and reason="FailedGetScale" + desc: Failed to get HPA scale + enable: true + alerts: + severity: warning + annotations: + summary: Failed to get HPA scale + summaryCn: HPA规模获取失败 + - name: HPAComputeReplicasFailed + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="HorizontalPodAutoscaler" and reason="FailedComputeMetricsReplicas" + desc: Failed to compute HPA replicas + enable: true + alerts: + severity: warning + annotations: + summary: Failed to compute HPA replicas + summaryCn: HPA副本计算失败 + - name: HPARescaleFailed + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="HorizontalPodAutoscaler" and reason="FailedRescale" + desc: Failed to rescale HPA size + enable: true + alerts: + severity: warning + annotations: + summary: Failed to rescale HPA size + summaryCn: HPA规模调整失败 + - name: HPARescaleSuccess + expr: + kind: rule + condition: type="Normal" and involvedObject.kind="HorizontalPodAutoscaler" and reason="SuccessfulRescale" + desc: Rescaled HPA size + enable: true + alerts: + severity: warning + - name: NodeSystemOOM + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="Node" and reason="SystemOOM" + desc: Node system OOM encountered + enable: true + alerts: + severity: warning + annotations: + summary: Node system OOM encountered + summaryCn: 节点内存溢出 + - name: VolumeBindingFailed + expr: + kind: rule + condition: type="Warning" and reason="FailedBinding" + desc: Volume binding failed + enable: true + alerts: + severity: warning + annotations: + summary: Volume binding failed + summaryCn: 存储卷绑定失败 + - name: VolumeMismatch + expr: + kind: rule + condition: type="Warning" and reason="VolumeMismatch" + desc: Volume Mismatch + enable: true + alerts: + severity: warning + annotations: + summary: Volume Mismatch + summaryCn: 存储卷不匹配 + - name: VolumeRecycleFailed + expr: + kind: rule + condition: type="Warning" and reason="VolumeFailedRecycle" + desc: Failed to recycle volume + enable: true + alerts: + severity: warning + annotations: + summary: Failed to recycle volume + summaryCn: 存储卷回收失败 + - name: VolumeRecycled + expr: + kind: rule + condition: type="Normal" and reason="VolumeRecycled" + desc: Volume Recycled + enable: true + alerts: + severity: warning + - name: VolumeRecyclerPodError + expr: + kind: rule + condition: type="Warning" and reason="RecyclerPod" + desc: Volume Recycler pod error + enable: true + alerts: + severity: warning + annotations: + summary: Volume Recycler pod error + summaryCn: 存储卷回收器错误 + - name: VolumeDeleted + expr: + kind: rule + condition: type="Normal" and reason="VolumeDelete" + desc: Volume Deleted + enable: true + alerts: + severity: warning + - name: VolumeDeleteFailed + expr: + kind: rule + condition: type="Warning" and reason="VolumeFailedDelete" + desc: Failed to delete volume + enable: true + alerts: + severity: warning + annotations: + summary: Failed to delete volume + summaryCn: 存储卷删除失败 + - name: VolumeProvisionFailed + expr: + kind: rule + condition: type="Warning" and reason="ProvisioningFailed" + desc: Failed to provision volume + enable: true + alerts: + severity: warning + annotations: + summary: Failed to provision volume + summaryCn: 存储申请失败 + - name: VolumeProvisioned + expr: + kind: rule + condition: type="Normal" and reason="ProvisioningSucceeded" + desc: Volume provisioned + enable: true + alerts: + severity: warning + - name: VolumeProvisionCleanupFailed + expr: + kind: rule + condition: type="Warning" and reason="ProvisioningCleanupFailed" + desc: Failed to clean up provision volume + enable: true + alerts: + severity: warning + annotations: + summary: Failed to clean up provision volume + summaryCn: 清理存储失败 + - name: VolumeExternalExpandingError + expr: + kind: rule + condition: type="Warning" and reason="ExternalExpanding" + desc: Error for volume external expanding + enable: true + alerts: + severity: warning + annotations: + summary: Error for volume external expanding + summaryCn: 存储外部扩展错误 + - name: PodScheduleFailed + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="Pod" and reason="FailedScheduling" + desc: Failed to schedule pod + enable: true + alerts: + severity: warning + annotations: + summary: Failed to schedule pod + summaryCn: pod调度失败 + - name: PodSchedulePreempted + expr: + kind: rule + condition: type="Normal" and involvedObject.kind="Pod" and reason="Preempted" + desc: Pod preempted + enable: true + alerts: + severity: warning + - name: PodScheduled + expr: + kind: rule + condition: type="Normal" and involvedObject.kind="Pod" and reason="Scheduled" + desc: Pod scheduled + enable: true + alerts: + severity: warning + - name: PodCreateFailed + expr: + kind: rule + condition: type="Warning" and involvedObject.kind in ("Pod","ReplicaSet","DaemonSet","StatefulSet","Job") and reason="FailedCreate" + desc: Failed to create pod + enable: true + alerts: + severity: warning + annotations: + summary: Failed to create pod + summaryCn: pod创建失败 + - name: PodCreated + expr: + kind: rule + condition: type="Normal" and involvedObject.kind in ("Pod","ReplicaSet","DaemonSet","StatefulSet","Job") and reason="SuccessfulCreate" + desc: pod created + enable: true + alerts: + severity: warning + - name: PodDeleteFailed + expr: + kind: rule + condition: type="Warning" and involvedObject.kind in ("Pod","ReplicaSet","DaemonSet","StatefulSet","Job") and reason="FailedDelete" + desc: Failed to delete pod + enable: true + alerts: + severity: warning + annotations: + summary: Failed to delete pod + summaryCn: pod删除失败 + - name: PodDeleted + expr: + kind: rule + condition: type="Normal" and involvedObject.kind in ("Pod","ReplicaSet","DaemonSet","StatefulSet","Job") and reason="SuccessfulDelete" + desc: pod deleted + enable: true + alerts: + severity: warning + - name: ReplicaSetCreateError + expr: + kind: rule + condition: type="Warning" and reason="ReplicaSetCreateError" + desc: Error to create replica set for deployment + enable: true + alerts: + severity: warning + annotations: + summary: Error to create replica set for deployment + summaryCn: 副本集创建错误 + - name: DeploymentRollbackFailed + expr: + kind: rule + condition: type="Warning" and reason in("DeploymentRollbackRevisionNotFound","DeploymentRollbackTemplateUnchanged") + desc: Failed to rollback deployment + enable: true + alerts: + severity: warning + annotations: + summary: Failed to rollback deployment + summaryCn: 部署回滚失败 + - name: DeploySelectorAll + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="Deployment" and reason="SelectingAll" + desc: The deploy is selecting all pods + enable: true + alerts: + severity: warning + annotations: + summary: The deploy is selecting all pods + summaryCn: deploy选择了所有pod + - name: DaemonSelectorAll + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="DaemonSet" and reason="SelectingAll" + desc: The daemon set is selecting all pods + enable: true + alerts: + severity: warning + annotations: + summary: The daemon set is selecting all pods + summaryCn: daemonset选择了所有pod + - name: DaemonPodFailed + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="DaemonSet" and reason in ("FailedDaemonPod","FailedPlacement") + desc: Failed daemon pod + enable: true + alerts: + severity: warning + annotations: + summary: Failed daemon pod + summaryCn: daemonset的pod失败 + - name: LoadBalancerSyncFailed + expr: + kind: rule + condition: type="Warning" and reason="SyncLoadBalancerFailed" + desc: Error syncing load balancer + enable: true + alerts: + severity: warning + annotations: + summary: Error syncing load balancer + summaryCn: 负载据衡器不可用 + - name: LoadBalancerDeleting + expr: + kind: rule + condition: type="Normal" and reason="DeletingLoadBalancer" + desc: LoadBalancer is deleting + enable: true + alerts: + severity: warning + - name: LoadBalancerEnsuring + expr: + kind: rule + condition: type="Normal" and reason="EnsuringLoadBalancer" + desc: LoadBalancer is ensuring + enable: true + alerts: + severity: warning + - name: LoadBalancerEnsured + expr: + kind: rule + condition: type="Normal" and reason="EnsuredLoadBalancer" + desc: LoadBalancer is ensured + enable: true + alerts: + severity: warning + - name: LoadBalancerUnAvailable + expr: + kind: rule + condition: type="Warning" and reason="UnAvailableLoadBalancer" + desc: Load balancer is not available + enable: true + alerts: + severity: warning + annotations: + summary: Load balancer is not available + summaryCn: 负载据衡器不可用 + - name: LoadBalancerUpdated + expr: + kind: rule + condition: type="Normal" and reason="UpdatedLoadBalancer" + desc: LoadBalancer is updated + enable: true + alerts: + severity: warning + - name: LoadBalancerUpdateFailed + expr: + kind: rule + condition: type="Warning" and reason="UpdateLoadBalancerFailed" + desc: Failed to update load balancer + enable: true + alerts: + severity: warning + annotations: + summary: Failed to update load balancer + summaryCn: 更新负载据衡器失败 + - name: LoadBalancerDeleting + expr: + kind: rule + condition: type="Normal" and reason="DeletingLoadBalancer" + desc: Failed To Sync Pod Status + enable: true + alerts: + severity: warning + - name: LoadBalancerDeleted + expr: + kind: rule + condition: type="Normal" and reason="DeletedLoadBalancer" + desc: LoadBalancer is deleted + enable: true + alerts: + severity: warning + - name: VolumeDeleted + expr: + kind: rule + condition: type="Normal" and reason="VolumeDelete" + desc: Volume is deleted + enable: true + alerts: + severity: warning + - name: LoadBalancerDeleteFailed + expr: + kind: rule + condition: type="Warning" and reason="DeleteLoadBalancerFailed" + desc: Failed to delete load balancer + enable: true + alerts: + severity: warning + annotations: + summary: Failed to delete load balancer + summaryCn: 负载据衡器删除失败 + - name: JobGetFailed + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="CronJob" and reason="FailedGet" + desc: Failed to get job + enable: true + alerts: + severity: warning + annotations: + summary: Failed to get job + summaryCn: 任务获取失败 + - name: JobCreated + expr: + kind: rule + condition: type="Normal" and involvedObject.kind="CronJob" and reason="SuccessfulCreate" + desc: job is created + enable: true + alerts: + severity: warning + - name: JobCreateFailed + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="CronJob" and reason="FailedCreate" + desc: Failed to create job + enable: true + alerts: + severity: warning + annotations: + summary: Failed to create job + summaryCn: 任务创建失败 + - name: JobDeleted + expr: + kind: rule + condition: type="Normal" and involvedObject.kind="CronJob" and reason="SuccessfulDelete" + desc: job is deleted + enable: true + alerts: + severity: warning + - name: JobDeleteFailed + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="CronJob" and reason="FailedDelete" + desc: Failed to delete job + enable: true + alerts: + severity: warning + annotations: + summary: Failed to delete job + summaryCn: 任务删除失败 + - name: JobCompleted + expr: + kind: rule + condition: type="Normal" and involvedObject.kind="CronJob" and reason="SawCompletedJob" + desc: job is completed + enable: true + alerts: + severity: warning + - name: JobUnexpected + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="CronJob" and reason="UnexpectedJob" + desc: CronJob saw unexpected job + enable: true + alerts: + severity: warning + annotations: + summary: CronJob saw unexpected job + summaryCn: 任务非预期 + - name: JobMissing + expr: + kind: rule + condition: type="Normal" and involvedObject.kind="CronJob" and reason="MissingJob" + desc: CronJob missed expected job + enable: true + alerts: + severity: warning + - name: JobScheduleFailed + expr: + kind: rule + condition: type="Warning" and involvedObject.kind="CronJob" and reason in ("MissSchedule","FailedNeedsStart") + desc: CronJob failed to schedule job + enable: true + alerts: + severity: warning + annotations: + summary: CronJob failed to schedule job + summaryCn: 任务调度失败 +---- + +== 审计告警规则示例 + + +[,yaml] +---- +apiVersion: logging.whizard.io/v1alpha1 +kind: ClusterRuleGroup +metadata: + name: auditing-rules +spec: + type: auditing + rules: + - name: ignore-action + expr: + kind: list + list: + - get + - list + - watch + desc: all action not need to be audit + - name: action + expr: + kind: list + list: + - create + - delete + - update + - patch + desc: all operator need to be audit + - name: pod + expr: + kind: macro + macro: ObjectRef.Resource="pods" + desc: pod + - name: service + expr: + kind: macro + macro: ObjectRef.Resource="services" + desc: service + - name: user + expr: + kind: alias + alias: User.username + desc: the alias of the user related to audit event + - name: name + expr: + kind: alias + alias: ObjectRef.Name + desc: the alias of the resource name + - name: namespace + expr: + kind: alias + alias: ObjectRef.Namespace + desc: the alias of the resource namespace + - name: create + expr: + kind: macro + macro: Verb = "create" + desc: create operator + - name: ResourceChange + expr: + kind: rule + condition: Verb in ${action} + desc: audit the change of resource + enable: true + alerts: + severity: info + - name: CreateHostNetworkPod + expr: + kind: rule + condition: ${pod} and ${create} and RequestObject.spec.hostNetwork = true + desc: Detect an attempt to start a pod using the host network + alerts: + severity: warning + annotations: + summary: creat hostNetwork pod + summaryCn: 创建 hostNetwork 容器 + message: ${user} ${Verb} HostNetwork Pod ${name} in Namespace ${namespace}. + enable: true + - name: CreateHostportPod + expr: + kind: rule + condition: ${pod} and ${create} and (RequestObject.spec.containers[*].ports[*].hostPort > 0 or RequestObject.spec.initContainers[*].ports[*].hostPort > 0) + desc: Detect an attempt to start a pod mount to a host port + enable: true + alerts: + severity: warning + annotations: + summary: creat hostport pod + summaryCn: 创建 hostport 容器 + message: ${user} ${Verb} HostPort Pod ${name} in Namespace ${namespace}. + - name: CreateNodePortService + expr: + kind: rule + condition: ${service} and ${create} and RequestObject.spec.type = "NodePort" + desc: Detect an attempt to start a service with a NodePort service type + enable: true + alerts: + severity: warning + annotations: + summary: creat NodePort service + summaryCn: 创建 NodePort 服务 + message: ${user} ${Verb} NodePort Service ${name} in Namespace ${namespace}. + - name: AttachOrExecPod + expr: + kind: rule + condition: ${pod} and ${create} and ObjectRef.Subresource in ("exec", "attach") + desc: Detect any attempt to attach/exec to a pod + alerts: + severity: warning + annotations: + summary: attach or exec pod + summaryCn: 进入容器 + message: ${user} ${ObjectRef.Subresource} Pod ${name} in Namespace ${namespace}. +---- + +== 告警规则参数描述 + +告警规则目前支持三种类型:审计、事件和日志。在 `spec.type` 下配置不同类型的告警规则,如 `type: auditing`,`type: events` 或 `type: logs` 。 + +告警规则 `spec.rules` 的设置项如下: +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|`name` +| 规则名称。 + +|`desc` +| 规则描述。 + +|`expr.kind` +|规则类型,取值可以为 `rule`, `macro`, `list`, 或 `alias`。 + +|`expr.condition` +|日志的过滤表达式,以检查日志是否与规则匹配。可使用比较运算符(=,!=,<,<=,>,>=,contains,in,like,regexp)、布尔运算符(and,or 和 not)以及括号进行组合。 + +|`expr.macro` +| macro 的条件。 + +|`expr.list` +| list 的值。 + +|`expr.alias` +| alias 的值。 + +|`enable` +| 如果为 false,规则将不生效。 + +|`alerts.output` +| 指定在匹配事件发生时输出的消息。 + +|`alerts.annotations` +| 规则的注解,包含在匹配事件发生时输出的告警消息。 + +|`alerts.annotations.summary` +| 指定在匹配事件发生时输出的摘要消息。 + +|`alerts.annotations.summaryCn` +| 指定在匹配事件发生时输出的中文摘要消息。 + +|`alerts.severity` +| 规则的告警级别,取值可以为 INFO、WARNING、ERROR、或 CRITICAL。 +|=== + +**Macro** + +宏(Macro)是规则条件片段,可以在规则内部甚至其他宏中重复使用。宏提供了一种命名常见模式和消除规则冗余的方法。以下是一个宏的示例: + +[,yaml] +---- +apiVersion: logging.whizard.io/v1alpha1 +kind: ClusterRuleGroup +metadata: + name: macro-rule +spec: + type: auditing + rules: + - desc: pod + expr: + kind: macro + macro: ObjectRef.Resource="pods" + name: pod +---- + +[.admon.note,cols="a"] +|=== +|说明 + +| +宏可以在规则或其他宏中使用,例如 `${pod}` 或 `${alerting-rule.pod}` 。这两种方法的区别在于 `${pod}` 只能用于 `alerting-rule`,而 `${alerting-rule.pod}` 可以用于所有实例。宏也可用于 list 和 alias。 +|=== + +**List** + +列表(List)是可以包含在规则、宏或其他列表中的项目集合。与规则和宏不同,列表不能被解析为过滤表达式。以下是一个列表的示例: + +[,yaml] +---- +apiVersion: logging.whizard.io/v1alpha1 +kind: ClusterRuleGroup +metadata: + name: list-rule +spec: + type: alerting + rules: + - desc: all action not need to be audit + expr: + kind: list + list: + - get + - list + - watch + name: ignore-action +---- + +**Alias** + +别名(Alias)是过滤字段的缩写名称,它可以包含在规则、宏、列表和输出字符串中。以下是一个别名的示例: + +[,yaml] +---- +apiVersion: logging.whizard.io/v1alpha1 +kind: ClusterRuleGroup +metadata: + name: alias-rule +spec: + type: alerting + rules: + - desc: the alias of the user related to audit event + expr: + alias: User.username + kind: alias + name: user +---- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/09-events-altering/03-create-rules-for-logs.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/09-events-altering/03-create-rules-for-logs.adoc new file mode 100644 index 000000000..c4d0fc4b1 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/09-events-altering/03-create-rules-for-logs.adoc @@ -0,0 +1,105 @@ +--- +title: "创建日志告警规则" +description: "介绍如何为 Kubernetes 日志定义告警规则。" +weight: 03 +--- + +本节介绍如何为 Kubernetes 日志定义告警规则。 + +[.admon.note,cols="a"] +|=== +|说明 + +| +WhizardTelemetry 事件告警默认接收 Kubernetes 集群的日志。如果想要接收其他日志,需要修改 WhizardTelemetry 数据流水线的配置,或新建保密字典进行配置,请参阅 link:https://vector.dev/docs/reference/configuration/[Vector 官方文档]进行配置。 +|=== + +== Prerequisites + +* 您需要在{ks_product_both}平台具有 **platform-admin** 角色。 + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 事件告警**扩展组件。 + +* 已在 WhizardTelemetry 事件告警的扩展组件配置中,启用日志告警,即设置 `loggingAlerting.enabled` 为 true。 + + +== Steps + +. 在任意集群节点上,创建一个 yaml 文件,为该集群定义日志的告警规则。有关参数配置的更多信息,请参阅link:../02-example-rules-for-auditing/#_告警规则参数描述[参数描述]。 ++ +==== + +* 基于关键字的告警 ++ +-- +例如,下面的配置表示,在测试日志中包含 [ERROR] 并且 pod 名称包含 pod_name 时触发告警。 + +[,yaml] +---- +apiVersion: logging.whizard.io/v1alpha1 +kind: ClusterRuleGroup +metadata: + name: logging-rules +spec: + type: logs + rules: + - name: log-test + expr: + kind: rule + condition: log contains "[ERROR]" and kubernetes.pod_name contains "pod_name" + desc: 'test logging' + enable: true + alerts: + severity: warning +---- +-- + + +* 滑动窗口告警 ++ +-- +和基于关键字告警的配置基本相同,唯一不同的是需要增加 slidingWindow 的配置。 + +例如,下面的配置表示,一个 20s 的窗口,每 10s 触发一次,当窗口中的日志存在 [INFO] 并且 cluster 中包含 gcp-prod-cluster 并且数量大于等于 20 条时触发告警。 + +[,yaml] +---- +apiVersion: logging.whizard.io/v1alpha1 +kind: ClusterRuleGroup +metadata: + name: logging-rules +spec: + type: logs + rules: + - name: TestLoggingRuleWindow-02 + expr: + kind: rule + condition: log contains "[INFO]" and cluster contains "gcp-prod-cluster" + desc: stream test 2 + enable: true + alerts: + severity: info + annotations: + summary: for test + summaryCn: 测试TestLoggingRuleWindow-02 + message: 告警测试TestLoggingRuleWindow-02 + slidingWindow: + windowSize: 20s + slidingInterval: 10s + count: 20 +---- +-- + +==== + +. 执行以下命令,创建 CRD(定制资源定义)。 ++ +[,bash] +---- +kubectl apply -f xxx.yaml # 注意替换 yaml 文件的名称 +---- + +. 运行成功后,在**集群管理 > 定制资源定义**页面搜索 **ClusterRuleGroup**。 + +. 点击 **ClusterRuleGroup** 进入详情页,在右侧页面查看、编辑或删除告警规则。 + diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/09-events-altering/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/09-events-altering/_index.adoc new file mode 100644 index 000000000..0df8a25f3 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/09-events-altering/_index.adoc @@ -0,0 +1,38 @@ +--- +title: "WhizardTelemetry 事件告警" +keywords: "Kubernetes, {ks_product}, 事件, 审计, 告警" +description: "介绍如何使用“WhizardTelemetry 事件告警”扩展组件。" +weight: 09 +layout: "second" +draft: true +--- + +本节介绍如何使用“WhizardTelemetry 事件告警”扩展组件。 + +WhizardTelemetry 事件告警支持审计告警、事件告警和日志告警功能。它支持为 Kubernetes/KubeSphere 审计事件、Kubernetes 原生事件、以及 Kubernetes 日志定义告警规则,对传入的事件数据和日志数据进行评估,并将告警发送到指定的接收器如 HTTP 端点等。 + +其中,日志告警支持日志关键字触发告警和滑动窗口触发告警。 + +- 基于关键字的告警:当日志中出现特定关键字时触发告警。 + +- 滑动窗口告警:在滑动时间窗口内,当符合条件的日志数据量达到用户指定数量时触发告警。 + + +[.admon.attention,cols="a"] +|=== +|注意 + +| +- WhizardTelemetry 事件告警依赖于 WhizardTelemetry 数据流水线扩展组件发送过来的事件、审计和日志数据。在使用前,请确保已安装并配置好该扩展组件。 +- 审计告警和事件告警功能默认启用,请确保已安装并配置好 WhizardTelemetry 事件和 WhizardTelemetry 审计扩展组件。 +- 日志告警功能默认禁用,可修改“扩展组件配置”启用该功能。 +|=== + +[.admon.note,cols="a"] +|=== +|说明 + +| +有关组件配置的更多信息,请参阅扩展中心“WhizardTelemetry 事件告警”扩展组件的详情页说明。 +|=== + diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/01-set-email-notification.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/01-set-email-notification.adoc new file mode 100644 index 000000000..ccab06ad3 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/01-set-email-notification.adoc @@ -0,0 +1,62 @@ +--- +title: "设置邮件通知" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 设置邮件通知" +description: "介绍如何设置邮件通知。" +weight: 01 +--- + +// :ks_menu: **平台管理 > 平台设置** +:ks_navigation: **通知管理 > 通知渠道** +:ks_permission: **平台设置管理** + + +本节介绍如何设置邮件通知。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**通知渠道**页面,点击**邮箱**页签,设置邮箱通知参数,然后点击**确定**。 ++ +-- +* 服务器设置 + +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|SMTP 服务器地址 +|SMTP 服务器的地址和端口号。 + +|使用 SSL 安全连接 +|是否启用 SSL 安全连接。 + +|SMTP 用户名 +|SMTP 服务器的登录用户名。 + +|SMTP 密码 +|SMTP 服务器的登录密码。 + +|发件人邮箱 +|用于发送通知的邮箱地址。 +|=== + +邮件的接收人设置可前往**通知订阅**页面进行设置。 +-- diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/02-set-feishu-notification.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/02-set-feishu-notification.adoc new file mode 100644 index 000000000..c19766fa2 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/02-set-feishu-notification.adoc @@ -0,0 +1,73 @@ +--- +title: "设置飞书通知" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 设置飞书通知" +description: "介绍如何设置飞书通知。" +weight: 02 +--- + +// :ks_menu: **平台管理 > 平台设置** +:ks_navigation: **通知管理 > 通知渠道** +:ks_permission: **平台设置管理** + + +本节介绍如何设置飞书通知。 + +飞书通知功能支持通过以下两种方式向用户发送通知: + +* **会话设置**:使用飞书应用向特定用户或部门发送通知。 + +* **群机器人设置**:使用飞书机器人向特定群聊发送通知。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + +* 您需要提前从飞书平台获取应用或群机器人的访问参数。有关更多信息,请参阅link:https://open.feishu.cn/document/ukTMukTMukTM/uITNz4iM1MjLyUzM[飞书开发者文档]。 + + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**通知渠道**页面,点击**飞书**页签,设置飞书通知参数,然后点击**确定**。 ++ +==== +* 会话设置 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|App ID +|飞书应用的 App ID。 + +|App Secret +|飞书应用的 App Secret。 + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-sessionId.adoc[] +|=== +-- + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-groupChatBotSettings.adoc[] + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-notificationConditions_new.adoc[] + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-sendTestInformation.adoc[] +==== + +. 在**飞书**页签右上角,点击切换开关将飞书通知功能设置为**已启用**。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/03-set-dingtalk-notification.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/03-set-dingtalk-notification.adoc new file mode 100644 index 000000000..a550e494f --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/03-set-dingtalk-notification.adoc @@ -0,0 +1,75 @@ +--- +title: "设置钉钉通知" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 设置钉钉通知" +description: "介绍如何设置钉钉通知。" +weight: 03 +--- + +// :ks_menu: **平台管理 > 平台设置** +:ks_navigation: **通知管理 > 通知渠道** +:ks_permission: **平台设置管理** + + +本节介绍如何设置钉钉通知。 + +钉钉通知功能支持通过以下两种方式向用户发送通知: + +* **会话设置**:使用钉钉应用向特定用户或部门发送通知。 + +* **群机器人设置**:使用钉钉机器人向特定群聊发送通知。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + +* 您需要提前从钉钉平台获取应用或群机器人的访问参数。有关更多信息,请参阅link:https://open.dingtalk.com/document/orgapp-server/how-to-call-apis[钉钉开发者文档]。 + + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**通知渠道**页面,点击**钉钉**页签,设置钉钉通知参数,然后点击**确定**。 ++ +==== +* 会话设置 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|App Key +|钉钉应用的 AppKey。 + +|App Secret +|钉钉应用 App Secret。 + +|Chat ID +|接收通知的 Chat ID。点击**添加**可设置多个 Chat ID。 +|=== +-- + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-groupChatBotSettings.adoc[] + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-notificationConditions_new.adoc[] + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-sendTestInformation.adoc[] +==== + + +. 在**钉钉**页签右上角,点击切换开关将钉钉通知功能设置为**已启用**。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/04-set-wecom-notification.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/04-set-wecom-notification.adoc new file mode 100644 index 000000000..76a864aaa --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/04-set-wecom-notification.adoc @@ -0,0 +1,86 @@ +--- +title: "设置企业微信通知" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 设置企业微信通知" +description: "介绍如何设置企业微信通知。" +weight: 04 +--- + + +// :ks_menu: **平台管理 > 平台设置** +:ks_navigation: **通知管理 > 通知渠道** +:ks_permission: **平台设置管理** + + +本节介绍如何设置企业微信通知。配置后,可通过企业微信会话或群机器人接收通知消息。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + +* 您需要提前从企业微信平台获取应用访问参数。有关更多信息,请参阅link:https://developer.work.weixin.qq.com/document/path/90664[企业微信开发者文档]。 + + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**通知渠道**页面,点击**企业微信**页签,设置企业微信通知参数,然后点击**确定**。 ++ +==== +* 会话设置 > 服务器设置 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|Corp ID +|您的企业在企业微信上的 Corp ID。 + +|Agent ID +|企业微信应用的 Agent ID。 + +|Secret +|企业微信应用的 Secret。 +|=== +-- + +* 会话设置 > 接收设置 ++ +-- +设置接收通知的 User ID、Department ID 或 Tag ID。点击**添加**可设置多个 ID。 +-- + +* 群机器人设置 > 群机器人设置 ++ +-- +Webhook URL: 企业微信群机器人的 webhook 地址。 +-- + +* 群机器人设置 > 接收设置 ++ +-- +设置接收通知的 User ID 或 用户手机号。点击**添加**可设置多个 ID 和手机号。 +-- + + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-notificationConditions_new.adoc[] + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-sendTestInformation.adoc[] +==== + +. 在**企业微信**页签右上角,点击切换开关将企业微信通知功能设置为**已启用**。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/05-set-slack-notification.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/05-set-slack-notification.adoc new file mode 100644 index 000000000..4d92f5530 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/05-set-slack-notification.adoc @@ -0,0 +1,61 @@ +--- +title: "设置 Slack 通知" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 设置 Slack 通知" +description: "介绍如何设置 Slack 通知。" +weight: 05 +--- + + +// :ks_menu: **平台管理 > 平台设置** +:ks_navigation: **通知管理 > 通知渠道** +:ks_permission: **平台设置管理** + + +本节介绍如何设置 Slack 通知。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + +* 您需要提前从 Slack 平台获取应用访问参数。有关更多信息,请参阅 link:https://api.slack.com/messaging/webhooks#create_a_webhook[Slack 开发者文档]。 + + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**通知渠道**页面,点击 **Slack** 页签,设置 Slack 通知参数,然后点击**确定**。 ++ +==== +* 服务器设置 ++ +-- +设置用于访问 Slack 应用的令牌。 +-- + +* Slack 频道设置 ++ +-- +设置接收通知的 Slack 频道。点击**添加**可设置多个 Slack 频道。 +-- + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-notificationConditions_new.adoc[] + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-sendTestInformation.adoc[] +==== + +. 在 **Slack** 页签右上角,点击切换开关将 Slack 通知功能设置为**已启用**。 diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/06-set-webhook-notification.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/06-set-webhook-notification.adoc new file mode 100644 index 000000000..ba65a1fe7 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/06-set-webhook-notification.adoc @@ -0,0 +1,72 @@ +--- +title: "设置 Webhook 通知" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 设置 Webhook 通知" +description: "介绍如何设置 Webhook 通知。" +weight: 06 +--- + +// :ks_menu: **平台管理 > 平台设置** +:ks_navigation: **通知管理 > 通知渠道** +:ks_permission: **平台设置管理** + + +本节介绍如何设置 Webhook 通知。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + +* 您需要提前获取 Webhook 的访问参数。有关更多信息,请联系您的 Webhook 管理员。 + + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**通知渠道**页面,点击 **Webhook** 页签,设置 Webhook 通知参数,然后点击**确定**。 ++ +==== +* 服务器设置 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|Webhook URL +|Webhook 的访问 URL。 + +|认证类型 +|Webhook 的认证类型。 + +* **无需认证**:不需要进行认证。 + +* **Bearer 令牌**:使用 URL Bearer 令牌进行认证。如果选择此类型,您需要进一步设置用于认证的令牌。 + +* **基础认证**:使用用户名和密码进行认证。如果选择此类型,您需要进一步设置用于认证的用户名和密码。 + +|跳过 TLS 验证(不安全) +|调用 Webhook 时是否跳过 TLS 验证。 +|=== +-- + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-notificationConditions_new.adoc[] + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-sendTestInformation.adoc[] +==== + +. 在 **Webhook** 页签右上角,点击切换开关将 Webhook 通知功能设置为**已启用**。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/_index.adoc new file mode 100644 index 000000000..c68996acc --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/01-notification-channels/_index.adoc @@ -0,0 +1,12 @@ +--- +title: "通知渠道" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知渠道" +description: "介绍如何设置通知渠道。" +weight: 01 +layout: "second" +--- + + +本节介绍如何设置平台级别的通知渠道。 + +根据您的需要,您可以通过邮件、飞书、钉钉、企业微信、Slack 或 Webhook 向用户发送通知。 diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/02-notification-subscription/01-set-subscription.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/02-notification-subscription/01-set-subscription.adoc new file mode 100644 index 000000000..300fbbd9b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/02-notification-subscription/01-set-subscription.adoc @@ -0,0 +1,74 @@ +--- +title: "创建通知订阅" +description: "介绍如何创建通知订阅。" +weight: 01 +--- + +:ks_menu: **平台管理 > 平台设置** +:ks_navigation: **通知管理 > 通知订阅** +:ks_permission: **平台设置管理** + + +本节介绍如何创建通知订阅。 + +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +目前仅支持为邮箱配置多个通知订阅。 + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台。 +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 +. 在左侧导航栏选择pass:a,q[{ks_navigation}]。 +. 在**通知订阅**页面的**邮箱**页签,点击**创建**。 ++ +==== +* 基本信息 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|通知订阅的名称。 + +名称只能包含小写字母、数字和连字符(-),必须以小写字母或数字开头和结尾,最长 63 个字符。 + +|别名 +|通知订阅的别名。别名只能包含中文、字母、数字和连字符(-),不得以连字符(-)开头或结尾,最长 63 个字符。 + +|描述 +|通知订阅的描述信息。描述可包含任意字符,最长 256 个字符。 + +|=== +-- + +* 接收设置 ++ +-- +设置接收通知的邮箱地址。点击**添加**可设置多个地址。 +-- + +* 通知接收 ++ +-- +点击切换开关,将通知功能设置为**已启用**。 +-- + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-notificationConditions_new.adoc[] + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-sendTestInformation.adoc[] + +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/02-notification-subscription/02-view-subscription.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/02-notification-subscription/02-view-subscription.adoc new file mode 100644 index 000000000..903acb2f7 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/02-notification-subscription/02-view-subscription.adoc @@ -0,0 +1,57 @@ +--- +title: "查看通知订阅" +description: "介绍如何查看通知订阅。" +weight: 02 +--- + +:ks_menu: **平台管理 > 平台设置** +:ks_navigation: **通知管理 > 通知订阅** +:ks_permission: **平台设置管理** + + + +本节介绍如何查看通知订阅。 + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台。 +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 +. 在左侧导航栏选择pass:a,q[{ks_navigation}]。 +. 在**通知订阅**页面的**邮箱**页签,查看已创建的通知订阅列表。 ++ +-- +通知订阅列表提供以下信息: +[%header,cols="1a,4a"] +|=== +|参数|描述 + +|名称 +|通知订阅的名称。 + +|通知接收状态 +|通知订阅是否被启用。 + +|通知订阅账号数量 +|接收通知的账号数量。 + +|创建时间 +|通知订阅的创建时间。 +|=== + +* 在列表上方点击搜索框并设置搜索条件,可按名称搜索通知订阅。 + +* 在列表右上角点击image:/images/ks-qkcp/zh/icons/refresh-light.svg[refresh,18,18]可刷新列表信息。 + +* 在列表右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]可定制列表中显示的信息。 +-- +. 点击通知订阅的名称,可查看详细信息,如订阅账号、过滤条件等。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/02-notification-subscription/03-edit-subscription.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/02-notification-subscription/03-edit-subscription.adoc new file mode 100644 index 000000000..d514b07aa --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/02-notification-subscription/03-edit-subscription.adoc @@ -0,0 +1,66 @@ +--- +title: "编辑通知订阅" +description: "介绍如何编辑通知订阅。" +weight: 03 +--- + +:ks_menu: **平台管理 > 平台设置** +:ks_navigation: **通知管理 > 通知订阅** +:ks_permission: **平台设置管理** + + +本节介绍如何编辑通知订阅。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台。 +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 +. 在左侧导航栏选择pass:a,q[{ks_navigation}]。 +. 在**通知订阅**页面的**邮箱**页签,查看已创建的通知订阅列表。 +. 在需要操作的通知订阅右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑**。 +. 在**编辑通知订阅**页面,编辑信息后,点击**确定**。 ++ +==== +* 基本信息 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|别名 +|通知订阅的别名。别名只能包含中文、字母、数字和连字符(-),不得以连字符(-)开头或结尾,最长 63 个字符。 + +|描述 +|通知订阅的描述信息。描述可包含任意字符,最长 256 个字符。 + +|=== +-- + +* 接收设置 ++ +-- +设置接收通知的邮箱地址。点击**添加**可设置多个地址。 +-- + +* 通知接收 ++ +-- +点击切换开关,启用或禁用通知订阅。 +-- + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-notificationConditions_new.adoc[] + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-sendTestInformation.adoc[] + +==== diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/02-notification-subscription/04-delete-subscription.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/02-notification-subscription/04-delete-subscription.adoc new file mode 100644 index 000000000..db8afd463 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/02-notification-subscription/04-delete-subscription.adoc @@ -0,0 +1,49 @@ +--- +title: "删除通知订阅" +description: "介绍如何删除通知订阅。" +weight: 04 +--- + +:ks_menu: **平台管理 > 平台设置** +:ks_navigation: **通知管理 > 通知订阅** +:ks_permission: **平台设置管理** + + +本节介绍如何删除通知订阅。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + + +== 删除单个通知订阅 + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台。 +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 +. 在左侧导航栏选择pass:a,q[{ks_navigation}]。 +. 在**通知订阅**页面的**邮箱**页签,查看已创建的通知订阅列表。 +. 在需要操作的通知订阅右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**删除**。 +. 在**删除通知订阅**对话框,输⼊通知订阅的名称,然后点击**确定**。 + +== 批量删除通知订阅 +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台。 +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 +. 在左侧导航栏选择pass:a,q[{ks_navigation}]。 +. 在**通知订阅**页面的**邮箱**页签,查看已创建的通知订阅列表。 +. 勾选需要删除的通知订阅左侧的复选框,然后在列表上⽅点击**删除**。 +. 在**批量删除通知订阅**对话框,输⼊通知订阅的名称,然后点击**确定**。 ++ +-- +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +请使用半角逗号(,)和空格分隔多个名称。 + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/02-notification-subscription/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/02-notification-subscription/_index.adoc new file mode 100644 index 000000000..1d21aff05 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/02-notification-subscription/_index.adoc @@ -0,0 +1,13 @@ +--- +title: "通知订阅" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知订阅" +description: "介绍如何管理通知订阅。" +weight: 02 +layout: "second" +--- + +本节介绍如何管理通知订阅。 + +通过通知订阅,您可以在同一通知渠道下,配置多个不同的过滤条件以发送通知给相应的接收者。 + + diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/01-create-a-silence-policy.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/01-create-a-silence-policy.adoc new file mode 100644 index 000000000..ed9421f27 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/01-create-a-silence-policy.adoc @@ -0,0 +1,66 @@ +--- +title: "创建静默策略" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 静默策略, 创建静默策略" +description: "本节介绍如何创建静默策略。" +weight: 01 +--- + +:ks_menu: **平台管理 > 平台设置** +:ks_navigation: **通知管理 > 通知设置** +:ks_permission: **平台设置管理** + + +本节介绍如何创建静默策略。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +. 在**基本信息**页签,设置静默策略的基本信息,然后点击**下一步**。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|静默策略的名称。名称只能包含小写字母、数字和连字符(-),必须以小写字母开头并以小写字母或数字结尾,最长 63 个字符。 + +include::../../../../../_custom-en/platformManagement/platformSettings/platformSettings/platformSettings-para-aliasDescription.adoc[] +|=== +-- + +. 在**静默条件**页签,根据需要选择**对所有通知静默**或**自定义静默条件**并设置相关参数,然后点击**下一步**。 ++ +==== +include::../../../../../_custom-en/platformManagement/platformSettings/platformSettings/platformSettings-para-silenceConditions_new.adoc[] +==== + +. 在**静默时间**页签,选择静默时间类型并设置相关参数,然后点击**创建**。 ++ +-- +include::../../../../../_custom-en/platformManagement/platformSettings/platformSettings/platformSettings-para-silenceTime.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/02-edit-silence-policy-information.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/02-edit-silence-policy-information.adoc new file mode 100644 index 000000000..027ee0542 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/02-edit-silence-policy-information.adoc @@ -0,0 +1,52 @@ +--- +title: "编辑静默策略信息" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 静默策略, 编辑静默策略信息" +description: "本节介绍如何编辑静默策略信息。" +weight: 02 +--- + + +:ks_menu: **平台管理 > 平台设置** +:ks_navigation: **通知管理 > 通知设置** +:ks_permission: **平台设置管理** + + +本节介绍如何编辑静默策略信息。 + +您可以编辑静默策略的别名和描述。{ks_product_right}不支持编辑已创建静默策略的名称。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要操作的静默策略右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑信息**。 + +. 在**编辑信息**对话框,设置静默策略的别名和描述,然后点击**确定**。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +include::../../../../../_custom-en/platformManagement/platformSettings/platformSettings/platformSettings-para-aliasDescription.adoc[] +|=== +-- diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/03-edit-silence-conditions.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/03-edit-silence-conditions.adoc new file mode 100644 index 000000000..95f1fc0f7 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/03-edit-silence-conditions.adoc @@ -0,0 +1,46 @@ +--- +title: "编辑静默条件" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 静默策略, 编辑静默条件" +description: "本节介绍如何编辑通知静默条件。" +weight: 03 +--- + + +:ks_menu: **平台管理 > 平台设置** +:ks_navigation: **通知管理 > 通知设置** +:ks_permission: **平台设置管理** + + +本节介绍如何编辑通知静默条件。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + + + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要操作的静默策略右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑静默条件**。 + +. 在**编辑静默条件**对话框,设置静默条件,然后点击**确定**。 ++ +==== +include::../../../../../_custom-en/platformManagement/platformSettings/platformSettings/platformSettings-para-silenceConditions_new.adoc[] +==== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/04-edit-silence-time.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/04-edit-silence-time.adoc new file mode 100644 index 000000000..e91bc37ec --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/04-edit-silence-time.adoc @@ -0,0 +1,58 @@ +--- +title: "编辑静默时间" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 静默策略, 编辑静默时间" +description: "本节介绍如何编辑通知静默时间。" +weight: 04 +--- + + +:ks_menu: **平台管理 > 平台设置** +:ks_navigation: **通知管理 > 通知设置** +:ks_permission: **平台设置管理** + + +本节介绍如何编辑通知静默时间。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + + + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要操作的静默策略右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑静默时间**。 + +. 在**编辑静默时间**对话框,选择静默时间类型并设置相关参数,然后点击**确定**。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|持续静默 +|满足静默条件的通知在所有时间静默。 + +|在特定时间范围内静默 +|满足静默条件的通知在指定的时间范围内静默。您需要选择静默的开始时间和结束时间。 + +|周期性静默 +|满足静默条件的通知每日、每周或每月在指定的时间范围内静默。您需要选择静默的日期、开始时间和结束时间。 +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/05-delete-silence-policies.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/05-delete-silence-policies.adoc new file mode 100644 index 000000000..f9259f10e --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/05-delete-silence-policies.adoc @@ -0,0 +1,62 @@ +--- +title: "删除静默策略" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 静默策略, 删除静默策略" +description: "本节介绍如何删除静默策略。" +weight: 05 +--- + +:ks_menu: **平台管理 > 平台设置** +:ks_navigation: **通知管理 > 通知设置** +:ks_permission: **平台设置管理** + + +本节介绍如何删除静默策略。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + + + +== 删除单个静默策略 + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要删除的静默策略右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**删除**。 + +. 在**删除静默策略**对话框,输入静默策略的名称,然后点击**确定**。 + + +== 批量删除静默策略 + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 选择需要删除的静默策略左侧的复选框,然后在列表上方点击**删除**。 + +. 在**批量删除静默策略**对话框,输入静默策略的名称,然后点击**确定**。 ++ +-- +include::../../../../../_custom-en/note-separateNamesByComma.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/06-change-the-notification-language.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/06-change-the-notification-language.adoc new file mode 100644 index 000000000..7b99b3372 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/06-change-the-notification-language.adoc @@ -0,0 +1,40 @@ +--- +title: "修改通知语言" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 静默策略, 修改通知语言" +description: "本节介绍如何修改通知语言。" +weight: 06 +--- + +:ks_menu: **平台管理 > 平台设置** +:ks_navigation: **通知管理 > 通知设置** +:ks_permission: **平台设置管理** + + +本节介绍如何修改通知语言。 + +发送给用户的通知包含键值对信息,您可以设置通知的键的语言。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**通知设置**页面,点击**通知语言**页签,然后在下拉列表中选择通知语言。 diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/_index.adoc new file mode 100644 index 000000000..249839fb9 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/03-notification-settings/_index.adoc @@ -0,0 +1,12 @@ +--- +title: "通知设置" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置" +description: "本节介绍如何管理静默策略和通知语言。" +weight: 03 +layout: "second" +--- + + +本节介绍如何管理静默策略和通知语言。 + +使用静默策略设置系统在特定条件和特定时间下不发送通知。通知以键值对的形式呈现,您可以指定通知的键的语言。 diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/04-notification-history/03-view-notification-history.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/04-notification-history/03-view-notification-history.adoc new file mode 100644 index 000000000..56c0da7a1 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/04-notification-history/03-view-notification-history.adoc @@ -0,0 +1,93 @@ +--- +title: "查看通知历史" +keywords: "Kubernetes, {ks_product}, 平台设置" +description: "介绍如何查看通知历史记录。" +weight: 03 +--- + +:ks_menu: **平台管理 > 平台设置** +:ks_navigation: **通知管理 > 通知历史** +:ks_permission: **平台设置管理** + + +本节介绍如何查看通知历史记录。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/platformManagement/platformManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + + +== Steps + +include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. 在{ks_product_left} Web 控制台右上角点击image:/images/ks-qkcp/zh/icons/cogwheel.svg[cogwheel,18,18]进入**平台设置**页面。 + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + +* **通知历史**页面提供以下信息: ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|告警名称 +|作为通知发送给用户的告警的名称。 + +|告警类型 +|告警提示的系统事件类型。 + +* **指标告警**:资源指标满足告警触发条件。 + +* **审计告警**:系统审计事件,例如 API 调用。 + +* **事件告警**:系统资源事件,例如资源创建、删除、修改等。 + +|告警级别 +| +include::../../../../../_custom-en/clusterManagement/ruleGroups/ruleGroups-para-alertLevel.adoc[] + +|消息 +|告警消息的内容。 + +|状态 +|告警的状态:触发中/已解决。 + +**触发中**:已触发的告警会产生触发中的通知。 + +**已解决**:当一段时间(默认5分钟)后,如果不再收到同样的告警,状态就会变为已解决。 + +|项目 +|触发告警的资源所在的项目。 + +|服务 +|触发告警的服务。 + +|容器组 +|触发告警的容器组。 + +|容器 +|触发告警的容器。 + +|通知时间 +|通知发送的时间。 +|=== +-- + +* 在列表左上角的下拉列表中选择一个集群,查看特定集群中的通知历史。 + +* 在列表上方点击搜索框并输入关键字,可按告警名称、告警级别、消息、状态、项目和时间范围搜索通知历史记录。 ++ +include::../../../../../../_ks_components-en/oper-refreshListData.adoc[] ++ +include::../../../../../../_ks_components-en/oper-customizeColumns.adoc[] + diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/04-notification-history/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/04-notification-history/_index.adoc new file mode 100644 index 000000000..f3074a13b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/04-notification-history/_index.adoc @@ -0,0 +1,7 @@ +--- +title: "通知历史" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知历史" +description: "介绍如何查看通知历史记录。" +weight: 04 +layout: "second" +--- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/01-set-email-notification.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/01-set-email-notification.adoc new file mode 100644 index 000000000..5dee1ea40 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/01-set-email-notification.adoc @@ -0,0 +1,44 @@ +--- +title: "设置邮件通知" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 设置邮件通知" +description: "介绍如何设置邮件通知。" +weight: 01 +--- + +// // :ks_menu: **平台管理 > 平台设置** +// :ks_navigation: **通知管理 > 通知渠道** + + +本节介绍如何设置邮件通知。 + + +== Prerequisites + +// // * {empty} +// include::../../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + +// + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + +== Steps + +// include::../../../../../_custom-en/platformManagement/platformManagement-oper-logIn.adoc[] + +. 登录{ks_product_left} Web 控制台。 + +. 在页面右上角点击当前用户名,然后在下拉列表中选择**通知设置**。 + +. 在**通知设置**页面的**邮箱**页签,设置邮件通知参数,然后点击**确定**。 ++ +==== +* 接收设置 ++ +输入邮箱地址,点击**添加**可设置多个通知接收人。 + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-notificationConditions_new.adoc[] + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-sendTestInformation.adoc[] +==== + +. 点击上方的**通知已禁用**开关,启用邮箱通知。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/02-set-feishu-notification.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/02-set-feishu-notification.adoc new file mode 100644 index 000000000..46f059e8a --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/02-set-feishu-notification.adoc @@ -0,0 +1,62 @@ +--- +title: "设置飞书通知" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 设置飞书通知" +description: "介绍如何设置飞书通知。" +weight: 02 +--- + +// :ks_menu: **平台管理 > 平台设置** +// :ks_navigation: **通知管理 > 通知渠道** + + +本节介绍如何设置飞书通知。 + +飞书通知功能支持通过以下两种方式向用户发送通知: + +* **会话设置**:使用飞书应用向特定用户或部门发送通知。 + +* **群机器人设置**:使用飞书机器人向特定群聊发送通知。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + +* 您需要提前从飞书平台获取应用或群机器人的访问参数。有关更多信息,请参阅link:https://open.feishu.cn/document/ukTMukTMukTM/uITNz4iM1MjLyUzM[飞书开发者文档]。 + + +== Steps + +. 登录{ks_product_left} Web 控制台。 + +. 在页面右上角点击当前用户名,然后在下拉列表中选择**通知设置**。 + +. 在**通知设置**页面的**飞书**页签,设置飞书通知参数,然后点击**确定**。 + ++ +==== +* 会话设置 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +// |App ID +// |飞书应用的 App ID。 + +// |App Secret +// |飞书应用的 App Secret。 + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-sessionId.adoc[] +|=== +-- + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-groupChatBotSettings.adoc[] + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-notificationConditions_new.adoc[] + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-sendTestInformation.adoc[] +==== + +. 点击上方的**通知已禁用**开关,启用飞书通知。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/03-set-dingtalk-notification.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/03-set-dingtalk-notification.adoc new file mode 100644 index 000000000..a228e41e5 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/03-set-dingtalk-notification.adoc @@ -0,0 +1,64 @@ +--- +title: "设置钉钉通知" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 设置钉钉通知" +description: "介绍如何设置钉钉通知。" +weight: 03 +--- + +// :ks_menu: **平台管理 > 平台设置** +// :ks_navigation: **通知管理 > 通知渠道** + + +本节介绍如何设置钉钉通知。 + +钉钉通知功能支持通过以下两种方式向用户发送通知: + +* **会话设置**:使用钉钉应用向特定用户或部门发送通知。 + +* **群机器人设置**:使用钉钉机器人向特定群聊发送通知。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + +* 您需要提前从钉钉平台获取应用或群机器人的访问参数。有关更多信息,请参阅link:https://open.dingtalk.com/document/orgapp-server/how-to-call-apis[钉钉开发者文档]。 + + +== Steps + +. 登录{ks_product_left} Web 控制台。 + +. 在页面右上角点击当前用户名,然后在下拉列表中选择**通知设置**。 + +. 在**通知设置**页面的**钉钉**页签,设置钉钉通知参数,然后点击**确定**。 + ++ +==== +* 会话设置 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +// |App Key +// |钉钉应用的 AppKey。 + +// |App Secret +// |钉钉应用 App Secret。 + +|Chat ID +|接收通知的 Chat ID。点击**添加**可设置多个 Chat ID。 +|=== +-- + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-groupChatBotSettings.adoc[] + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-notificationConditions_new.adoc[] + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-sendTestInformation.adoc[] +==== + + +. 点击上方的**通知已禁用**开关,启用钉钉通知。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/04-set-wecom-notification.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/04-set-wecom-notification.adoc new file mode 100644 index 000000000..4d3b4629a --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/04-set-wecom-notification.adoc @@ -0,0 +1,75 @@ +--- +title: "设置企业微信通知" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 设置企业微信通知" +description: "介绍如何设置企业微信通知。" +weight: 04 +--- + + +// :ks_menu: **平台管理 > 平台设置** +// :ks_navigation: **通知管理 > 通知渠道** + + +本节介绍如何设置企业微信通知。配置后,可通过企业微信会话或群机器人接收通知消息。 + + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + +* 您需要提前从企业微信平台获取应用访问参数。有关更多信息,请参阅link:https://developer.work.weixin.qq.com/document/path/90664[企业微信开发者文档]。 + + +== Steps + +. 登录{ks_product_left} Web 控制台。 + +. 在页面右上角点击当前用户名,然后在下拉列表中选择**通知设置**。 + +. 在**通知设置**页面的**企业微信**页签,设置企业微信通知参数,然后点击**确定**。 + ++ +==== +// * 服务器设置 +// + +// -- +// [%header,cols="1a,4a"] +// |=== +// |参数 |描述 + +// |Corp ID +// |您的企业在企业微信上的 Corp ID。 + +// |Agent ID +// |企业微信应用的 Agent ID。 + +// |Secret +// |企业微信应用的 Secret。 +// |=== +// -- + +* 会话设置 > 接收设置 ++ +-- +设置接收通知的 User ID、Department ID 或 Tag ID。点击**添加**可设置多个 ID。 +-- + +* 群机器人设置 > 群机器人设置 ++ +-- +Webhook URL: 企业微信群机器人的 webhook 地址。 +-- + +* 群机器人设置 > 接收设置 ++ +-- +设置接收通知的 User ID 或 用户手机号。点击**添加**可设置多个 ID 和手机号。 +-- + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-notificationConditions_new.adoc[] + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-sendTestInformation.adoc[] +==== + +. 点击上方的**通知已禁用**开关,启用企业微信通知。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/05-set-slack-notification.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/05-set-slack-notification.adoc new file mode 100644 index 000000000..09be4280d --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/05-set-slack-notification.adoc @@ -0,0 +1,50 @@ +--- +title: "设置 Slack 通知" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 设置 Slack 通知" +description: "介绍如何设置 Slack 通知。" +weight: 05 +--- + + +// :ks_menu: **平台管理 > 平台设置** +// :ks_navigation: **通知管理 > 通知渠道** + + +本节介绍如何设置 Slack 通知。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + +* 您需要提前从 Slack 平台获取应用访问参数。有关更多信息,请参阅 link:https://api.slack.com/messaging/webhooks#create_a_webhook[Slack 开发者文档]。 + + +== Steps + +. 登录{ks_product_left} Web 控制台。 + +. 在页面右上角点击当前用户名,然后在下拉列表中选择**通知设置**。 + +. 在**通知设置**页面的 **Slack** 页签,设置 Slack 通知参数,然后点击**确定**。 + ++ +==== +// * 服务器设置 +// + +// -- +// 设置用于访问 Slack 应用的令牌。 +// -- + +* Slack 频道设置 ++ +-- +设置接收通知的 Slack 频道。点击**添加**可设置多个 Slack 频道。 +-- + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-notificationConditions_new.adoc[] + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-sendTestInformation.adoc[] +==== + +. 点击上方的**通知已禁用**开关,启用 Slack 通知。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/06-set-webhook-notification.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/06-set-webhook-notification.adoc new file mode 100644 index 000000000..f856795c1 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/06-set-webhook-notification.adoc @@ -0,0 +1,61 @@ +--- +title: "设置 Webhook 通知" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知设置, 设置 Webhook 通知" +description: "介绍如何设置 Webhook 通知。" +weight: 06 +--- + +// :ks_menu: **平台管理 > 平台设置** +// :ks_navigation: **通知管理 > 通知渠道** + + +本节介绍如何设置 Webhook 通知。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 通知**扩展组件。 + +* 您需要提前获取 Webhook 的访问参数。有关更多信息,请联系您的 Webhook 管理员。 + + +== Steps + +. 登录{ks_product_left} Web 控制台。 + +. 在页面右上角点击当前用户名,然后在下拉列表中选择**通知设置**。 + +. 在**通知设置**页面的 **Webhook** 页签,设置 Webhook 通知参数,然后点击**确定**。 + ++ +==== +* 服务器设置 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|Webhook URL +|Webhook 的访问 URL。 + +|认证类型 +|Webhook 的认证类型。 + +* **无需认证**:不需要进行认证。 + +* **Bearer 令牌**:使用 URL Bearer 令牌进行认证。如果选择此类型,您需要进一步设置用于认证的令牌。 + +* **基础认证**:使用用户名和密码进行认证。如果选择此类型,您需要进一步设置用于认证的用户名和密码。 + +|跳过 TLS 验证(不安全) +|调用 Webhook 时是否跳过 TLS 验证。 +|=== +-- + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-notificationConditions_new.adoc[] + +include::../../../../../_custom-en/platformManagement/platformSettings/notificationChannels/notificationChannels-para-sendTestInformation.adoc[] +==== + +. 点击上方的**通知已禁用**开关,启用 Webhook 通知。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/_index.adoc new file mode 100644 index 000000000..ca5f95a3c --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/05-users-notification/_index.adoc @@ -0,0 +1,19 @@ +--- +title: "用户通知设置" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理, 通知渠道" +description: "介绍如何设置用户的通知渠道。" +weight: 05 +layout: "second" +--- + +:ks_permission: **接收通知** + +本节介绍如何设置当前用户的通知渠道,用于接收其所在项目的告警消息。 + +[.admon.note,cols="a"] +|=== +|说明 + +|用户必须在所在项目中具有pass:a,q[{ks_permission}]权限,才能接收该项目的告警消息。 + +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/07-message-config/01-wechat-template.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/07-message-config/01-wechat-template.adoc new file mode 100644 index 000000000..34ae83c98 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/07-message-config/01-wechat-template.adoc @@ -0,0 +1,102 @@ +--- +title: "配置企业微信的通知消息模板" +description: "介绍如何配置企业微信的通知消息。" +weight: 01 +--- + +. 登录集群节点,创建一个 markdown 模板。 ++ +-- +[,bash] +---- +vi +---- + +内容如下: +[,yaml] +---- +apiVersion: v1 +data: + template: | + {{- define "nm.default.markdown.test" }} + {{- range .Alerts }} + {{- $rawStatus := .Status }} + {{- if eq $rawStatus "firing" }} + ### {{ template "nm.default.message" . }} + {{- else }} + ### {{ template "nm.default.message" . }} + {{- end }} + {{- range .Labels.SortedPairs }} + {{- if eq .Name "severity" }} + {{- $color := "" }} + {{- if eq .Value "critical" }} + {{- $color = "red" }} + {{- else if eq .Value "error" }} + {{- $color = "orange" }} + {{- else if eq .Value "warning" }} + {{- $color = "yellow" }} + {{- else if eq .Value "info" }} + {{- $color = "blue" }} + {{- end }} + > **{{ .Name | translate }}: {{ .Value }}** + {{- else }} + > **{{ .Name | translate }}**: {{ .Value }} + {{- end }} + {{- end }} + {{ range .Annotations.SortedPairs.Filter "runbook_url" "message" "summary" "summary_cn" }} + > **{{ .Name | translate }}**: {{ .Value }} + {{- end }} + {{ end }} + {{- end }} + +kind: ConfigMap +metadata: + name: notification-manager-template-test + namespace: kubesphere-monitoring-system +---- +-- + +. 执行以下命令创建名为 `notification-manager-template-test` 的 ConfigMap。 ++ +[,bash] +---- +kubectl apply -f +---- + +. 在link:../../01-notification-channels/04-set-wecom-notification/[通知渠道]或link:../../05-users-notification/04-set-wecom-notification/[用户通知设置]中配置企业微信,以便在企业微信会话或企业微信群中接收通知消息。 + +. 查看 wechat receiver. ++ +-- +[,bash] +---- +kubectl -n kubesphere-monitoring-system get receiver +---- + +* 以 global 开头的 receiver,如 global-wechat-receiver,为全局配置的 wechat receiver。 +* 以用户名称开头的 receiver,如 admin-wechat-receiver,为租户级别配置的 wechat receiver。 +-- + +. 编辑对应的 wechat receiver,以便在通知消息中使用 markdown 模板。 ++ +-- +[,bash] +---- +kubectl -n kubesphere-monitoring-system edit receiver +---- + + +[,yaml] +---- +spec: + wechat: + enabled: true + template: nm.default.markdown.test + tmplText: + name: notification-manager-template-test + namespace: kubesphere-monitoring-system + tmplType: markdown +---- + +企业微信的通知消息将使用此 markdown 模板显示。 +-- diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/07-message-config/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/07-message-config/_index.adoc new file mode 100644 index 000000000..7e2202e17 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/07-message-config/_index.adoc @@ -0,0 +1,6 @@ +--- +title: "通知消息配置" +description: "介绍如何配置通知消息。" +weight: 07 +layout: "second" +--- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/_index.adoc new file mode 100644 index 000000000..e3a56a749 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/11-notifications/_index.adoc @@ -0,0 +1,31 @@ +--- +title: "WhizardTelemetry 通知" +keywords: "Kubernetes, {ks_product}, 平台设置, 通知管理" +description: "介绍如何使用“WhizardTelemetry 通知”扩展组件。" +weight: 10 +layout: "second" +--- + + +本节介绍如何使用“WhizardTelemetry 通知”扩展组件。 + +// 在集群或项目中创建告警规则组会对资源状态进行监控。当资源状态满足预设的条件并且满足预设的持续时间时,系统将产生告警,并通过在平台级别设置的通知渠道向用户发送。有关告警规则组和告警的更多信息,请参阅 link:../06-alerting[WhizardTelemetry 告警]。 + +该扩展组件用于管理多租户 Kubernetes 环境中的通知。它能够接收来自不同发送者的告警、云事件以及其他类型的事件(例如审计和 Kubernetes 事件),并根据租户标签(如命名空间或用户)将通知发送给相应的租户接收器。支持邮件、飞书、钉钉、企业微信、Slack、Webhook 等多种通知渠道。 + + +安装“WhizardTelemetry 通知”扩展组件后, + +* 平台设置左侧导航栏下将显⽰**通知管理**选项。 +* 集群左侧导航栏的**集群设置**菜单下将显示**日志接收器**选项,**日志接收器**页面将显示**通知历史**页签,支持添加多种类型的日志接收器。有关更多信息,请参阅link:../02-logging/06-log-receivers/[日志接收器]。 + +//attention +[.admon.attention,cols="a"] +|=== +| 注意 + +| +- WhizardTelemetry 通知由每个集群部署改为只需在 host 集群部署。在 host 集群添加了 `alertmanager proxy`,并且以 NodePort 形式(默认 31093)暴露。配置 WhizardTelemetry 告警和 WhizardTelemetry 事件告警时,若使用 WhizardTelemetry 通知扩展组件发送告警消息,需要进行相应配置。有关更多信息,请参阅 link:../06-alerting[WhizardTelemetry 告警]和 link:../09-events-altering[WhizardTelemetry 事件告警]。 + +- WhizardTelemetry 通知依赖 WhizardTelemetry 平台服务和 WhizardTelemetry 数据流水线,因此在安装 WhizardTelemetry 通知之前必须先安装并配置好 WhizardTelemetry 平台服务和 WhizardTelemetry 数据流水线这两个扩展组件,否则通知相关功能无法正常使用! +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/15-opensearch/01-intro.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/15-opensearch/01-intro.adoc new file mode 100644 index 000000000..ea6bed70f --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/15-opensearch/01-intro.adoc @@ -0,0 +1,23 @@ +--- +title: "概述" +keywords: "Kubernetes, {ks_product}, opensearch, 日志, 可观测" +description: "介绍 “OpenSearch 分布式检索与分析引擎”扩展组件。" +weight: 01 +--- + +“OpenSearch 分布式检索与分析引擎”扩展组件是 KubeSphere 内置的日志存储扩展组件,用于存储日志、审计、事件、通知历史等可观测数据。 + +除支持部署 OpenSearch 外,该扩展组件还支持部署 OpenSearch Dashboard 和 OpenSearch Curator。 + +* **OpenSearch Dashboard** 用于可视化 OpenSearch 数据以及管理 OpenSearch 集群的用户界面。部署后默认禁用,若要启用,将 `opensearch-dashboards.enabled` 字段设置为 true。 + +* **OpenSearch Curator** 是一个定时任务,定期清理超过配置日期(默认为 7 天)的 Kubernetes 事件日志、Kubernetes 审计日志、Kubernetes 应用程序日志以及通知历史日志。部署后默认启用,若要禁用,将 `opensearch-curator.enabled` 字段设置为 false。 + + +[.admon.note,cols="a"] +|=== +|说明 + +| +有关组件配置的更多信息,请参阅扩展中心“WhizardTelemetry 数据流水线”和“OpenSearch 分布式检索与分析引擎”扩展组件的详情页说明。 +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/15-opensearch/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/15-opensearch/_index.adoc new file mode 100644 index 000000000..4ffb9d428 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/15-opensearch/_index.adoc @@ -0,0 +1,24 @@ +--- +title: "OpenSearch 分布式检索与分析引擎" +keywords: "Kubernetes, {ks_product}, opensearch, 日志, 可观测" +description: "介绍“OpenSearch 分布式检索与分析引擎”扩展组件。" +weight: 15 +layout: "second" +--- + +“OpenSearch 分布式检索与分析引擎”扩展组件是 KubeSphere 内置的日志存储扩展组件,用于存储日志、审计、事件、通知历史等可观测数据。 + +除支持部署 OpenSearch 外,该扩展组件还支持部署 OpenSearch Dashboard 和 OpenSearch Curator。 + +* **OpenSearch Dashboard** 用于可视化 OpenSearch 数据以及管理 OpenSearch 集群的用户界面。部署后默认禁用,若要启用,将 `opensearch-dashboards.enabled` 字段设置为 true。 + +* **OpenSearch Curator** 是一个定时任务,定期清理超过配置日期(默认为 7 天)的 Kubernetes 事件日志、Kubernetes 审计日志、Kubernetes 应用程序日志以及通知历史日志。部署后默认启用,若要禁用,将 `opensearch-curator.enabled` 字段设置为 false。 + + +[.admon.note,cols="a"] +|=== +|说明 + +| +有关组件配置的更多信息,请参阅扩展中心“WhizardTelemetry 数据流水线”和“OpenSearch 分布式检索与分析引擎”扩展组件的详情页说明。 +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/16-grafana/01-built-in-dashboards.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/16-grafana/01-built-in-dashboards.adoc new file mode 100644 index 000000000..7fffb0f5f --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/16-grafana/01-built-in-dashboards.adoc @@ -0,0 +1,67 @@ +--- +title: "查看内置 Dashboard" +keywords: "Kubernetes, {ks_product}, Grafana, 监控, 内置 dashboard, 可观测" +description: "介绍如何查看扩展组件提供的内置 Dashboard。" +weight: 01 +--- + +Grafana for WhizardTelemetry 扩展组件内置了多个 Grafana Dashboard 模板,可供直接查询 Kubernetes 和{ks_product_both}的监控数据,而无需自行配置 Grafana Dashboard。 + +== Steps + +. 登录 Grafana 控制台后,点击左侧导航栏的 **Dashboards**,查看所有内置的 Dashboard 模板。包含 aicp, kube-prometheus-stack, whizard-loki, whizard-monitoring 4 个目录。 ++ +-- +image:/images/ks-qkcp/zh/v4.1.2/grafana/dashboard-list.png[dashboard-list] + +[%header,cols="1a,3a"] +|=== +|目录 |模板介绍 + +|aicp +|用于青云 AI 智算运维管理端,需在“AI 智算管理”平台中查看监控面板。 + +|kube-prometheus-stack +|可视化 Kubernetes 的监控数据。 + +|whizard-loki +|可视化存储到 Loki 的{ks_product_both}的日志、审计、事件及通知历史。 + +|whizard-monitoring +|适配 Whizard 与 KubeSphere 后的多集群监控。 +|=== + +[.admon.attention,cols="a"] +|=== +|注意 + +| +* 安装 **WhizardTelemetry 监控**扩展组件后,**kube-prometheus-stack** 和 **whizard-monitoring** 中的 Dashboard 才会显示监控数据。 +* 若要 **whizard-loki** 中的 Dashboard 显示监控数据,请参阅link:../../17-loki/01-display-loki-data[ +Grafana Loki for WhizardTelemetry]。 +|=== +-- + +. 点击目录中的 Dashboard 模板,查看对应指标的监控数据。 ++ +下面以 **whizard-monitoring** 中的 **KubeSphere Nodes** 模板为例,介绍 Dashboard 页面。 + + +. **KubeSphere Nodes** 看板展示了每个节点的 CPU、内存、磁盘和 pod 的资源利用率、磁盘 IOPS、磁盘吞吐量、网络带宽等监控信息。 ++ +image:/images/ks-qkcp/zh/v4.1.2/grafana/node-dashboard.png[node-dashboard] + +. 点击上方的 **data source**、**cluster**、**node**,可选择查看指定数据源、集群和节点的相关数据。 +. 点击右上角的image:/images/ks-qkcp/zh/icons/time-light.png[time-light,18,18],设置数据展示的时间范围,支持自定义时间段。 +. 点击右上角的image:/images/ks-qkcp/zh/icons/refresh-light.png[refresh-light,18,18],刷新看板上的数据。点击image:/images/ks-qkcp/zh/icons/chevron-down.svg[chevron-down,18,18]设置数据自动刷新的时间间隔。 +. 点击每个 Panel 右上角的image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],可对指定 Panel 进行独立查看、编辑、分享、检查、删除等操作。 ++ +[.admon.note,cols="a"] +|=== +|说明 + +|有关 Dashboard 的更多信息,请参阅 link:https://grafana.com/docs/grafana/latest/dashboards/[Grafana 官方文档]。 + +|=== + + diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/16-grafana/05-add-data-source.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/16-grafana/05-add-data-source.adoc new file mode 100644 index 000000000..8eaf2176e --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/16-grafana/05-add-data-source.adoc @@ -0,0 +1,45 @@ +--- +title: "添加数据源" +keywords: "Kubernetes, {ks_product}, Grafana, 添加数据源, 可观测" +description: "介绍如何添加 grafana 数据源。" +weight: 05 +--- + +本节简要介绍如何添加、配置和查询数据源。有关更多信息,请参阅 link:https://grafana.com/docs/grafana/latest/datasources/[Grafana data sources]。 + +创建 Dashboard 前,必须先添加数据源。Grafana for WhizardTelemetry 扩展组件默认添加了 Prometheus 的服务器地址为数据源。您也可以自行添加数据源,如 Loki、Elasticsearch、InfluxDB、PostgreSQL、MySQL 等。 + +添加数据源后,您可以: + +- 使用 Explore 查询数据。 +- 在面板中将数据可视化。 +- 创建告警规则。 + +== Prerequisites + +只有在 Grafana 控制台具有 admin 角色的用户才能添加或删除数据源。 + +== 添加数据源 + +. 登录 Grafana 控制台后,点击左侧导航栏的 **Connections**。 +. 搜索数据源,如 loki。 +. 点击数据源名称,进入数据源概览页面。 +. 点击右上角的 **Add new data source**,进入数据源配置页面。 +. 输入数据源的服务器地址,点击最下方的 **Save & test**,完成数据源的添加和配置。 ++ +image:/images/ks-qkcp/zh/v4.1.2/grafana/loki-data-source.png[loki-data-source] + +== 查询数据源数据 + +设置查询条件,查询数据源中特定指标一段时间范围内的数据。 + +. 点击左侧导航栏的 **Explore**,在上方选择数据源。 +. 在查询编辑器中输入或选择 **Metric**,设置 **Label filters**,然后点击右上角的 **Run query**。 ++ +image:/images/ks-qkcp/zh/v4.1.2/grafana/explore.png[explore] + +== 删除数据源 + +. 点击左侧导航栏的 **Connections > Data sources**。 +. 点击需要删除的数据源名称,进入数据源配置页面。 +. 点击最下方的 **Delete**, 删除数据源。 diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/16-grafana/07-create-dashboards.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/16-grafana/07-create-dashboards.adoc new file mode 100644 index 000000000..f7312241f --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/16-grafana/07-create-dashboards.adoc @@ -0,0 +1,41 @@ +--- +title: "创建 Dashboard" +keywords: "Kubernetes, {ks_product}, Grafana, 创建 Dashboard, 可观测" +description: "介绍如何创建 Dashboard。" +weight: 07 +--- + +添加数据源后,创建 Dashboard, 以便将数据源中的数据可视化。 + +Dashboard 由一个或多个 Panel(面板)组成,按行组织和排列。Panel 显示可视化内容并提供各种控制选项。 + +本节简要介绍如何创建 Dashboard。有关更多信息,请参阅 link:https://grafana.com/docs/grafana/latest/dashboards/[Grafana dashboards]。 + +== Steps + +. 点击 Grafana 控制台左侧导航栏的 **Dashboards**。 +. 点击 **New > New Dashboard**。 +. 在空白 Dashboard 页面,点击 **+ Add visualization**。 +. 在弹出的对话框中,选择已添加的数据源,将自动打开 Panel 编辑页面。 ++ +image:/images/ks-qkcp/zh/v4.1.2/grafana/edit-panel.png[edit-panel] + +.. 使用数据源的查询语言设置查询条件。 + +.. 点击image:/images/ks-qkcp/zh/icons/refresh-light.png[refresh-light,18,18]查询数据。 + +.. 点击右侧的图表类型(如 Time series),选择一个图表样式。数据将以该样式展示。 + +.. 在 **Panel options** 区域,设置 Panel 的名称,描述等。 + +.. 编辑完成后,点击 **Apply** 保存 Panel,点击 **Save** 保存 Dashboard。 ++ +保存 Dashboard 时,可设置 Dashboard 的名称、描述和所在目录。 + +. 在新建的 Dashboard 页面,点击上方的 **Add**,选择 **Visualization**,可继续添加 Panel。 + +. 退出 Panel 编辑页面后,可拖拽 Panel 标题将其移动到任意位置;在 Panel 右下角拖动光标,可调整 Dashboard 中 Panel 的大小。 + +. 点击 Dashboard 页面上方的保存按钮,再次保存 Dashboard。 ++ +至此,一个含有多个 Panel 的 Dashboard 创建完成。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/16-grafana/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/16-grafana/_index.adoc new file mode 100644 index 000000000..9a8d3a400 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/16-grafana/_index.adoc @@ -0,0 +1,58 @@ +--- +title: "Grafana for WhizardTelemetry" +keywords: "Kubernetes, {ks_product}, Grafana, 监控, dashboard, 可观测" +description: "介绍如何使用 Grafana for WhizardTelemetry 扩展组件。" +weight: 16 +layout: "second" +--- + +本节介绍如何使用 Grafana for WhizardTelemetry 扩展组件。 + +该扩展组件提供一个开放且可组合的数据可视化和监控分析平台,内置众多仪表盘(Dashboard)来增强 WhizardTelemetry 可观测平台的可视化能力。它提供了丰富的数据展示和分析功能,使用户能够以直观和交互式的方式探索、查询和可视化各种数据源(如 Prometheus、Loki、Elasticsearch、InfluxDB、PostgreSQL 等)的指标、日志和跟踪数据。 + +**配置说明:** + +安装 Grafana for WhizardTelemetry 扩展组件后,需修改扩展组件配置以暴露 Grafana 服务,才能访问 Grafana 控制台。 + +[,yaml] +---- + service: + enabled: true + type: ClusterIP + loadBalancerIP: "" + loadBalancerClass: "" + loadBalancerSourceRanges: [] + port: 80 + targetPort: 3000 + # nodePort: 32000 +---- + +[%header,cols="1a,4a"] +|=== +|参数 |描述 +|type: ClusterIP |默认安装方式,只能在集群内部通过虚拟 IP 地址访问 Grafana 服务。 + +|type: NodePort |使用 NodePort 方式暴露服务,可通过 `nodePort` 参数指定端口。如未指定,则在 30000 到 32767 的空闲端口中随机选择一个端口来使用。 + +配置后,可通过 : 访问 Grafana 控制台。 + +|type: LoadBalancer |使用云服务商提供的负载均衡器向外部暴露 Grafana 服务。为实现上述功能,LoadBalancer 类型的服务需要负载均衡器插件和基础设施环境提供支持,并且需要设置相关注解。有关更多信息,请联系您的基础设施环境提供商。 +|=== + +// include::../../../../_custom-en/clusterManagement/services/services-oper-editServiceExternalAccessSettings.adoc[] + +// [.admon.note,cols="a"] +// |=== +// |说明 + +// | +// 有关各种服务类型的配置方法,请参阅link:https://kubernetes.io/zh-cn/docs/concepts/services-networking/service/#publishing-services-service-types[服务类型]。 +// |=== + +[.admon.tip,cols="a"] +|=== +|提示 + +| +成功访问 Grafana 控制台后,可使用默认帐户和密码 (**admin/admin**) 登录。 +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/17-loki/01-display-loki-data.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/17-loki/01-display-loki-data.adoc new file mode 100644 index 000000000..2faf3da81 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/17-loki/01-display-loki-data.adoc @@ -0,0 +1,72 @@ +--- +title: "可视化 Loki 中的数据" +keywords: "Kubernetes, {ks_product}, Grafana, loki, dashboard, 可观测" +description: "介绍如何在 Grafana 可视化 loki 中的日志、审计、事件及通知历史数据。" +weight: 01 +--- + + +本节介绍如何在 Grafana 控制台可视化存储到 Loki 的{ks_product_both}的日志、审计、事件及通知历史数据。 + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **WhizardTelemetry 平台服务**扩展组件。 +* 已通过 Grafana for WhizardTelemetry 扩展组件或其他方法部署一个 Grafana 控制台。 + +== Steps + +. 安装 Grafana Loki for WhizardTelemetry 扩展组件。 + + +. 在集群的**应用负载 > 服务**页面,查找 `loki-agent-gateway`,**编辑外部访问**,开启 NodePort。 ++ +[.admon.note,cols="a"] +|=== +|说明 + +| +取决于您的网络环境,您可能需要配置流量转发规则并在防火墙中放行该 NodePort 端口。 +|=== + +. 安装 WhizardTelemetry 数据流水线,并配置 Loki 信息。 ++ +-- +[,yaml] +---- + sinks: + loki: + endpoint: http://: +---- + +示例如下: + +[,yaml] +---- + sinks: + loki: + endpoint: http://172.31.19.250:30858 +---- +-- + +. 安装 WhizardTelemetry 日志、审计、事件、通知(按需安装),修改扩展组件配置,启用 Loki。 ++ +-- +[,yaml] +---- + sinks: + loki: + enabled: true +---- +-- + +. 在 Grafana 控制台中配置 Loki 数据源。 ++ +-- +* 若 Grafana 控制台为 Grafana for WhizardTelemetry 扩展组件所部署,Grafana Loki for WhizardTelemetry 安装完成后,会自动在 Grafana 控制台为日志、审计、事件及通知历史添加 Loki 数据源。有关如何访问 Grafana 控制台,请参阅 link:../../16-grafana/[Grafana for WhizardTelemetry]。 + +* 若 Grafana 控制台使用其他方法部署,您需要在 Grafana 控制台手动添加 loki 数据源。更多信息,请参阅扩展中心 Grafana Loki for WhizardTelemetry 扩展组件的详情页说明。 +-- + +. 访问 Grafana 控制台,即可在 Dashboards 下查看{ks_product_both}日志、审计、事件、通知历史的数据面板。 ++ +image:/images/ks-qkcp/zh/v4.1.2/loki-data.png[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/17-loki/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/17-loki/_index.adoc new file mode 100644 index 000000000..4f2e75ebd --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/17-loki/_index.adoc @@ -0,0 +1,22 @@ +--- +title: "Grafana Loki for WhizardTelemetry" +keywords: "Kubernetes, {ks_product}, Grafana, loki, 对象存储, 监控, dashboard, 可观测" +description: "介绍如何使用 Grafana Loki for WhizardTelemetry 扩展组件。" +weight: 17 +layout: "second" +--- + + +Loki 是一个受 Prometheus 启发的水平可扩展、高可用、多租户日志聚合系统。通过采集、索引和存储日志数据,使用户能够轻松地搜索、查询和可视化日志信息。Loki 支持将日志存到对象存储,并从中查询日志,是低成本存储海量日志的较好选择。 + +// Loki 不索引日志的内容,而是为每个日志流建立一组标签。这些标签由键值对组成,对于高效组织、过滤和搜索日志数据至关重要。 + +Grafana Loki for WhizardTelemetry 扩展组件支持在 Grafana 控制台查看存储到 Loki 的{ks_product_both}的日志、审计、事件及通知历史数据。 + +[.admon.note,cols="a"] +|=== +|说明 + +| +Grafana Loki for WhizardTelemetry 扩展组件只需安装到一个集群即可。 +|=== diff --git a/content/en/docs/v4.1/11-use-extensions/05-observability-platform/_index.adoc b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/_index.adoc new file mode 100644 index 000000000..be95f7a3b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/05-observability-platform/_index.adoc @@ -0,0 +1,36 @@ +--- +title: "WhizardTelemetry 可观测平台" +keywords: "Kubernetes, {ks_product}, 可观测中心, 监控, 告警, 事件, 通知, 日志, 审计, 事件, 数据流水线, OpenSearch" +description: "介绍如何使用 WhizardTelemetry 可观测平台。" +weight: 05 +layout: "second" +--- + +WhizardTelemetry 可观测平台是一款企业级多集群监控告警产品,专注于提供一体化的云原生可观测性服务。该平台提供了从基础设施到应用的多层级、多维度、多租户的指标监控和告警功能。同时,通过可插拔的 Whizard 可观测中心实现了监控告警的多集群统一纳管能力,以及成员集群和边缘集群的轻量化支持。 + +WhizardTelemetry 可观测平台由以下扩展组件构成: + +- **WhizardTelemetry 平台服务**:是 WhizardTelemetry 可观测平台各扩展组件的公共服务。它是各个可观测性扩展组件通用的 APIServer,为所有可观测性扩展组件提供公共的后端平台服务。 + +- **WhizardTelemetry 日志**:提供多租户视角的云原生应用实时及历史日志收集、查询、导出、存储等功能,可对接如 ElasticSearch、OpenSearch、Kafka 等日志接收器。 + +- **WhizardTelemetry 事件**:可长期保存 Kubernetes 相关对象产生的事件,并提供多租户视角的事件检索和查看功能。 + +- **WhizardTelemetry 审计**:实时记录在{ks_product_both}平台上的用户相关操作行为,并提供多租户视角的审计历史的检索及查看功能,可快速回溯相关用户的操作行为。 + +- **WhizardTelemetry 监控**:提供多租户视角的云原生资源监控能力,包括针对集群,节点,工作负载、GPU、K8s 控制面等对象的核心监控指标进行实时和历史数据展示等功能。 + +- **WhizardTelemetry 告警**:基于 KubeSphere 采集的监控数据,可针对不同资源类型和监控指标,提供平台及租户视角的告警及告警规则管理功能。 + +- **WhizardTelemetry 事件告警**:为 Kubernetes 原生事件和 Kubernetes/KubeSphere 审计事件定义告警规则,对传入的事件数据进行评估,并将告警发送到指定的接收器如 HTTP 端点等。 + +- **WhizardTelemetry 通知**:管理多租户 Kubernetes 环境中的通知。它能够接收来自不同发送者的告警、云事件以及其他类型的事件(例如审计和 Kubernetes 事件),并根据租户标签(如命名空间或用户)将通知发送给相应的租户接收器。支持邮件、飞书、钉钉、企业微信、Slack、Webhook 等多种通知渠道。 + +- **WhizardTelemetry 数据流水线**:提供可观测性数据的收集、转换和路由能力。 + +- **OpenSearch 分布式检索与分析引擎**:支持使用外置或内置的 OpenSearch 集群来存储、检索与分析日志、审计、事件、通知历史等可观测数据。 + +- **Grafana for WhizardTelemetry**:一个开放且可组合的数据可视化和监控分析平台,内置众多仪表盘(Dashboard)来增强 WhizardTelemetry 可观测平台的可视化能力。 + +- **Grafana Loki for WhizardTelemetry**:支持在 Grafana 控制台查看存储到 Loki 的 KubeSphere 日志、审计、事件及通知历史数据。 + diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/01-create-a-network-policy.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/01-create-a-network-policy.adoc new file mode 100644 index 000000000..af5d20b13 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/01-create-a-network-policy.adoc @@ -0,0 +1,55 @@ +--- +title: "创建网络策略" +keywords: "Kubernetes, {ks_product}, 集群管理, 网络, 网络策略, 创建网络策略" +description: "介绍如何创建网络策略。" +weight: 01 +--- + +:ks_permission: **集群网络资源管理** +:ks_navigation: **网络 > 网络策略** + + +本节介绍如何创建网络策略。 + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网络**扩展组件。 + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +. 在**创建网络策略**对话框,设置网络策略的配置文件,然后点击**确定**。 ++ +-- +* 在右上角点击image:/images/ks-qkcp/zh/icons/upload-dark-white.svg[upload-dark-white,18,18] 可上传配置文件。 + +* 在右上角点击image:/images/ks-qkcp/zh/icons/download-dark-white.svg[download-dark-white,18,18] 可下载配置文件。 + +// Note +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +{ks_product_right}目前不支持以图形化的方式创建网络策略。有关网络策略配置文件的具体参数,请参阅 link:https://kubernetes.io/zh/docs/concepts/services-networking/network-policies/[Kubernetes 官方文档]。 + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + +网络策略创建完成后将显示在网络策略列表中。 +-- diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/02-view-a-network-policy-list.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/02-view-a-network-policy-list.adoc new file mode 100644 index 000000000..97f9190ab --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/02-view-a-network-policy-list.adoc @@ -0,0 +1,53 @@ +--- +title: "查看网络策略列表" +keywords: "Kubernetes, {ks_product}, 集群管理, 网络, 网络策略, 查看网络策略列表" +description: "介绍如何查看网络策略列表。" +weight: 02 +--- + +:ks_permission: **集群网络资源查看** +:ks_navigation: **网络 > 网络策略** + + +本节介绍如何查看网络策略列表。 + + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网络**扩展组件。 + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ +==== +* 网络策略列表提供以下信息: ++ +-- +[options="header",cols="1a,4a"] +|=== +|参数 |描述 + +include::../../../../_custom-en/clusterManagement/networkPolicies/networkPolicies-para-information.adoc[] +|=== +-- + +* 在列表左上角的下拉列表中选择一个项目,可以查看特定项目中的网络策略。 + +include::../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/03-view-network-policy-details.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/03-view-network-policy-details.adoc new file mode 100644 index 000000000..3d4681144 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/03-view-network-policy-details.adoc @@ -0,0 +1,110 @@ +--- +title: "查看网络策略详情" +keywords: "Kubernetes, {ks_product}, 集群管理, 网络, 网络策略, 查看网络策略详情" +description: "介绍如何查看网络策略详情。" +weight: 03 +--- + +:ks_permission: **集群网络资源查看** +:ks_navigation: **网络 > 网络策略** + + +本节介绍如何查看网络策略详情。 + + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网络**扩展组件。 + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在网络策略列表中点击一个网络策略的名称打开其详情页面。 + +. 在网络策略详情页面左侧的**属性**区域查看网络策略的资源属性。 ++ +-- +[options="header",cols="1a,4a"] +|=== +|参数 |描述 + +|集群 +|网络策略所属的集群。 + +|项目 +|网络策略所属的项目。 + +|创建时间 +|网络策略的创建时间。 + +|创建者 +|创建网络策略的用户。 +|=== +-- + +. 在网络策略详情页面右侧点击**出站规则**页签查看网络策略的出站规则。 ++ +-- +出站规则用于限制容器组只能访问特定的其他容器组或网段。 + +[%header,cols="1a,4a"] +|=== + +|参数 +|描述 + +|目标 +|规则适用的容器组的信息。 + +* **项目**:规则所属的项目。网络策略中的规则仅适用于网络策略所属项目中的容器组。 + +* **标签**:规则适用的容器组所具有的标签。如果未设置标签,则规则适用于网络策略所属的项目中的所有容器组。 + + +|目的地 +|目标容器组可以访问的其他容器组或网段的信息。 + +* **项目**:目标容器组可以访问的其他容器组所属的项目。 +* **标签**:目标容器组可以访问的其他容器组所具有的标签。如果未设置标签,则目标容器组可以访问项目中的所有容器组。 +* **CIDR**:目标容器组可以访问的网段。 +* **端口**:目标容器组可以访问的其他容器组或网段的端口。如果未设置端口,则目标容器组可以访问其他容器组或网段的所有端口。 +|=== +-- + +. 在网络策略详情页面右侧点击**入站规则**页签查看网络策略的入站规则。 ++ +-- +入站规则用于限制容器组只能被特定的其他容器组或网段访问。 + +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|目标 +| +include::../../../../_custom-en/clusterManagement/networkPolicies/networkPolicies-para-target.adoc[] + +|目的地 +|可以访问目标容器组的其他容器组或网段的信息。 + +* **项目**:可以访问目标容器组的其他容器组所属的项目。 +* **标签**:可以访问目标容器组的其他容器组所具有的标签。如果未设置标签,则项目中的所有容器组都可访问目标容器组。 +* **CIDR**:可以访问目标容器组的网段。 +* **端口**:其他容器组或网段可以访问的目标容器组的端口。如果未设置端口,则其他容器组或网段可以访问的目标容器组的所有端口。 +|=== +-- diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/04-edit-network-policy-information.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/04-edit-network-policy-information.adoc new file mode 100644 index 000000000..94c3d175b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/04-edit-network-policy-information.adoc @@ -0,0 +1,54 @@ +--- +title: "编辑网络策略信息" +keywords: "Kubernetes, {ks_product}, 集群管理, 项目, 编辑网络策略信息" +description: "介绍如何编辑网络策略信息。" +weight: 04 +--- + +:ks_permission: **集群网络资源管理** +:ks_navigation: **网络 > 网络策略** + + +本节介绍如何编辑网络策略信息。 + +您可以编辑网络策略的别名和描述。{ks_product_right}不支持编辑已创建网络策略的名称。 + + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网络**扩展组件。 + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要操作的网络策略右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑信息**。 + +. 在**编辑信息**对话框,设置网络策略的别名和描述,然后点击**确定**。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|别名 +|网络策略的别名。不同项目的网络策略可以相同。别名只能包含中文、字母、数字和连字符(-),不得以连字符(-)开头或结尾,最长 63 个字符。 + +|描述 +|网络策略的描述信息。描述可包含任意字符,最多包含 256 个字符。 +|=== +-- diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/05-edit-network-policy-yaml.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/05-edit-network-policy-yaml.adoc new file mode 100644 index 000000000..3ab197473 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/05-edit-network-policy-yaml.adoc @@ -0,0 +1,43 @@ +--- +title: "编辑网络策略配置" +keywords: "Kubernetes, {ks_product}, 集群管理, 项目, 编辑网络策略配置, yaml" +description: "介绍如何编辑网络策略配置。" +weight: 05 +--- + +:ks_permission: **集群网络资源管理** +:ks_navigation: **网络 > 网络策略** + + +本节介绍如何编辑网络策略的配置。 + + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网络**扩展组件。 + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要操作的网络策略右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑 YAML**。 + +. 在**编辑 YAML**对话框,修改网络策略的配置,然后点击**确定**。 ++ +-- +有关网络策略配置文件的具体参数,请参阅 link:https://kubernetes.io/zh/docs/concepts/services-networking/network-policies/[Kubernetes 官方文档]。 +-- diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/06-delete-network-policies.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/06-delete-network-policies.adoc new file mode 100644 index 000000000..b1256596c --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/06-delete-network-policies.adoc @@ -0,0 +1,63 @@ +--- +title: "删除网络策略" +keywords: "Kubernetes, {ks_product}, 集群管理, 网络, 网络策略, 删除网络策略" +description: "介绍如何删除网络策略。" +weight: 06 +--- + +:ks_permission: **集群网络资源管理** +:ks_navigation: **网络 > 网络策略** + + +本节介绍如何删除网络策略。 + +// Note +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +网络策略删除后无法恢复,请谨慎执行此操作。 + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网络**扩展组件。 + + +== 删除单个网络策略 + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + +. 在需要删除的网络策略右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**删除**。 + +. 在**删除网络策略**对话框,输入网络策略的名称,然后点击**确定**。 + + +== 批量删除网络策略 + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 选择需要删除的网络策略左侧的复选框,然后在网络策略列表上方点击**删除**。 + +. 在**批量删除网络策略**对话框,输入网络策略的名称,然后点击**确定**。 ++ +-- +include::../../../../_custom-en/note-separateNamesByComma.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/07-network-isolation/01-workspace-network-isolation.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/07-network-isolation/01-workspace-network-isolation.adoc new file mode 100644 index 000000000..61fcf9de1 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/07-network-isolation/01-workspace-network-isolation.adoc @@ -0,0 +1,35 @@ +--- +title: "启用企业空间网络隔离" +keywords: "Kubernetes, {ks_product}, 企业空间, 企业空间设置, 基本信息, 启用和禁用网络隔离" +description: "介绍如何启用和禁用企业空间网络隔离。" +weight: 01 +--- + +:ks_permission: **企业空间网络隔离管理** +:ks_navigation: **企业空间设置 > 基本信息** + + +本节介绍如何为授权给企业空间的集群启用和禁用网络隔离。 + +当授权给企业空间的集群启用网络隔离后,属于该企业空间且运行在该集群中的容器组将不能被企业空间外部的客户端访问,也不能被集群外部的客户端访问。属于该企业空间且运行在该集群中的容器组的出站流量不受限制。 + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网络**扩展组件。 + +== Steps + +include::../../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**网络隔离**区域,点击集群右侧的开关为集群启用或禁用网络隔离。 diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/07-network-isolation/02-project-network-isolation.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/07-network-isolation/02-project-network-isolation.adoc new file mode 100644 index 000000000..18c77a5a2 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/07-network-isolation/02-project-network-isolation.adoc @@ -0,0 +1,147 @@ +--- +title: "启用项目网络隔离" +keywords: "Kubernetes, {ks_product}, 项目管理, 项目设置, 网络隔离, 启用网络隔离" +description: "介绍如何启用项目网络隔离。" +weight: 02 +--- + +:ks_permission: **项目网络隔离管理** +:ks_navigation: **项目设置 > 网络隔离** + + +本节介绍如何启用项目网络隔离,以及添加和删除隔离白名单。 + + +== Prerequisites + +* {empty} +include::../../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网络**扩展组件。 + +== Steps + +=== 启用网络隔离 + +include::../../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**网络隔离**页面,点击**启用**。 ++ +-- +// Note +include::../../../../../../_ks_components-en/admonitions/note.adoc[] + +启用网络隔离后,其他项目的容器组、其他节点主机环境以及集群外部的所有网段将无法访问当前项目中的容器组。默认对出站没有限制,即在未设置白名单条目的情况下,当前项目中的容器组可以与其他项目的容器组、其他节点主机环境以及集群外部的所有网段通信。添加白名单条目后,仅允许当前项目中的容器组与特定项目中的容器组、其他节点主机环境和集群外部网段通信。 + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + +=== 添加白名单 + +. 启用网络隔离后,点击**内部白名单**或**外部白名单**页签。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|内部白名单 +|允许当前项目中的容器组与当前企业空间其他项目中的容器组通信。 + +|外部白名单 +|允许当前项目中的容器组与企业空间外部的特定网段和端口通信。 +|=== +-- + +. 在**内部白名单**或**外部白名单**页签,点击**添加白名单条目**。 + +. 在**添加白名单条目**对话框,设置白名单条目的参数,然后点击**确定**。 ++ +==== +* 对于内部白名单条目,请设置以下参数: ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|流量方向 +|白名单条目放行的流量方向。 + +* **出站**:从当前项目到其他项目的方向。 + +* **入站**:从其他项目到当前项目的方向。 + +|类型 +|白名单条目匹配其他项目容器组的方式。 + +* **项目**:当前项目中的容器组可以与指定项目中的所有容器组通信。 + +* **服务**:当前项目中的容器组可以与指定服务的后端容器组通信。 +|=== +-- + +* 对于外部白名单条目,请设置以下参数: ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|白名单条目的名称。 + +|流量方向 +|白名单条目放行的流量方向。 + +* **出站**:从当前项目到企业空间外的方向。 + +* **入站**:从企业空间外到当前项目的方向。 + +|网段 +|企业空间外部的网络地址和子网掩码。支持无类别域间路由(CIDR)。 + +* 在已添加的网段右侧点击image:/images/ks-qkcp/zh/icons/copy-light.svg[copy-light,18,18]可创建网段副本。 +* 在已添加的网段右侧点击image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18]可删除网段。 +* 点击**添加新网段**可设置多个网段。 + +|端口 +|白名单条目放行的端口号。 + +* 对于出站白名单条目,此处的端口为企业空间外部地址的端口。 + +* 对于入站白名单条目,此处的端口为当前项目容器组的端口。 + +* 在已添加的端口右侧点击image:/images/ks-qkcp/zh/icons/copy-light.svg[copy-light,18,18]可创建端口副本。 +* 在已添加的端口右侧点击image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18]可删除端口。 +* 点击**添加新端口范围**可设置多个端口范围,点击**添加新端口**可设置多个端口。 +|=== +-- + +白名单条目创建完成后将显示在内部白名单或外部白名单列表中。 +==== + +. 在**外部白名单**列表中,点击条目名称可查看条目详情,在条目右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] > **编辑**,编辑白名单条目详情。 + +=== 删除白名单 + +// Warning +include::../../../../../../_ks_components-en/admonitions/warning.adoc[] + +删除白名单条目可能会导致当前项目中的容器组网络连接中断,请谨慎执行此操作。 + +include::../../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + +. 在**网络隔离**页面,点击**内部白名单**或**外部白名单**页签。 + +. 在需要删除的内部白名单条目右侧点击image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18];在需要删除的外部白名单条目右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**删除**。 + +. 在**删除白名单条目**对话框,输入白名单条目的名称,然后点击**确定**。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/07-network-isolation/_index.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/07-network-isolation/_index.adoc new file mode 100644 index 000000000..8338eff08 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/07-network-isolation/_index.adoc @@ -0,0 +1,27 @@ +--- +title: "网络隔离" +keywords: "Kubernetes, {ks_product}, 企业空间, 网络策略, 项目设置, 网络隔离" +description: "介绍如何为企业空间和项目启用网络隔离。" +weight: 07 +layout: "second" +--- + + +本节介绍如何为企业空间和项目启用网络隔离。 + +网络隔离功能用于控制企业空间和项目中容器组的出站和入站流量。您可以使用网络隔离功能实现以下目的: + +* 只允许当前企业空间和项目的容器组访问特定的其他容器组或网段。 + +* 只允许当前企业空间和项目的容器组被特定的其他容器组或网段访问。 + +//note +[.admon.note,cols="a"] +|=== +|说明 + +| +启用企业空间网络隔离会自动在相应集群中为该企业空间下的所有项目创建网络策略。若企业空间有新增项目,会自动为该项目创建网络策略。若从企业空间移除项目,该项目的网络策略也会自动移除。 + +启用项目网络隔离会自动在相应集群中为该项目创建网络策略。 +|=== diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/_index.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/_index.adoc new file mode 100644 index 000000000..a1995f722 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/01-network-policies/_index.adoc @@ -0,0 +1,16 @@ +--- +title: "网络策略" +keywords: "Kubernetes, {ks_product}, 集群管理, 网络策略" +description: "介绍如何管理集群网络策略。" +weight: 01 +layout: "second" +--- + + +本节介绍如何管理网络策略。 + +网络策略用于控制集群中容器组的访问和被访问权限,允许在同个集群内实现网络的隔离。您可以使用网络策略实现以下目的: + +* 只允许容器组访问特定的其他容器组或网段。 + +* 只允许容器组被特定的其他容器组或网段访问。 diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/01-create-a-pod-ip-pool.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/01-create-a-pod-ip-pool.adoc new file mode 100644 index 000000000..06e1577b3 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/01-create-a-pod-ip-pool.adoc @@ -0,0 +1,152 @@ +--- +title: "创建容器组 IP 池" +keywords: "Kubernetes, {ks_product}, 集群管理, 网络, 容器组 IP 池, 创建容器组 IP 池" +description: "介绍如何创建容器组 IP 池。" +weight: 01 +--- + +:ks_permission: **集群网络资源管理** +:ks_navigation: **网络 > 容器组 IP 池** + + +本节介绍如何创建容器组 IP 池。 + + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网络**扩展组件。 + + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +. 在**创建容器组 IP 池**对话框,设置容器组 IP 池的参数,然后点击**下一步**。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|IP 地址 +|容器组 IP 池对应网段的网络地址。 + +|掩码 +|容器组 IP 池对应网段的掩码位数。 + +|数量 +|创建容器组 IP 池的数量。最多可同时创建 10 个容器组 IP 池。如果创建数量大于或等于 2,系统将根据自动填充其他 IP 池的网络地址。您也可以根据需要自定义其他 IP 池的网络地址。 +|=== +-- + +. 在**容器组 IP 池**对话框,点击image:/images/ks-qkcp/zh/icons/pen-light.svg[pen,18,18],在弹出的**编辑容器组 IP 池**区域,设置以下参数,然后点击**创建**。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|网段 +|容器组 IP 池的 IP 范围。 + +|名称 +|容器组 IP 池名称。您可以修改系统默认生成的名称。名称只能包含小写字母、数字和连字符(-),必须以小写字母或数字开头或结尾,最长 63 个字符。 + +|IP 池块大小 +|IP 池用于分配 IP 的 block 的 CIDR 大小。 + +|NAT outgoing +|是否允许通过 NAT 方式跨 IP 池通信。 + +启用此功能后,来自此 IP 池中的 Calico 网络容器发送到任何 Calico IP 池之外的目的地的数据包将被伪装。 + +若启用 IPIP 或 VXLAN 模式,建议开启 NAT outgoing,否则运行 Calico 的工作负载和主机之间的路由是非对称的,并且可能由于 RPF 检查失败而导致流量被过滤。 + +|别名 +|容器组 IP 池的别名。别名只能包含中文、字母、数字和连字符(-),不得以连字符(-)开头或结尾,最长 63 个字符。 + +|描述 +|容器组 IP 池的描述信息。描述可包含任意字符,最多包含 256 个字符。 + +|选择节点 +|使用标签选择器为 IP 池匹配合适的节点。 + +* **节点范围** + +** 全部:匹配标签选择范围内的所有节点。 +** 全部禁止:禁止自动分配 IP 池的 IP 地址到任一节点的容器组。 + +* **标签选择** + +ifeval::["{file_output_type}" == "html"] +** 键:节点标签的键。点击输入自定义的键。有关节点标签的更多信息,请参阅link:../../../../07-cluster-management/03-nodes/06-edit-node-labels.adoc[编辑节点标签]。 +endif::[] + +ifeval::["{file_output_type}" == "pdf"] +** 键:节点标签的键。点击输入自定义的键。有关节点标签的更多信息,请参阅《{ks_product_right}集群管理指南》的“节点”章节。 +endif::[] + +** 操作符:筛选条件的操作符。 + +*** 包含:键对应的值包含特定的字符串。 + +*** 不包含:键对应的值不包含特定的字符串。 + +*** 存在:节点标签中存在特定的键。 + +*** 不存在:节点标签中不存在特定的键。 + +** 值: 键对应的值必须包含的字符串。按 **Enter** 可设置多个字符串,键对应的值包含其中一个字条串即满足条件。 + +** 点击**添加**可同时创建多个标签。 + +** 在已添加的标签右侧点击image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18] 可删除标签。 + +* **自定义** + +通过自定义表达式来筛选符合条件的节点。有关表达式的更多信息,请参阅link:https://docs.tigera.io/calico/latest/reference/resources/ippool#node-selector[节点选择器]。 + +|IPIP 模式 + +|IPIP 模式属于 Overlay 模式之一,不能与 VXLAN 模式同时设置。若两者都设置为 Never,则使用 BGP 模式。 + +IPIP 模式: 在每个节点上创建一个 IP in IP 隧道来实现容器之间的通信。取值如下: + +** Always: 永远进行 IPIP 封装(默认)。 + +** CrossSubnet: 只在跨网段时才进行 IPIP 封装。 + +** Never: 从不进行 IPIP 封装。 + + +|VXLAN 模式 + +|VXLAN 模式属于 Overlay 模式之一,不能与 IPIP 模式同时设置。若两者都设置为 Never,则使用 BGP 模式。 + +VXLAN 模式:在每个节点上创建一个 VXLAN 隧道来实现容器之间的通信。取值如下: + +** Always: 永远进行 VXLAN 封装。 + +** CrossSubnet: 只在跨网段时才进行 VXLAN 封装。 + +** Never: 从不进行 VXLAN 封装。 +|=== + +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/02-view-a-pod-ip-pool-list.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/02-view-a-pod-ip-pool-list.adoc new file mode 100644 index 000000000..5475e75b2 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/02-view-a-pod-ip-pool-list.adoc @@ -0,0 +1,76 @@ +--- +title: "查看容器组 IP 池列表" +keywords: "Kubernetes, {ks_product}, 集群管理, 网络, 容器组 IP 池, 查看容器组 IP 池列表" +description: "介绍如何查看容器组 IP 池列表。" +weight: 02 +--- + +:ks_permission: **集群网络资源查看** +:ks_navigation: **网络 > 容器组 IP 池** + + +本节介绍如何查看容器组 IP 池列表。 + + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网络**扩展组件。 + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +* 容器组 IP 池列表提供以下信息: ++ +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|容器组 IP 池的名称。 + +|状态 +|容器组 IP 池的状态。 + +|网段 +|容器组 IP 池包含的网段。 + +|已用 IP 地址 +|容器组 IP 池中已经使用的 IP 地址数量和 IP 地址总数。 + +|IP 池块大小 +|IP 池用于分配 IP 的 block 的 CIDR 大小。 + +|Overlay 模式 +|容器之间的通信模式。支持 IPIP 模式和 VXLAN 模式。如果未设置,则使用 BGP 模式。 + +|NAT outgoing +|是否允许通过 NAT 方式跨 IP 池通信。 +|=== ++ +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +{ks_product_right}安装完成后系统会自动创建容器组 IP 池 **default-ipv4-ippool**。 + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + ++ +* 在列表上方点击搜索框并输入关键字,可搜索名称包含特定关键字的容器组 IP 池。 ++ +include::../../../../../_ks_components-en/oper-refreshListData.adoc[] ++ +include::../../../../../_ks_components-en/oper-customizeColumns.adoc[] + diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/03-view-pod-ip-pool-details.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/03-view-pod-ip-pool-details.adoc new file mode 100644 index 000000000..f69d2ca68 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/03-view-pod-ip-pool-details.adoc @@ -0,0 +1,88 @@ +--- +title: "查看容器组 IP 池详情" +keywords: "Kubernetes, {ks_product}, 集群管理, 网络, 容器组 IP 池, 查看容器组 IP 池详情" +description: "介绍如何查看容器组 IP 池详情。" +weight: 03 +--- + +:ks_permission: **集群网络资源查看** +:ks_navigation: **网络 > 容器组 IP 池** + + +本节介绍如何查看容器组 IP 池详情。 + + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网络**扩展组件。 + + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在容器组 IP 池列表中点击一个容器组 IP 池的名称打开其详情页面。 + +. 在容器组 IP 池详情页面左侧的**属性**区域查看容器组 IP 池的基本信息。 ++ +-- + +[%header,cols="2,5"] +|=== +|参数 |描述 + +|状态 +|容器组 IP 池的状态。 + +|网段 +|容器组 IP 池包含的网段。 + +|已用 IP 地址 +|已使用的 IP 地址数量。 + +|IP 池块大小 +|IP 池用于分配 IP 的 block 的 CIDR 大小。 + +|NAT outgoing +|是否允许通过 NAT 方式跨 IP 池通信。 + +|Overlay 模式 +|容器之间的通信模式。支持 IPIP 模式和 VXLAN 模式。 + +|掩码 +|容器组 IP 池对应网段的掩码位数。 + +|网络 +|容器组 IP 池对应网络的 IP 地址。 + +|起始 IP 地址/结束 IP 地址 +|容器组 IP 池包含的 IP 地址范围。 + +|创建时间 +|容器组 IP 池的创建时间。 + +|创建者 +|创建容器组 IP 池的用户。 +|=== +-- + +. 在容器组 IP 池详情页面右侧的**项目**页签,查看可以使用容器组 IP 池的项目名称、已使用 IP 地址数量和项目管理员。 + +. 在容器组 IP 池右侧的**容器组**页签,查看使用容器组 IP 池的全部容器组。 ++ +-- +include::../../../../_custom-en/clusterManagement/nodes/nodes-para-podList.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/04-assign-a-project-to-a-ip-pool.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/04-assign-a-project-to-a-ip-pool.adoc new file mode 100644 index 000000000..dfdfb8cb9 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/04-assign-a-project-to-a-ip-pool.adoc @@ -0,0 +1,46 @@ +--- +title: "将容器组 IP 池分配到项目" +keywords: "Kubernetes, {ks_product}, 集群管理, 网络, 容器组 IP 池, 禁止自动分配" +description: "介绍如何将容器组 IP 池分配到项目。" +weight: 04 +--- + +:ks_permission: **集群网络资源管理** +:ks_navigation: **网络 > 容器组 IP 池** + + +本节介绍如何将容器组 IP 池分配到项目。 + +若项目被分配到容器组 IP 池,在该项目中创建工作负载和任务时,若不指定容器组 IP 池,项目中的容器组会默认分配到该容器组 IP 池。 + +若项目未分配到容器组 IP 池,即项目未与任何容器组 IP 池绑定,在该项目中创建工作负载和任务时,若不指定容器组 IP 池,项目中的容器组将被分配到任一可用的容器组 IP 池。 + +一个 IP 池可以分配给多个项目,一个项目可以绑定多个 IP 池。 + + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网络**扩展组件。 + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + +. 在容器组 IP 池列表中点击一个容器组 IP 池的名称打开其详情页面。 + +. 在**项目**页签下点击**新增项目**,在下拉列表中选择一个项目,然后点击**确定**。 + +. 点击项目右侧的image:/images/ks-qkcp/zh/icons/trash-light.svg[trash,18,18],解除容器组 IP 池和该项目的绑定。点击右上角的**移除全部**,解除容器组 IP 池和所有已分配项目的绑定。 ++ +移除项目后,项目将不再受该 IP 池的资源分配限制,已经分配 IP 地址的项目容器组不受影响。 diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/05-edit-pod-ip-pool-information.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/05-edit-pod-ip-pool-information.adoc new file mode 100644 index 000000000..8004cbdc7 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/05-edit-pod-ip-pool-information.adoc @@ -0,0 +1,54 @@ +--- +title: "编辑容器组 IP 池信息" +keywords: "Kubernetes, {ks_product}, 集群管理, 网络, 容器组 IP 池, 编辑容器组 IP 池信息" +description: "介绍如何编辑容器组 IP 池信息。" +weight: 05 +--- + +:ks_permission: **集群网络资源管理** +:ks_navigation: **网络 > 容器组 IP 池** + + +本节介绍如何编辑容器组 IP 池信息。 + +您可以编辑容器组 IP 池的别名和描述。{ks_product_right}不支持编辑容器组 IP 池的名称。 + + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网络**扩展组件。 + + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要操作的容器组 IP 池右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑信息**。 + +. 在**编辑信息**对话框,设置容器组 IP 池的别名和描述,然后点击**确定**。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|别名 +|容器组 IP 池的别名。不同容器组 IP 池的别名可以相同。别名只能包含中文、字母、数字和连字符(-),不得以连字符(-)开头或结尾,最长 63 个字符。 + +|描述 +|容器组 IP 池的描述信息。描述可包含任意字符,最多包含 256 个字符。 +|=== +-- diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/06-edit-overlay-mode.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/06-edit-overlay-mode.adoc new file mode 100644 index 000000000..625b4a149 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/06-edit-overlay-mode.adoc @@ -0,0 +1,71 @@ +--- +title: "编辑 Overlay 模式" +keywords: "Kubernetes, {ks_product}, 集群管理, 网络, 容器组 IP 池, 编辑 Overlay 模式" +description: "介绍如何编辑 Overlay 模式。" +weight: 06 +--- + +:ks_permission: **集群网络资源管理** +:ks_navigation: **网络 > 容器组 IP 池** + + +本节介绍如何编辑 Overlay 模式。 + +Overlay 模式可以实现容器的跨主机互相通信,而无需对宿主机的物理网络进行改动。 + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网络**扩展组件。 + + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要操作的容器组 IP 池右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑 Overlay 模式**。 + +. 在**编辑 Overlay 模式**对话框,选择 IPIP 模式或 VXLAN 模式,然后点击**确定**。 ++ +-- +[%header,cols="1a,4a"] +|=== +|模式 |描述 + +|IPIP 模式 +|在每个节点上创建一个 IP in IP 隧道来实现容器之间的通信。取值如下: + +** **Always**: 永远进行 IPIP 封装(默认)。 + +** **CrossSubnet**: 只在跨网段时才进行 IPIP 封装。 + +** **Never**: 从不进行 IPIP 封装。 + +|VXLAN 模式 +|在每个节点上创建一个 VXLAN 隧道来实现容器之间的通信。取值如下: + +** **Always**: 永远进行 VXLAN 封装。 + +** **CrossSubnet**: 只在跨网段时才进行 VXLAN 封装。 + +** **Never**: 从不进行 VXLAN 封装。 +|=== +-- + +// Note +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +若两者都设置为 Never,则使用 BGP 模式。 + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/07-edit-yaml-for-a-pod-ip-pool.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/07-edit-yaml-for-a-pod-ip-pool.adoc new file mode 100644 index 000000000..858fc7514 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/07-edit-yaml-for-a-pod-ip-pool.adoc @@ -0,0 +1,50 @@ +--- +title: "编辑节点选择" +keywords: "Kubernetes, {ks_product}, 集群管理, 网络, 容器组 IP 池, 禁止自动分配" +description: "介绍如何设置容器组 IP 池的自动分配节点。" +weight: 07 +--- + +:ks_permission: **集群网络资源管理** +:ks_navigation: **网络 > 容器组 IP 池** + + +本节介绍如何编辑容器组 IP 池的自动分配节点,以便为容器组 IP 池自动匹配合适的节点。 + +创建容器组 IP 池时,默认其 IP 地址可分配给所有节点的容器组。您可以设置节点选择器,以限制符合特定条件的节点上的容器组才能使用该 IP 池的 IP 地址。 + + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网络**扩展组件。 + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要操作的容器组 IP 池右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑 yaml**。 + +. 在 **spec.nodeSelector** 参数下输入表达式,通过自定义表达式来筛选符合条件的节点。有关表达式的更多信息,请参阅link:https://docs.tigera.io/calico/latest/reference/resources/ippool#node-selector[节点选择器]。 + + +[.admon.attention,cols="a"] +|=== +|注意 + +| +* 容器组 IP 池的 CIDR 不得与节点的 CIDR 以及服务的 CIDR 重复。 +* 修改相关字段时,您必须明确操作后带来的影响,请谨慎操作。 +|=== diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/08-disable-and-enable-pod-ip-pool.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/08-disable-and-enable-pod-ip-pool.adoc new file mode 100644 index 000000000..f8761f186 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/08-disable-and-enable-pod-ip-pool.adoc @@ -0,0 +1,55 @@ +--- +title: "禁用和启用容器组 IP 池" +keywords: "Kubernetes, {ks_product}, 集群管理, 网络, 容器组 IP 池, 禁用和启用容器组 IP 池" +description: "介绍如何禁用和启用容器组 IP 池。" +weight: 08 +--- + +:ks_permission: **集群网络资源管理** +:ks_navigation: **网络 > 容器组 IP 池** + + +本节介绍如何禁用和启用容器组 IP 池。 + +容器组 IP 池禁用后将不会继续 IP 地址的分配,也不会影响已经分配 IP 地址的容器组的网络,但禁用容器组 IP 池会自动解除其绑定的项目。迁移容器组 IP 池时,新 IP 池可用地址数量不能少于当前 IP 池使用的 IP 地址。 + +//warning +[.admon.warning,cols="a"] +|=== +|警告 + +| +迁移完成后,将重启工作负载。请谨慎执行此操作。 + +|=== + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网络**扩展组件。 + + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ +. 在需要操作的容器组 IP 池右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**禁用**。 + +. 在**禁用容器组 IP 池**对话框,点击**确定**。 + +. 在已禁用的容器组 IP 池右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**启用**可启用容器组 IP 池。 + ++ +-- +若被禁用的容器组 IP 池中有已分配的 IP,勾选**迁移容器组 IP 池**,可将已经分配 IP 地址的容器组迁移至新的容器组 IP 池。 +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/09-delete-pod-ip-pools.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/09-delete-pod-ip-pools.adoc new file mode 100644 index 000000000..94e792ddc --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/09-delete-pod-ip-pools.adoc @@ -0,0 +1,67 @@ +--- +title: "删除容器组 IP 池" +keywords: "Kubernetes, {ks_product}, 集群管理, 网络, 容器组 IP 池, 删除容器组 IP 池信息" +description: "介绍如何删除容器组 IP 池。" +weight: 09 +--- + +:ks_permission: **集群网络资源管理** +:ks_navigation: **网络 > 容器组 IP 池** + + +本节介绍如何删除容器组 IP 池。 + +// Warning +include::../../../../../_ks_components-en/admonitions/warning.adoc[] + +容器组 IP 池删除后不能恢复,请谨慎执行此操作。 + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网络**扩展组件。 + + +include::../../../../_custom-en/clusterManagement/podIpPools/podIpPools-prer-notUsed.adoc[] + + +== 删除单个容器组 IP 池 + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要删除的容器组 IP 池右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**删除**。 + +. 在**删除容器组 IP 池**对话框,输入容器组 IP 池的名称,然后点击**确定**。 + + +== 批量删除容器组 IP 池 + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 选择需要删除的容器组 IP 池左侧的复选框,然后在容器组 IP 池列表上方点击**删除**。 + +. 在**批量删除容器组 IP 池**对话框,输入容器组 IP 池的名称,然后点击**确定**。 ++ +-- +include::../../../../_custom-en/note-separateNamesByComma.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/_index.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/_index.adoc new file mode 100644 index 000000000..13b1c7537 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/02-pod-ip-pools/_index.adoc @@ -0,0 +1,12 @@ +--- +title: "容器组 IP 池" +keywords: "Kubernetes, {ks_product}, 集群管理, 容器组 IP 池" +description: "介绍如何管理集群容器组 IP 池。" +weight: 02 +layout: "second" +--- + + +本节介绍如何管理集群的容器组 IP 池。 + +容器组 IP 池用于为容器组分配 IP 地址。每个容器组 IP 池包含一个可在集群内部访问的私网 IP 网段,您可以在创建工作负载或任务时指定容器组 IP 池。 diff --git a/content/en/docs/v4.1/11-use-extensions/11-network/_index.adoc b/content/en/docs/v4.1/11-use-extensions/11-network/_index.adoc new file mode 100644 index 000000000..2182ae336 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/11-network/_index.adoc @@ -0,0 +1,19 @@ +--- +title: "KubeSphere 网络" +keywords: "Kubernetes, {ks_product}, 集群管理, 项目管理, 网络, 网络策略, 容器组 IP 池, 网络隔离" +description: "介绍如何管理网络策略和容器组 IP 池。" +weight: 11 +layout: "second" +--- + + +本节介绍如何使用“KubeSphere 网络”扩展组件来管理集群的网络策略和容器组 IP 池,以及企业空间和项目的网络隔离配置。 + +“KubeSphere 网络”扩展组件包含网络策略和容器组 IP 池两个组件。使用该扩展组件,您可以控制集群和项目中容器组的访问和被访问权限;当创建工作负载或任务时,通过选择**容器组 IP 池**,为容器组分配 IP 地址,确保每个容器组都有一个唯一的 IP 地址。 + +安装“KubeSphere 网络”扩展组件后, + +- 集群左侧导航栏的**网络**菜单下将显⽰**网络策略**和**容器组 IP 池**选项; +- 企业空间左侧导航栏的**基本信息**页面将支持启用企业空间网络隔离; +- 项目左侧导航栏的**项目设置**菜单下将显⽰**网络隔离**选项; +- 创建工作负载或任务时,**高级设置**页签将显示**容器组 IP 池**选项。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/01-enable-a-project-gateway.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/01-enable-a-project-gateway.adoc new file mode 100644 index 000000000..921ebb5cb --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/01-enable-a-project-gateway.adoc @@ -0,0 +1,43 @@ +--- +title: "启用项目网关" +keywords: "Kubernetes, {ks_product}, 项目管理, 项目设置, 网关设置, 启用项目网关" +description: "介绍如何启用项目网关。" +weight: 01 +--- + + +:ks_permission: **项目网关管理** +:ks_navigation: **项目设置 > 网关设置** + + +本节介绍如何启用项目网关。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网关**扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在页面右侧点击**启用网关**。 + +. 在弹出的对话框,设置网关的参数,然后点击**确定**。 ++ +-- +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-para-enableGateway_v4.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/02-view-project-gateway-information.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/02-view-project-gateway-information.adoc new file mode 100644 index 000000000..fa41f0161 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/02-view-project-gateway-information.adoc @@ -0,0 +1,37 @@ +--- +title: "查看项目网关信息" +keywords: "Kubernetes, {ks_product}, 项目管理, 项目设置, 网关设置, 查看项目网关信息" +description: "介绍如何查看项目网关信息。" +weight: 02 +--- + +:ks_permission: **项目网关查看** +:ks_navigation: **项目设置 > 网关设置** + + +本节介绍如何查看项目网关信息。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网关**扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] ++ +-- +**网关设置**页面提供以下信息: + +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-para-gatewayCard.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/03-view-project-gateway-details.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/03-view-project-gateway-details.adoc new file mode 100644 index 000000000..e475c8817 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/03-view-project-gateway-details.adoc @@ -0,0 +1,36 @@ +--- +title: "查看项目网关详情" +keywords: "Kubernetes, {ks_product}, 项目管理, 项目设置, 网关设置, 查看项目网关详情" +description: "介绍如何查看项目网关详情。" +weight: 03 +--- + + +:ks_permission: **项目网关查看** +:ks_navigation: **项目设置 > 网关设置** + + +本节介绍如何查看项目网关详情。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网关**扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-oper-viewGatewayDetails.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/04-edit-project-gateway-settings.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/04-edit-project-gateway-settings.adoc new file mode 100644 index 000000000..00850dd0c --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/04-edit-project-gateway-settings.adoc @@ -0,0 +1,36 @@ +--- +title: "编辑项目网关设置" +keywords: "Kubernetes, {ks_product}, 项目管理, 项目设置, 网关设置, 编辑项目网关设置" +description: "介绍如何编辑项目网关设置。" +weight: 04 +--- + + +:ks_permission: **项目网关管理** +:ks_navigation: **项目设置 > 网关设置** + + +本节介绍如何编辑项目网关设置。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网关**扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-oper-editGatewaySettings_v4.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/05-disable-a-project-gateway.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/05-disable-a-project-gateway.adoc new file mode 100644 index 000000000..7fc07819c --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/05-disable-a-project-gateway.adoc @@ -0,0 +1,37 @@ +--- +title: "禁用项目网关" +keywords: "Kubernetes, {ks_product}, 项目管理, 项目设置, 网关设置, 禁用项目网关" +description: "介绍如何禁用项目网关。" +weight: 05 +--- + +:ks_permission: **项目网关管理** +:ks_navigation: **项目设置 > 网关设置** + + +本节介绍如何禁用项目网关。 + +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-warn-disableGateway.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网关**扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-oper-disableGateway.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/_index.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/_index.adoc new file mode 100644 index 000000000..2bb4fd936 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/01-project-gateway/_index.adoc @@ -0,0 +1,23 @@ +--- +title: "项目网关" +keywords: "Kubernetes, {ks_product}, 项目管理, 项目设置, 网关设置" +description: "介绍如何管理项目网关。" +weight: 01 +layout: "second" +--- + + + +本节介绍如何管理项目网关。 + +//note +[.admon.note,cols="a"] +|=== +|说明 + +| +项目网关启用后,除了在项目网关设置页面对其进行管理,还可以在集群和企业空间的网关设置页面查看、编辑和禁用项目网关。 +|=== + + + diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/01-enable-workspace-gateway.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/01-enable-workspace-gateway.adoc new file mode 100644 index 000000000..201f08e9f --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/01-enable-workspace-gateway.adoc @@ -0,0 +1,51 @@ +--- +title: "启用企业空间网关" +keywords: "Kubernetes, {ks_product}, 企业空间管理, 企业空间设置,启用企业空间网关" +description: "介绍如何启用企业空间网关。" +weight: 01 +--- + +:ks_permission: **企业空间网关管理** +:ks_navigation: **企业空间设置 > 网关设置** + + +本节介绍如何启用企业空间网关。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网关**扩展组件。 + +* {empty} +include::../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + + + + + +== Steps + +include::../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在页面右侧的**网关设置**页面,点击**启用网关**。 ++ +-- +// Note +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +不支持在企业空间的**网关设置**页面启用项目网关。如果您需要启用项目网关,请前往对应的项目。 + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + +. 在弹出的**启用网关**对话框,设置网关的参数,然后点击**确定**。 ++ +-- +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-para-enableGateway_v4.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/02-view-workspace-gateway-info.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/02-view-workspace-gateway-info.adoc new file mode 100644 index 000000000..65872f179 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/02-view-workspace-gateway-info.adoc @@ -0,0 +1,46 @@ +--- +title: "查看企业空间网关信息" +keywords: "Kubernetes, {ks_product}, 企业空间管理, 企业空间设置, 网关设置, 查看企业空间网关信息" +description: "介绍如何查看企业空间网关信息。" +weight: 02 +--- + + +:ks_permission: **企业空间网关查看** +:ks_navigation: **企业空间设置 > 网关设置** + + +本节介绍如何查看企业空间网关信息。 + +[.admon.note,cols="a"] +|=== +|说明 + +| +如果已启用集群网关,在企业空间的网关设置页面也可以查看集群网关的信息。 +|=== + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网关**扩展组件。 + +* {empty} +include::../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + + + + + +== Steps + +include::../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] ++ +-- +**网关设置**页面提供以下信息: + +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-para-gatewayCard.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/03-view-workspace-gateway-details.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/03-view-workspace-gateway-details.adoc new file mode 100644 index 000000000..c8621f835 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/03-view-workspace-gateway-details.adoc @@ -0,0 +1,36 @@ +--- +title: "查看企业空间网关详情" +keywords: "Kubernetes, {ks_product}, 企业空间管理, 企业空间设置, 网关设置, 查看企业空间网关详情" +description: "介绍如何查看企业空间网关详情。" +weight: 03 +--- + + +:ks_permission: **企业空间网关查看** +:ks_navigation: **企业空间设置 > 网关设置** + + +本节介绍如何查看企业空间网关详情。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网关**扩展组件。 + +* {empty} +include::../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + + + + +== Steps + +include::../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-oper-viewGatewayDetails_v4.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/04-edit-workspace-gateway-settings.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/04-edit-workspace-gateway-settings.adoc new file mode 100644 index 000000000..00294f30b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/04-edit-workspace-gateway-settings.adoc @@ -0,0 +1,36 @@ +--- +title: "编辑企业空间网关设置" +keywords: "Kubernetes, {ks_product}, 企业空间管理, 企业空间设置, 网关设置,编辑企业空间网关设置" +description: "介绍如何编辑企业空间网关设置。" +weight: 04 +--- + +:ks_permission: **企业空间网关管理** +:ks_navigation: **企业空间设置 > 网关设置** + + +本节介绍如何编辑企业空间网关设置。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网关**扩展组件。 + +* {empty} +include::../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + + + + + +== Steps + +include::../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-oper-editGatewaySettings_v4.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/05-disable-workspace-gateway.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/05-disable-workspace-gateway.adoc new file mode 100644 index 000000000..b27c45ca0 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/05-disable-workspace-gateway.adoc @@ -0,0 +1,38 @@ +--- +title: "禁用企业空间网关" +keywords: "Kubernetes, {ks_product}, 企业空间管理, 企业空间设置, 网关设置,禁用企业空间网关" +description: "介绍如何禁用企业空间网关。" +weight: 05 +--- + +:ks_permission: **企业空间网关管理** +:ks_navigation: **企业空间设置 > 网关设置** + + +本节介绍如何禁用企业空间网关。 + +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-warn-disableGateway.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网关**扩展组件。 + +* {empty} +include::../../../../_custom-en/workspaceManagement/workspaceManagement-prer-requiredPermission_v4.adoc[] + + + + + +== Steps + +include::../../../../_custom-en/workspaceManagement/workspaceManagement-oper-openWorkspacePage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-oper-disableGateway.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/_index.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/_index.adoc new file mode 100644 index 000000000..a1ad07f72 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/02-workspace-gateway/_index.adoc @@ -0,0 +1,20 @@ +--- +title: "企业空间网关" +keywords: "Kubernetes, {ks_product}, 网关设置, 企业空间,网关设置" +description: "介绍本节介绍如何设置企业空间网关。" +weight: 02 +layout: "second" +--- + + + +本节介绍如何管理企业空间网关。 + +//note +[.admon.note,cols="a"] +|=== +|说明 + +| +企业空间网关启用后,除了在企业空间网关设置页面对其进行管理,还可以在集群网关设置页面查看、编辑和禁用企业空间网关。 +|=== diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/01-enable-a-cluster-gateway.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/01-enable-a-cluster-gateway.adoc new file mode 100644 index 000000000..6abb48dd2 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/01-enable-a-cluster-gateway.adoc @@ -0,0 +1,51 @@ +--- +title: "启用集群网关" +keywords: "Kubernetes, {ks_product}, 集群管理, 集群设置, 网关设置, 启用集群网关" +description: "介绍如何启用集群网关。" +weight: 01 +--- + +// :ks_permission: **集群设置管理** +:ks_navigation: **集群设置 > 网关设置** + + +本节介绍如何启用集群网关。 + +[.admon.attention,cols="a"] +|=== +|注意 + +| +若未启用企业空间网关或项目网关,启用集群网关后,将不能再启用企业空间网关和项目网关。 +|=== + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网关**扩展组件。 + +// // * {empty} +// include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + +// + +* 您需要加入一个集群并在集群中具有 **cluster-admin** 角色。有关更多信息,请参阅link:../../../../07-cluster-management/09-cluster-settings/03-cluster-members/[集群成员]和link:../../../../07-cluster-management/09-cluster-settings/04-cluster-roles/[集群角色]。 + + +== Steps + +// include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + +. 以具有 **cluster-admin** 角色的用户登录{ks_product_left} Web 控制台。 ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在页面右侧点击**启用网关**。 + +. 在弹出的对话框,设置网关的参数,然后点击**确定**。 ++ +-- +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-para-enableGateway_v4.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/02-view-gateway-information.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/02-view-gateway-information.adoc new file mode 100644 index 000000000..df3eb21be --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/02-view-gateway-information.adoc @@ -0,0 +1,43 @@ +--- +title: "查看网关信息" +keywords: "Kubernetes, {ks_product}, 集群管理, 集群设置, 网关设置, 查看网关信息" +description: "介绍如何查看网关信息。" +weight: 02 +--- + +// :ks_permission: **集群设置查看** +:ks_navigation: **集群设置 > 网关设置** + + +本节介绍如何查看网关信息。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网关**扩展组件。 + +// // * {empty} +// include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + +// + +* 您需要加入一个集群并在集群中具有 **cluster-admin** 角色。有关更多信息,请参阅link:../../../../07-cluster-management/09-cluster-settings/03-cluster-members/[集群成员]和link:../../../../07-cluster-management/09-cluster-settings/04-cluster-roles/[集群角色]。 + + +== Steps + +// include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + +. 以具有 **cluster-admin** 角色的用户登录{ks_product_left} Web 控制台。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**网关设置**页面,点击**集群网关**,查看集群网关的信息。 ++ +-- +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-para-gatewayCard.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/03-view-cluster-gateway-details.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/03-view-cluster-gateway-details.adoc new file mode 100644 index 000000000..d0cc58ecd --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/03-view-cluster-gateway-details.adoc @@ -0,0 +1,39 @@ +--- +title: "查看集群网关详情" +keywords: "Kubernetes, {ks_product}, 集群管理, 集群设置, 网关设置, 查看集群网关详情" +description: "介绍如何查看网关信息。" +weight: 03 +--- + +:ks_permission: **集群设置查看** +:ks_navigation: **集群设置 > 网关设置** + + +本节介绍如何查看集群网关详情。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网关**扩展组件。 + +// // * {empty} +// include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + +// + +* 您需要加入一个集群并在集群中具有 **cluster-admin** 角色。有关更多信息,请参阅link:../../../../07-cluster-management/09-cluster-settings/03-cluster-members/[集群成员]和link:../../../../07-cluster-management/09-cluster-settings/04-cluster-roles/[集群角色]。 + + +== Steps + +// include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + +. 以具有 **cluster-admin** 角色的用户登录{ks_product_left} Web 控制台。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-oper-viewGatewayDetails_v4.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/04-edit-cluster-gateway-settings.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/04-edit-cluster-gateway-settings.adoc new file mode 100644 index 000000000..c9c89979d --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/04-edit-cluster-gateway-settings.adoc @@ -0,0 +1,38 @@ +--- +title: "编辑集群网关设置" +keywords: "Kubernetes, {ks_product}, 集群管理, 集群设置, 网关设置, 编辑集群网关设置" +description: "介绍如何编辑集群网关设置。" +weight: 04 +--- + +// :ks_permission: **集群设置管理** +:ks_navigation: **集群设置 > 网关设置** + + +本节介绍如何编辑集群网关设置。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网关**扩展组件。 + +// // * {empty} +// include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + +// + +* 您需要加入一个集群并在集群中具有 **cluster-admin** 角色。有关更多信息,请参阅link:../../../../07-cluster-management/09-cluster-settings/03-cluster-members/[集群成员]和link:../../../../07-cluster-management/09-cluster-settings/04-cluster-roles/[集群角色]。 + + +== Steps + +// include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] +. 以具有 **cluster-admin** 角色的用户登录{ks_product_left} Web 控制台。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-oper-editGatewaySettings_v4.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/05-disable-a-cluster-gateway.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/05-disable-a-cluster-gateway.adoc new file mode 100644 index 000000000..a04406d52 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/05-disable-a-cluster-gateway.adoc @@ -0,0 +1,41 @@ +--- +title: "禁用集群网关" +keywords: "Kubernetes, {ks_product}, 集群管理, 集群设置, 网关设置, 禁用集群网关" +description: "介绍如何禁用集群网关。" +weight: 05 +--- + + +// :ks_permission: **集群设置管理** +:ks_navigation: **集群设置 > 网关设置** + + +本节介绍如何禁用集群网关。 + +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-warn-disableGateway.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网关**扩展组件。 + +// // * {empty} +// include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + +// + +* 您需要加入一个集群并在集群中具有 **cluster-admin** 角色。有关更多信息,请参阅link:../../../../07-cluster-management/09-cluster-settings/03-cluster-members/[集群成员]和link:../../../../07-cluster-management/09-cluster-settings/04-cluster-roles/[集群角色]。 + + +== Steps + +// include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] +. 以具有 **cluster-admin** 角色的用户登录{ks_product_left} Web 控制台。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-oper-disableGateway.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/07-issue-no-gateway-log-in-member.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/07-issue-no-gateway-log-in-member.adoc new file mode 100644 index 000000000..5e27a7cef --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/07-issue-no-gateway-log-in-member.adoc @@ -0,0 +1,46 @@ +--- +title: "附录:member 集群网关日志无数据的解决办法" +description: "介绍如何处理 member 集群的网关日志无数据的问题。" +weight: 07 +--- + +若 member 集群的“集群网关”详情页中,“网关日志”页签不显示数据,可采用以下方法解决。 + +. 启用 host 集群上 whizard-telemetry-apiserver 服务的 NodePort 访问模式。 + +.. 在 host 集群的**应用负载**菜单下,点击**服务**进入服务页面。 + +.. 搜索服务 `whizard-telemetry-apiserver`,点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18] > **编辑外部访问**。 + +.. 在**编辑外部访问**对话框,选择 NodePort,然后点击**确定**。 + +. 修改 KubeSphere 网关的扩展组件配置,将 `backend.config.gateway.logSearchEndpoint` 设置为 host 集群上 whizard-telemetry-apiserver 服务的访问地址。 ++ +[,yaml] +---- +backend: + enabled: true + config: + gateway: + namespace: kubesphere-controls-system + valuesOverride: + controller: + image: + registry: "" + image: kubesphereio/nginx-ingress-controller + tag: "v1.4.0" + pullPolicy: IfNotPresent + digest: "" + exposeNodeLabelKey: "node-role.kubernetes.io/control-plane" + versionConstraint: ">= 4.3.0, < 4.5.0" + logSearchEndpoint: "http://whizard-telemetry-apiserver.extension-whizard-telemetry.svc:9090" # 替换为 http://: +---- + +. 在 member 集群上,重启网关 `gateway-agent-backend-apiserver`。 ++ +[,bash] +---- +kubectl -n extension-gateway rollout restart deploy gateway-agent-backend-apiserver +---- + +. 刷新 member 集群的**网关日志**页签,即可看到网关日志数据。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/_index.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/_index.adoc new file mode 100644 index 000000000..d1078c90a --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/03-cluster-gateway/_index.adoc @@ -0,0 +1,21 @@ +--- +title: "集群网关" +keywords: "Kubernetes, {ks_product}, 集群管理, 集群设置, 网关设置" +description: "介绍如何管理集群网关。" +weight: 03 +layout: "second" +--- + + + +本节介绍如何管理集群网关。 + +//note +[.admon.note,cols="a"] +|=== +|说明 + +| +若已启用企业空间网关或项目网关,可在集群的网关设置页面查看、编辑和禁用企业空间网关或项目网关。 +|=== + diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/01-create-a-route.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/01-create-a-route.adoc new file mode 100644 index 000000000..1b4543547 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/01-create-a-route.adoc @@ -0,0 +1,41 @@ +--- +title: "创建应用路由" +keywords: "Kubernetes, {ks_product}, 项目管理, 应用负载, 应用路由, 创建应用路由" +description: "介绍如何创建应用路由。" +weight: 01 +--- + +:ks_permission: **应用负载管理** +:ks_navigation: **应用负载 > 应用路由** + + +include::../../../../_custom-en/clusterManagement/routes/routes-desc-createARoute.adoc[] + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + +* 如需创建支持 HTTPS 协议的应用路由,您需要创建 **TLS 信息**类型的保密字典,保密字典中必须包含 Base64 编码的证书和私钥。 + +* 应用路由所属的项目中存在至少一个服务。 + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/routes/routes-oper-createARoute_v4.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/02-view-a-route-list.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/02-view-a-route-list.adoc new file mode 100644 index 000000000..d0383531d --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/02-view-a-route-list.adoc @@ -0,0 +1,41 @@ +--- +title: "查看应用路由列表" +keywords: "Kubernetes, {ks_product}, 项目管理, 应用负载, 应用路由, 查看应用路由列表" +description: "介绍如何查看应用路由列表。" +weight: 02 +--- + +:ks_permission: **应用负载查看** +:ks_navigation: **应用负载 > 应用路由** + + +include::../../../../_custom-en/clusterManagement/routes/routes-desc-viewARouteList.adoc[] + + +== Prerequisites + + + +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] ++ +==== +include::../../../../_custom-en/clusterManagement/routes/routes-para-routeList.adoc[] + +include::../../../../_custom-en/clusterManagement/routes/routes-oper-searchForRoutes.adoc[] + +include::../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/03-view-route-details.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/03-view-route-details.adoc new file mode 100644 index 000000000..2e6fbf435 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/03-view-route-details.adoc @@ -0,0 +1,39 @@ +--- +title: "查看应用路由详情" +keywords: "Kubernetes, {ks_product}, 项目管理, 应用负载, 应用路由, 查看应用路由详情" +description: "介绍如何查看应用路由详情。" +weight: 03 +--- + +:ks_permission: **应用负载查看** +:ks_navigation: **应用负载 > 应用路由** + + +include::../../../../_custom-en/clusterManagement/routes/routes-desc-viewRouteDetails.adoc[] + + +== Prerequisites + + + +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/routes/routes-oper-openDetailsPage.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/routes/routes-oper-viewRouteDetails.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/04-access-a-backend-service-of-a-route.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/04-access-a-backend-service-of-a-route.adoc new file mode 100644 index 000000000..b50bf0f2a --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/04-access-a-backend-service-of-a-route.adoc @@ -0,0 +1,41 @@ +--- +title: "访问应用路由的后端服务" +keywords: "Kubernetes, {ks_product}, 项目管理, 应用负载, 应用路由, 访问应用路由的后端服务" +description: "介绍如何访问应用路由的后端服务。" +weight: 04 +--- + +:ks_permission: **应用负载查看** +:ks_navigation: **应用负载 > 应用路由** + + +include::../../../../_custom-en/clusterManagement/routes/routes-desc-accessABackendServiceOfARoute.adoc[] + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 网关**扩展组件,然后启用集群网关或项目网关。有关更多信息,请参阅 link:../../../../11-use-extensions/12-gateway[KubeSphere 网关]。 + +include::../../../../_custom-en/clusterManagement/routes/routes-prer-accessABackendServiceOfARoute.adoc[] + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/routes/routes-oper-openDetailsPage.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/routes/routes-oper-accessABackendServiceOfARoute.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/05-edit-route-information.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/05-edit-route-information.adoc new file mode 100644 index 000000000..6a3963291 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/05-edit-route-information.adoc @@ -0,0 +1,35 @@ +--- +title: "编辑应用路由信息" +keywords: "Kubernetes, {ks_product}, 项目管理, 应用负载, 应用路由, 编辑应用路由信息" +description: "介绍如何编辑应用路由信息。" +weight: 05 +--- + +:ks_permission: **应用负载管理** +:ks_navigation: **应用负载 > 应用路由** + + +include::../../../../_custom-en/clusterManagement/routes/routes-desc-editRouteInformation.adoc[] + + +== Prerequisites + + + +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/routes/routes-oper-editRouteInformation.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/06-edit-routing-rules.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/06-edit-routing-rules.adoc new file mode 100644 index 000000000..1fe37dde5 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/06-edit-routing-rules.adoc @@ -0,0 +1,35 @@ +--- +title: "编辑路由规则" +keywords: "Kubernetes, {ks_product}, 项目管理, 应用负载, 应用路由, 编辑路由规则" +description: "介绍如何编辑路由规则。" +weight: 06 +--- + +:ks_permission: **应用负载管理** +:ks_navigation: **应用负载 > 应用路由** + + +include::../../../../_custom-en/clusterManagement/routes/routes-desc-editingRutingRules.adoc[] + + +== Prerequisites + + + +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/routes/routes-oper-editRoutingRules.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/07-edit-route-annotations.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/07-edit-route-annotations.adoc new file mode 100644 index 000000000..321f5f5d3 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/07-edit-route-annotations.adoc @@ -0,0 +1,35 @@ +--- +title: "编辑应用路由注解" +keywords: "Kubernetes, {ks_product}, 项目管理, 应用负载, 应用路由, 编辑应用路由注解" +description: "介绍如何应用路由注解。" +weight: 07 +--- + +:ks_permission: **应用负载管理** +:ks_navigation: **应用负载 > 应用路由** + + +include::../../../../_custom-en/clusterManagement/routes/routes-desc-editRouteAnnotations.adoc[] + + +== Prerequisites + + + +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/routes/routes-oper-editRouteAnnotations.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/08-delete-routes.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/08-delete-routes.adoc new file mode 100644 index 000000000..d7deb3a65 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/08-delete-routes.adoc @@ -0,0 +1,48 @@ +--- +title: "删除应用路由" +keywords: "Kubernetes, {ks_product}, 项目管理, 应用负载, 应用路由, 删除应用路由" +description: "介绍如何删除应用路由。" +weight: 08 +--- + +:ks_permission: **应用负载管理** +:ks_navigation: **应用负载 > 应用路由** + + +include::../../../../_custom-en/clusterManagement/routes/routes-desc-deleteMultipleRoutes.adoc[] + + +== Prerequisites + + + +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + + + +== 删除单个应用路由 + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/routes/routes-oper-deleteASingleRoute.adoc[] + + +== 批量删除应用路由 + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/routes/routes-oper-deleteRoutes.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/_index.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/_index.adoc new file mode 100644 index 000000000..76571fd1a --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/05-routes/_index.adoc @@ -0,0 +1,11 @@ +--- +title: "应用路由" +keywords: "Kubernetes, {ks_product}, 项目管理, 应用负载, 应用路由" +description: "介绍如何管理应用路由。" +weight: 05 +layout: "second" +--- + + + +include::../../../../_custom-en/clusterManagement/routes/routes-desc-routes.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/12-gateway/_index.adoc b/content/en/docs/v4.1/11-use-extensions/12-gateway/_index.adoc new file mode 100644 index 000000000..2550db2b1 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/12-gateway/_index.adoc @@ -0,0 +1,38 @@ +--- +title: "KubeSphere 网关" +description: "介绍如何使用“KubeSphere 网关”扩展组件。" +weight: 12 +layout: "second" +--- + +本节介绍如何使用“KubeSphere 网关”扩展组件,启用和管理集群、企业空间和项目的网关,以及管理集群和项目的应用路由。 + +include::../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-desc-gateway.adoc[] + +{ks_product_right}对每个集群提供一个集群网关,对集群中每个企业空间提供一个企业空间网关,并且对企业空间中每个项目提供一个项目网关,分别用于为整个集群、单个企业空间和单个项目中的服务提供反向代理。 + +安装“KubeSphere 网关”组件后, + +* 集群左侧导航栏的**集群设置**菜单下将显⽰**网关设置**选项; +* 企业空间左侧导航栏的**企业空间设置**菜单下将显⽰**网关设置**选项; +* 项目左侧导航栏的**项目设置**菜单下将显⽰**网关设置**选项。 +* 集群和项目下才能创建和管理应用路由。 + +[.admon.tip,cols="a"] +|=== +|提示 + +| +启用集群网关、企业空间网关、或项目网关后,在集群或项目的**应用负载 > 应用路由**菜单下创建应用路由时,可在**高级设置**页签选择对应网关的 IngressClassName。 +|=== + + +[.admon.note,cols="a"] +|=== +|说明 + +| +* 如需使用链路追踪功能,{ks_product_right}平台需要安装并启用 **KubeSphere 服务网格**扩展组件。 +* 如需使用网关监控功能,{ks_product_right}平台需要安装并启用 **WhizardTelemetry 监控**扩展组件。 +* 如需使用网关日志搜索功能,{ks_product_right}平台需要安装并启用 **WhizardTelemetry 日志**扩展组件。 +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/13-ingress-utils/01-add-a-domain.adoc b/content/en/docs/v4.1/11-use-extensions/13-ingress-utils/01-add-a-domain.adoc new file mode 100644 index 000000000..4faa132b1 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/13-ingress-utils/01-add-a-domain.adoc @@ -0,0 +1,64 @@ +--- +title: "添加域名重用校验" +description: "介绍如何添加域名重用校验。" +weight: 01 +--- + +:ks_navigation: **应用负载 > 应用路由工具** + + +本节介绍如何在应用路由工具页面添加域名,以便在创建或编辑应用路由时对域名进行唯一性校验,确保该域名没有被其他项目使用。 + +// 在{ks_product_both}平台上进行以下操作时,支持域名唯一性校验: + +// * 集群 >应用负载 >应用路由 > 创建/编辑路由规则 +// * 项目 > 应用负载 >应用路由 > 创建/编辑路由规则 +// * 项目 > 服务网格 > 自制应用 > 添加应用路由 > 创建/编辑路由规则 +// * 联邦项目 > 应用负载 >应用路由 > 创建/编辑路由规则 +// * 联邦项目 >应用负载 >自制应用 > 创建自制应用 > 创建/编辑路由规则 + +[.admon.note,cols="a"] +|=== +|说明 + +|“域名重用校验”仅对当前集群生效,且不作用于之前已存在的应用路由。 +|=== + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 应用路由工具**扩展组件。 + +* 您需要在{ks_product_both}平台具有 **cluster-admin** 角色。 + + +== Steps + +. 以具有 **cluster-admin** 角色的用户登录{ks_product_left} Web 控制台并进入您的集群。 + ++ + +include::../../../../_ks_components-en/oper-navigate.adoc[] + +. 在页面点击**添加域名**。 + +. 在**添加域名**对话框,设置域名信息。 ++ +-- + +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|域名的名称。名称只能包含小写字母、数字和连字符(-),必须以小写字母或数字开头和结尾,最长 63 个字符。 + +|域名 +|域名地址,支持使用通配符进行匹配。 + +通配符 * 标识匹配所有,但只匹配一个层级的子域名。即:*.qingcloud.com 标识匹配后缀为 .qingcloud.com 的所有域名,但不匹配 *.xxx.qingcloud.com。 + +|描述 +|域名的描述。描述可包含任意字符,最长 256 个字符。 +|=== +-- diff --git a/content/en/docs/v4.1/11-use-extensions/13-ingress-utils/02-view-a-domain-list.adoc b/content/en/docs/v4.1/11-use-extensions/13-ingress-utils/02-view-a-domain-list.adoc new file mode 100644 index 000000000..faabd59f0 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/13-ingress-utils/02-view-a-domain-list.adoc @@ -0,0 +1,52 @@ +--- +title: "查看域名列表" +description: "介绍如何查看域名列表。" +weight: 02 +--- + +:ks_navigation: **应用负载 > 应用路由工具** + + +本节介绍如何查看已启用“域名重用校验”的域名列表。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 应用路由工具**扩展组件。 + +* 您需要在{ks_product_both}平台具有 **cluster-viewer** 角色。 + +== Steps + +. 登录{ks_product_left} Web 控制台并进入您的集群。 + ++ + +include::../../../../_ks_components-en/oper-navigate.adoc[] + ++ +==== +* 域名列表提供以下信息: ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|域名的名称和描述。 + +|域名 +|域名地址,支持使用通配符进行匹配。 +|=== +-- + +* 在列表上方点击搜索框并设置搜索条件,可按名称或域名搜索。名称支持模糊查询,域名仅支持等值查询,不支持模糊查询。 + +include::../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== + + + diff --git a/content/en/docs/v4.1/11-use-extensions/13-ingress-utils/03-edit-domain-information.adoc b/content/en/docs/v4.1/11-use-extensions/13-ingress-utils/03-edit-domain-information.adoc new file mode 100644 index 000000000..d9fc9dcdf --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/13-ingress-utils/03-edit-domain-information.adoc @@ -0,0 +1,32 @@ +--- +title: "编辑域名信息" +description: "介绍如何编辑域名信息。" +weight: 03 +--- + +:ks_navigation: **应用负载 > 应用路由工具** + + +本节介绍如何编辑域名信息。 + +您可以编辑域名的描述。{ks_product_right}不支持编辑已添加域名的名称和域名。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 应用路由工具**扩展组件。 + +* 您需要在{ks_product_both}平台具有 **cluster-admin** 角色。 + + +== Steps + +. 以具有 **cluster-admin** 角色的用户登录{ks_product_left} Web 控制台并进入您的集群。 + ++ + +include::../../../../_ks_components-en/oper-navigate.adoc[] + +. 在需要操作的域名右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑信息**。 + +. 在**编辑信息**对话框,设置域名的描述,然后点击**确定**。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/13-ingress-utils/06-delete-domains.adoc b/content/en/docs/v4.1/11-use-extensions/13-ingress-utils/06-delete-domains.adoc new file mode 100644 index 000000000..d08be59eb --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/13-ingress-utils/06-delete-domains.adoc @@ -0,0 +1,47 @@ +--- +title: "删除域名重用校验" +description: "介绍如何删除域名重用校验。" +weight: 04 +--- + +:ks_navigation: **应用负载 > 应用路由工具** + + +本节介绍如何删除域名,以停止对域名进行重用校验。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 应用路由工具**扩展组件。 + +* 您需要在{ks_product_both}平台具有 **cluster-admin** 角色。 + + +== 删除单个域名 + +. 以具有 **cluster-admin** 角色的用户登录{ks_product_left} Web 控制台并进入您的集群。 + ++ + +include::../../../../_ks_components-en/oper-navigate.adoc[] + +. 在需要删除的域名右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**删除**。 + +. 在**删除域名**对话框,输入域名的名称,然后点击**确定**。 + + +== 批量删除域名 + +. 以具有 **cluster-admin** 角色的用户登录{ks_product_left} Web 控制台并进入您的集群。 + ++ + +include::../../../../_ks_components-en/oper-navigate.adoc[] + +. 选择需要删除的域名左侧的复选框,然后在域名列表上方点击**删除**。 + +. 在**批量删除域名**对话框,输入域名的名称,然后点击**确定**。 ++ +-- +include::../../../_custom-en/note-separateNamesByComma.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/13-ingress-utils/_index.adoc b/content/en/docs/v4.1/11-use-extensions/13-ingress-utils/_index.adoc new file mode 100644 index 000000000..c014ace85 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/13-ingress-utils/_index.adoc @@ -0,0 +1,19 @@ +--- +title: "KubeSphere 应用路由工具" +keywords: "Kubernetes, {ks_product}, 应用路由" +description: "介绍如何使用 KubeSphere 应用路由工具。" +weight: 13 +layout: "second" +draft: true +--- + + +本节介绍如何使用“KubeSphere 应用路由工具”扩展组件。安装后,仅{ks_product_both}平台管理员和已安装该组件的集群的管理员可以使用该扩展组件。 + +“KubeSphere 应用路由工具”为应用路由提供多项实用扩展能力,如域名重用校验,旨在增强企业对应用路由的全局管理能力。 + +添加需要被限制重用的域名后,企业空间用户将无法在不同项目中使用相同的域名来创建应用路由,以避免应用路由间的相互影响,从而防止生产业务出现错误。 + +安装“KubeSphere 应用路由工具”扩展组件前,必须先安装"KubeSphere 网关"扩展组件。 + +安装“KubeSphere 应用路由工具”扩展组件后,集群左侧导航栏的**应用负载**菜单下将显⽰**应用路由工具**选项。 diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/01-create-a-volume-snapshot.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/01-create-a-volume-snapshot.adoc new file mode 100644 index 000000000..f7d23dfb4 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/01-create-a-volume-snapshot.adoc @@ -0,0 +1,64 @@ +--- +title: "创建卷快照" +keywords: "Kubernetes, {ks_product}, 集群管理, 存储, 卷快照, 创建卷快照" +description: "介绍如何创建卷快照。" +weight: 01 +--- + +:ks_permission: **卷快照管理** +:ks_navigation: **存储 > 卷快照** + + +include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-desc-createAVolumeSnapshot.adoc[] + +include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-para-volumeSnapshot.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 存储**扩展组件。 + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + + +include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-prer-persistentVolumeCreated.adoc[] + +// // * 请确保后端存储系统支持卷快照功能,并已在持久卷声明对应的存储类上启用卷快照功能。有关更多信息,请参阅xref:07-cluster-management/08-storage/02-storage-classes/05-enable-and-disable-volume-operations.adoc[启用和禁用卷操作]。 + +// + +* 请确保后端存储系统支持卷快照功能,并已在持久卷声明对应的存储类上启用卷快照功能。操作方法:存储类 > 更多操作 > 设置卷操作 > 启用卷快照创建。 + +== 方法 1:卷快照 > 创建卷快照 + +在集群中,可在**卷快照**菜单下直接为持久卷声明创建卷快照。 + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/volumeSnapshots/volumeSnapshots-oper-createAVolumeSnapshot.adoc[] + +== 方法 2:持久卷声明 > 创建卷快照 + +在集群或项目中,可在**持久卷声明**菜单下为持久卷声明创建卷快照。 + +. 以具有**持久卷声明管理**权限以及pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 + +. 在左侧导航栏选择**存储 > 持久卷声明**。 + +. 在持久卷声明列表中点击一个持久卷声明的名称打开其详情页面。 ++ +include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-oper-createAVolumeSnapshot.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/02-view-a-volume-snapshot-list.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/02-view-a-volume-snapshot-list.adoc new file mode 100644 index 000000000..89bfe83d7 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/02-view-a-volume-snapshot-list.adoc @@ -0,0 +1,44 @@ +--- +title: "查看卷快照列表" +keywords: "Kubernetes, {ks_product}, 集群管理, 存储, 卷快照, 查看卷快照列表" +description: "介绍如何查看卷快照。" +weight: 02 +--- + + +:ks_permission: **卷快照查看** +:ks_navigation: **存储 > 卷快照** + + +include::../../../../_custom-en/clusterManagement/volumeSnapshots/volumeSnapshots-desc-viewAVolumeSnapshotList.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 存储**扩展组件。 + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] ++ +==== +include::../../../../_custom-en/clusterManagement/volumeSnapshots/volumeSnapshots-para-volumeSnapshotList_v4.adoc[] + +* 在列表左上角的下拉列表中选择一个项目,可查看特定项目中的卷快照。 + +include::../../../../_custom-en/clusterManagement/volumeSnapshots/volumeSnapshots-oper-searchForVolumeSnapshots.adoc[] + +include::../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/03-view-volume-snapshot-details.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/03-view-volume-snapshot-details.adoc new file mode 100644 index 000000000..f9a6ce223 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/03-view-volume-snapshot-details.adoc @@ -0,0 +1,40 @@ +--- +title: "查看卷快照详情" +keywords: "Kubernetes, {ks_product}, 集群管理, 存储, 卷快照, 查看卷快照详情" +description: "介绍如何查看卷快照的详情。" +weight: 03 +--- + + +:ks_permission: **卷快照查看** +:ks_navigation: **存储 > 卷快照** + + +include::../../../../_custom-en/clusterManagement/volumeSnapshots/volumeSnapshots-desc-viewVolumeSnapshotDetails.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 存储**扩展组件。 + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/volumeSnapshots/volumeSnapshots-oper-openDetailsPage.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/volumeSnapshots/volumeSnapshots-oper-viewVolumeSnapshotDetails_v4.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/04-create-a-persistent-volume-from-a-volume-snapshot.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/04-create-a-persistent-volume-from-a-volume-snapshot.adoc new file mode 100644 index 000000000..bd3189c52 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/04-create-a-persistent-volume-from-a-volume-snapshot.adoc @@ -0,0 +1,40 @@ +--- +title: "使用卷快照创建持久卷" +keywords: "Kubernetes, {ks_product}, 集群管理, 存储, 卷快照, 创建持久卷声明" +description: "介绍如何使用卷快照创建持久卷。" +weight: 04 +--- + + +:ks_permission: **卷快照管理** +:ks_navigation: **存储 > 卷快照** + + +include::../../../../_custom-en/clusterManagement/volumeSnapshots/volumeSnapshots-desc-createAPersistentVolumeFromAVolumeSnapshot.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 存储**扩展组件。 + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + + +== Steps + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/volumeSnapshots/volumeSnapshots-oper-openDetailsPage.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/volumeSnapshots/volumeSnapshots-oper-createAPersistentVolumeFromAVolumeSnapshot.adoc[] \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/05-delete-volume-snapshots.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/05-delete-volume-snapshots.adoc new file mode 100644 index 000000000..a7b7dc484 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/05-delete-volume-snapshots.adoc @@ -0,0 +1,50 @@ +--- +title: "删除卷快照" +keywords: "Kubernetes, {ks_product}, 集群管理, 存储, 卷快照, 删除卷快照" +description: "介绍如何删除卷快照。" +weight: 05 +--- + + +:ks_permission: **卷快照管理** +:ks_navigation: **存储 > 卷快照** + + +include::../../../../_custom-en/clusterManagement/volumeSnapshots/volumeSnapshots-desc-deleteVolumeSnapshots.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 存储**扩展组件。 + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_clusterandproject.adoc[] + + + + + +== 删除单个卷快照 + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/volumeSnapshots/volumeSnapshots-oper-deleteASingleVolumeSnapshot.adoc[] + + +== 批量删除卷快照 + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/volumeSnapshots/volumeSnapshots-oper-deleteMultipleVolumeSnapshots.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/06-view-a-volume-snapshot-content-list.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/06-view-a-volume-snapshot-content-list.adoc new file mode 100644 index 000000000..7eb0decd4 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/06-view-a-volume-snapshot-content-list.adoc @@ -0,0 +1,79 @@ +--- +title: "查看卷快照内容列表" +keywords: "Kubernetes, {ks_product}, 集群管理, 存储, 卷快照, 查看卷快照列表" +description: "介绍如何查看卷快照内容列表。" +weight: 06 +--- + + +:ks_permission: **卷快照内容查看** +:ks_navigation: **存储 > 卷快照** + + +本节介绍如何查看卷快照内容列表。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 存储**扩展组件。 + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/volumeSnapshotContents/volumeSnapshotContents-oper-openListPage.adoc[] + ++ +==== +* 卷快照列表提供以下信息: ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|卷快照内容的名称。 + +|状态 +| +include::../../../../_custom-en/clusterManagement/volumeSnapshotContents/volumeSnapshotContents-para-status.adoc[] + +|容量 +| +include::../../../../_custom-en/clusterManagement/volumeSnapshotContents/volumeSnapshotContents-para-capacity.adoc[] + +|卷快照类 +| +include::../../../../_custom-en/clusterManagement/volumeSnapshotContents/volumeSnapshotContents-para-volumeSnapshotClass.adoc[] + +|删除策略 +| +include::../../../../_custom-en/clusterManagement/volumeSnapshotContents/volumeSnapshotContents-para-deletionPolicy.adoc[] + +|创建时间 +|卷快照内容的创建时间。 +|=== +-- + +* 在列表左上角的下拉列表中选择一个项目,可查看特定项目中的卷快照。 + +* 在列表上方点击搜索框并设置搜索条件,可按名称或状态搜索卷快照内容。 + +include::../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/07-view-volume-snapshot-content-details.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/07-view-volume-snapshot-content-details.adoc new file mode 100644 index 000000000..1201b5a48 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/07-view-volume-snapshot-content-details.adoc @@ -0,0 +1,83 @@ +--- +title: "查看卷快照内容详情" +keywords: "Kubernetes, {ks_product}, 集群管理, 卷快照内容, 查看卷快照内容详情" +description: "介绍如何查看卷快照内容详情。" +weight: 07 +--- + +:ks_permission: **卷快照内容查看** +:ks_navigation: **存储 > 卷快照** + + +本节介绍如何查看卷快照内容详情。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 存储**扩展组件。 + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在**卷快照**页面点击**卷快照内容**,然后点击一个卷快照内容的名称打开其详情页面。 + +. 在卷快照内容详情页面左侧的**属性**区域查看卷快照的资源属性。 ++ +-- + +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|状态 +| +include::../../../../_custom-en/clusterManagement/volumeSnapshotContents/volumeSnapshotContents-para-status.adoc[] + +|容量 +| +include::../../../../_custom-en/clusterManagement/volumeSnapshotContents/volumeSnapshotContents-para-capacity.adoc[] + +|卷快照类 +| +include::../../../../_custom-en/clusterManagement/volumeSnapshotContents/volumeSnapshotContents-para-volumeSnapshotClass.adoc[] + +|快照句柄 +|卷快照内容在后端存储系统的唯一标识符。 + +|供应者 +|卷快照类对应的存储插件。 + +|删除策略 +| +include::../../../../_custom-en/clusterManagement/volumeSnapshotContents/volumeSnapshotContents-para-deletionPolicy.adoc[] + +|创建时间 +|卷快照内容的创建时间。 + +|创建者 +|创建卷快照内容的用户。 +|=== +-- + +. 在持久卷详情页面右侧的**资源状态**页签查看卷快照内容对应的卷快照名称和卷快照类。 + +. 在持久卷详情页面右侧点击**元数据**页签查看卷快照内容的标签和注解。 + +. 在持久卷详情页面右侧点击**事件**页签查看卷快照内容的事件。 ++ +-- +include::../../../../_custom-en/clusterManagement/clusterManagement-para-eventsTab.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/08-edit-volume-snapshot-content-information.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/08-edit-volume-snapshot-content-information.adoc new file mode 100644 index 000000000..bfe8e2e39 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/08-edit-volume-snapshot-content-information.adoc @@ -0,0 +1,56 @@ +--- +title: "编辑卷快照内容信息" +keywords: "Kubernetes, {ks_product}, 集群管理, 卷快照内容" +description: "介绍如何编辑卷快照内容的信息。" +weight: 08 +--- + +:ks_permission: **卷快照内容管理** +:ks_navigation: **存储 > 卷快照** + + +本节介绍如何编辑卷快照内容的信息。 + +您可以编辑卷快照内容的别名和描述。{ks_product_right}不支持编辑卷快照内容的名称。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 存储**扩展组件。 + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/volumeSnapshotContents/volumeSnapshotContents-oper-openListPage.adoc[] + ++ + +. 在需要操作的卷快照内容右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑信息**。 + +. 在**编辑信息**对话框,设置卷快照内容的别名和描述,然后点击**确定**。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|别名 +|卷快照内容的别名。不同卷快照内容的别名可以相同。别名只能包含中文、字母、数字和连字符(-),不得以连字符(-)开头或结尾,最长 63 个字符。 + +|描述 +|卷快照内容的描述信息。描述可包含任意字符,最多包含 256 个字符。 +|=== +-- diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/09-delete-a-volume-snapshot-content.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/09-delete-a-volume-snapshot-content.adoc new file mode 100644 index 000000000..31d67cfc7 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/09-delete-a-volume-snapshot-content.adoc @@ -0,0 +1,81 @@ +--- +title: "删除卷快照内容" +keywords: "Kubernetes, {ks_product}, 集群管理, 卷快照内容, 删除卷快照内容" +description: "介绍如何删除卷快照内容。" +weight: 09 +--- + + +:ks_permission: **卷快照内容管理** +:ks_navigation: **存储 > 卷快照** + + +本节介绍如何删除卷快照内容。 + +[.admon.note,cols="a"] +|=== +|说明 + +| +当卷快照和卷快照内容绑定的时候,卷快照内容不允许删除。若要删除卷快照内容,必须首先删除卷快照。卷快照被删除后,系统将根据卷快照内容的删除策略,决定是否自动删除卷快照内容。 +|=== + +// Warning +include::../../../../../_ks_components-en/admonitions/warning.adoc[] + +卷快照内容删除后无法恢复,并且后端存储系统中保存的快照数据也将被删除,请谨慎执行此操作以避免快照数据丢失。 + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 存储**扩展组件。 + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + + + +== 删除单个卷快照内容 + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/volumeSnapshotContents/volumeSnapshotContents-oper-openListPage.adoc[] + ++ + +. 在需要删除的卷快照内容右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**删除**。 + +. 在**删除卷快照内容**对话框,输入卷快照内容的名称,然后点击**确定**。 + + +== 批量删除卷快照内容 + +. 以具有pass:a,q[{ks_permission}]权限的用户登录{ks_product_left} Web 控制台并进入您的集群或项目。 + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/volumeSnapshotContents/volumeSnapshotContents-oper-openListPage.adoc[] + ++ + +. 选择需要删除的卷快照内容左侧的复选框,然后在列表上方点击**删除**。 + +. 在**批量删除卷快照内容**对话框,输入卷快照的名称,然后点击**确定**。 ++ +-- +include::../../../../_custom-en/note-separateNamesByComma.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/_index.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/_index.adoc new file mode 100644 index 000000000..fbda7cbd2 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/03-volume-snapshots/_index.adoc @@ -0,0 +1,18 @@ +--- +title: "卷快照" +keywords: "Kubernetes, {ks_product}, 集群管理, 存储, 卷快照" +description: "介绍如何管理卷快照。" +weight: 03 +layout: "second" +--- + + +include::../../../../_custom-en/clusterManagement/volumeSnapshots/volumeSnapshots-desc-volumeSnapshots.adoc[] + +[.admon.note,cols="a"] +|=== +|说明 + +| +如果您在安装{ks_product_both}时未指定外部持久化存储系统,{ks_product_right}将使用集群节点的本地存储系统作为持久化存储系统。通常情况下,集群节点的本地存储系统不支持卷快照功能。创建卷快照前,您需要为{ks_product_both}集群安装存储插件,确保后端存储系统支持卷快照功能,并创建link:../04-volume-snapshot-classes/01-create-a-volume-snapshot-class[卷快照类]。 +|=== diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/01-create-a-volume-snapshot-class.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/01-create-a-volume-snapshot-class.adoc new file mode 100644 index 000000000..67167720b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/01-create-a-volume-snapshot-class.adoc @@ -0,0 +1,80 @@ + +--- +title: "创建卷快照类" +keywords: "Kubernetes, {ks_product}, 集群管理, 存储, 卷快照, 创建卷快照类" +description: "介绍如何创建卷快照。" +weight: 01 +--- + + +:ks_permission: **卷快照类管理** +:ks_navigation: **存储 > 卷快照类** + + +本节介绍如何创建卷快照类。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 存储**扩展组件。 + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* 为使卷快照类可以正常提供存储资源,您需要提前配置存储系统并安装与存储系统对应的存储插件。有关更多信息,请联系您的存储系统提供商。 + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +. 在**基本信息**页签,设置卷快照类的基本信息,然后点击**下一步**。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|卷快照类的名称。名称只能包含小写字母、数字和连字符(-),必须以小写字母或数字开头和结尾,最长 63 个字符。 + +|存储类型 +|块存储、对象存储或文件存储。 + +|别名 +|卷快照类的别名。不同卷快照类的别名可以相同。别名只能包含中文、字母、数字和连字符(-),不得以连字符(-)开头或结尾,最长 63 个字符。 + +|描述 +|卷快照类的描述信息。描述可包含任意字符,最长 256 个字符。 +|=== +-- + +. 在**卷快照类设置**页签,设置卷快照类的供应者和删除策略,然后点击**创建**。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|供应者 +|卷快照类使用的存储插件。 + +|删除策略 +| +include::../../../../_custom-en/clusterManagement/volumeSnapshotContents/volumeSnapshotContents-para-deletionPolicy.adoc[] +|=== + +卷快照类创建完成后将显示在卷快照类列表中。 +-- diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/02-view-a-volume-snapshot-class-list.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/02-view-a-volume-snapshot-class-list.adoc new file mode 100644 index 000000000..7b5b8c658 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/02-view-a-volume-snapshot-class-list.adoc @@ -0,0 +1,68 @@ +--- +title: "查看卷快照类列表" +keywords: "Kubernetes, {ks_product}, 集群管理, 存储, 卷快照类, 查看卷快照类列表" +description: "介绍如何查看卷快照类列表。" +weight: 02 +--- + + +:ks_permission: **卷快照类查看** +:ks_navigation: **存储 > 卷快照类** + + +本节介绍如何查看卷快照类列表。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 存储**扩展组件。 + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ +==== +* 卷快照类列表提供以下信息: ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|卷快照类的名称、别名和描述信息。 + +|卷快照 +|通过卷快照类创建的卷快照数量。 + +|供应者 +|卷快照类使⽤的存储插件。 + +|删除策略 +| +include::../../../../_custom-en/clusterManagement/volumeSnapshotContents/volumeSnapshotContents-para-deletionPolicy.adoc[] + +|创建时间 +|卷快照类的创建时间。 +|=== + +-- + +* 在列表上方点击搜索框并设置搜索条件,可搜索名称搜索卷快照类。 + +include::../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/03-view-volume-snapshot-class-details.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/03-view-volume-snapshot-class-details.adoc new file mode 100644 index 000000000..4fcb55048 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/03-view-volume-snapshot-class-details.adoc @@ -0,0 +1,82 @@ +--- +title: "查看卷快照类详情" +keywords: "Kubernetes, {ks_product}, 集群管理, 存储, 卷快照类, 查看卷快照类详情" +description: "介绍如何查看卷快照类详情。" +weight: 03 +--- + +:ks_permission: **卷快照类查看** +:ks_navigation: **存储 > 卷快照类** + + +本节介绍如何查看卷快照类详情。 + + +== Prerequisites + + +* {ks_product_right}平台需要安装并启用 **KubeSphere 存储**扩展组件。 + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在卷快照类列表中点击一个卷快照类的名称打开卷快照类详情页面。 + +. 在卷快照类详情页面左侧的**属性**区域查看卷快照类的资源属性。 ++ +-- + +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|供应者 +| +卷快照类对应的存储插件。 + +|删除策略 +| +include::../../../../_custom-en/clusterManagement/volumeSnapshotContents/volumeSnapshotContents-para-deletionPolicy.adoc[] + +|创建时间 +|卷快照类的创建时间。 +|=== +-- + +. 在卷快照类详情页面右侧的**卷快照**区域查看使用卷快照类创建的卷快照。 ++ +-- + +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|卷快照的名称。 + +|状态 +| +include::../../../../_custom-en/clusterManagement/volumeSnapshots/volumeSnapshots-para-volumeSnapshotStatus_v4.adoc[] + +|容量 +| +include::../../../../_custom-en/clusterManagement/volumeSnapshots/volumeSnapshots-para-capacity.adoc[] + +|创建时间 +|卷快照的创建时间。 +|=== +-- diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/04-edit-volume-snapshot-class-information.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/04-edit-volume-snapshot-class-information.adoc new file mode 100644 index 000000000..071f6d801 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/04-edit-volume-snapshot-class-information.adoc @@ -0,0 +1,54 @@ +--- +title: "编辑卷快照类信息" +keywords: "Kubernetes, {ks_product}, 集群管理, 存储, 卷快照类, 编辑卷快照类信息" +description: "介绍如何编辑卷快照类的信息。" +weight: 04 +--- + + +:ks_permission: **卷快照类管理** +:ks_navigation: **存储 > 卷快照类** + + +本节介绍如何编辑卷快照类的信息。 + +您可以编辑卷快照类的别名和描述。{ks_product_right}不支持编辑卷快照类的名称。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 存储**扩展组件。 + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要操作的卷快照类右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑信息**。 + +. 在**编辑信息**对话框,设置卷快照类的别名和描述,然后点击**确定**。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|别名 +|卷快照类的别名。不同卷快照类的别名可以相同。别名只能包含中文、字母、数字和连字符(-),不得以连字符(-)开头或结尾,最长 63 个字符。 + +|描述 +|卷快照类的描述信息。描述可包含任意字符,最多包含 256 个字符。 +|=== +-- diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/05-delete-volume-snapshot-classes.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/05-delete-volume-snapshot-classes.adoc new file mode 100644 index 000000000..189aaaeb5 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/05-delete-volume-snapshot-classes.adoc @@ -0,0 +1,64 @@ +--- +title: "删除卷快照类" +keywords: "Kubernetes, {ks_product}, 集群管理, 存储, 卷快照类, 删除卷快照类" +description: "介绍如何删除卷快照类。" +weight: 05 +--- + +:ks_permission: **卷快照类管理** +:ks_navigation: **存储 > 卷快照类** + + +本节介绍如何删除卷快照类。 + +// Warning +include::../../../../../_ks_components-en/admonitions/warning.adoc[] + +卷快照类删除后,基于卷快照类创建的卷快照和卷快照内容不会被删除,但用户将无法再通过该卷快照类将快照数据保存到后端存储系统。 + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 存储**扩展组件。 + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + + + +== 删除单个卷快照类 + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要删除的卷快照类右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**删除**。 + +. 在**删除卷快照类**对话框,输入卷快照类的名称,然后点击**确定**。 + + +== 批量删除卷快照类 + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 选择需要删除的卷快照类左侧的复选框,然后在列表上方点击**删除**。 + +. 在**批量删除卷快照类**对话框,输入卷快照的名称,然后点击**确定**。 ++ +-- +include::../../../../_custom-en/note-separateNamesByComma.adoc[] +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/_index.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/_index.adoc new file mode 100644 index 000000000..7a4d83095 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/04-volume-snapshot-classes/_index.adoc @@ -0,0 +1,13 @@ +--- +title: "卷快照类" +keywords: "Kubernetes, {ks_product}, 集群管理, 存储, 卷快照类" +description: "介绍如何管理卷快照类。" +weight: 04 +layout: "second" +--- + + + +本节介绍如何管理卷快照类。 + +卷快照类定义了可供容器使用的一类卷快照。创建卷快照类前,请为{ks_product_both}集群安装存储插件,并确保后端存储系统支持卷快照功能。有关更多信息,请联系您的存储系统提供商。 diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/05-storage-classes/01-set-authorization-rules.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/05-storage-classes/01-set-authorization-rules.adoc new file mode 100644 index 000000000..4ef2ef40c --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/05-storage-classes/01-set-authorization-rules.adoc @@ -0,0 +1,56 @@ +--- +title: "设置授权规则" +description: "介绍如何如何为存储类设置授权规则。" +weight: 01 +--- + +:ks_permission: **存储类访问规则管理** +:ks_navigation: **存储 > 存储类** + + +本节介绍如何为存储类设置授权规则。 + +设置并启用授权规则后,用户只能在特定项目和企业空间使用存储类。 + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 存储**扩展组件。 + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/storageClasses/systemClasses-oper-openDetailsPage.adoc[] + ++ + +. 在存储类详情页面的左上角,选择**更多操作 > 设置授权规则**。 + +. 在**设置授权规则**对话框,点击页面右侧的**已禁用**按钮启用授权规则。 ++ +-- +// Note +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +若要禁用授权规则,在页面右侧点击**已启用**。 + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + +. 在**授权规则**设置区域,设置在特定的项目和企业空间使用该存储类。 ++ +image:/images/ks-qkcp/zh/v4.1/storage1.png[ rule,100%] + +. 设置完成后,点击**确定**。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/05-storage-classes/02-set-auto-expansion.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/05-storage-classes/02-set-auto-expansion.adoc new file mode 100644 index 000000000..2dd78eee8 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/05-storage-classes/02-set-auto-expansion.adoc @@ -0,0 +1,70 @@ +--- +title: "设置存储卷自动扩展" +keywords: "Kubernetes, {ks_product}, 集群管理, 存储, 持久卷声明, 持久卷,自动扩展" +description: "介绍如何设置存储卷自动扩展。" +weight: 02 +--- + +:ks_permission: **存储类管理** +:ks_navigation: **存储 > 存储类** + + +本节介绍如何设置存储卷自动扩展。 + +卷容量自动扩展指系统在卷剩余空间低于阈值时自动扩展卷容量。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere 存储**扩展组件。 + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +// include::../../../../_custom-en/clusterManagement/persistentVolumeClaims/persistentVolumeClaims-prer-persistentVolumeCreated.adoc[] + +ifeval::["{file_output_type}" == "html"] +* 请确保后端存储系统支持卷扩展功能,且存储类已启用卷扩展功能。有关更多信息,请参阅link:../../../../07-cluster-management/08-storage/02-storage-classes/05-enable-and-disable-volume-operations[启用和禁用卷操作]。 +endif::[] + +ifeval::["{file_output_type}" == "pdf"] +* 请确保后端存储系统支持卷扩展功能,且存储类已启用卷扩展功能。有关更多信息,请参阅《{ks_product_right}集群管理指南》的“存储类 > 启用和禁用卷操作”章节。 +endif::[] + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/clusterManagement/storageClasses/systemClasses-oper-openDetailsPage.adoc[] + ++ + +. 在存储类详情页面的左上角,选择**更多操作 > 设置自动扩展**。 + +. 在**设置自动扩展**对话框,点击页面右侧的**已禁用**按钮启用自动扩展功能。 ++ +-- +// Note +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +如果您需要禁用自动扩展功能,在页面右侧点击**已启用**。 + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + +. 在**自动扩展**设置区域,设置扩展的最大容量、阈值、以及增量。 ++ +image:/images/ks-qkcp/zh/v4.1/storage2.png[ scale,100%] + +. (可选)如果您需要系统自动检查卷状态并重启工作负载,请勾选**自动重启工作负载**。 + +. 设置完成后,点击**确定**。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/05-storage-classes/_index.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/05-storage-classes/_index.adoc new file mode 100644 index 000000000..8f453c182 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/05-storage-classes/_index.adoc @@ -0,0 +1,14 @@ +--- +title: "存储类" +description: "介绍如何如何为存储类设置授权规则和自动扩展。" +weight: 05 +layout: "second" +--- + + +本节介绍如何为存储类设置授权规则和自动扩展。 + +安装“KubeSphere 存储”扩展组件后,集群左侧导航栏的**存储**菜单下的**存储类**会显示**设置授权规则**和**设置自动扩展**操作项。 + +* 设置授权规则:用户只能在特定项目和企业空间使用存储类。 +* 设置自动扩展:系统在卷剩余空间低于阈值时自动扩展卷容量。 diff --git a/content/en/docs/v4.1/11-use-extensions/15-storage/_index.adoc b/content/en/docs/v4.1/11-use-extensions/15-storage/_index.adoc new file mode 100644 index 000000000..695dd9577 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/15-storage/_index.adoc @@ -0,0 +1,35 @@ +--- +title: "KubeSphere 存储" +keywords: "Kubernetes, {ks_product}, 存储, 卷快照" +description: "介绍如何使用“KubeSphere 存储”扩展组件。" +weight: 15 +layout: "second" +--- + + +本节介绍如何使用“KubeSphere 存储”扩展组件。 + +该扩展组件包含多个存储相关的实用工具: + +* snapshot-controller: 用于为 PVC 创建快照。 +* snapshotclass-controller: 用于为快照计数。 +* pvc-auto-resizer: 用于为 PVC 在容量不足的情况下实现自动扩容。 +* storageclass-accessor: 提供准入控制器,用来验证是否准许在某个命名空间或企业空间创建 PVC。 + + +安装“KubeSphere 存储”扩展组件后, + +* 集群左侧导航栏的**存储**菜单下将显⽰**卷快照**和**卷快照类**选项,**存储**菜单下的**存储类**将显示**设置授权规则**和**设置自动扩展**操作项。 +* 项目左侧导航栏的**存储**菜单下将显⽰**卷快照**选项。 + +[.admon.note,cols="a"] +|=== +|说明 + +| +* 存储类的自动扩展功能支持在 PVC 容量不足的情况下实现自动扩容。仅控制是否允许用户在{ks_product_left} Web 控制台使用相关操作,存储类是否实际支持这些操作取决于后端存储系统。 +* 设置自动扩展需要连接 prometheus 服务才能工作。有关更多信息,请参阅扩展中心“KubeSphere 存储”扩展组件的详情页说明。 +|=== + + + diff --git a/content/en/docs/v4.1/11-use-extensions/16-dmp/01-intro.adoc b/content/en/docs/v4.1/11-use-extensions/16-dmp/01-intro.adoc new file mode 100644 index 000000000..4f7413b07 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/16-dmp/01-intro.adoc @@ -0,0 +1,11 @@ +--- +title: "简介" +description: "介绍 RadonDB DMP 数据库管理平台。" +weight: 01 +--- + +RadonDB DMP 是青云科技全新发布的企业级云原生数据库管理平台。在 KubeSphere LuBan 云原生可扩展开放架构之上,RadonDB DMP 能轻松实现多类型主流数据库的跨云部署、多云管理、智能观测与统一运维等,并完整构建围绕高性能、高可用、业务追踪、数据流转等场景下的生态闭环,助力客户真正实现数据库即服务。 + +安装 RadonDB DMP 扩展组件后,点击顶部导航栏上的image:/images/ks-qkcp/zh/icons/grid.svg[grid,18,18]图标,点击 RadonDB DMP,进入数据库管理平台。 + +有关如何使用 RadonDB DMP 数据库管理平台,请参阅 link:https://radondb-docs.kubesphere.com.cn/[RadonDB DMP 使用指南]。 diff --git a/content/en/docs/v4.1/11-use-extensions/16-dmp/_index.adoc b/content/en/docs/v4.1/11-use-extensions/16-dmp/_index.adoc new file mode 100644 index 000000000..96de2b605 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/16-dmp/_index.adoc @@ -0,0 +1,7 @@ +--- +title: "RadonDB DMP" +description: "介绍 RadonDB DMP 数据库管理平台。" +weight: 16 +layout: "second" +draft: true +--- diff --git a/content/en/docs/v4.1/11-use-extensions/17-kubeedge/01-add-an-edge-node.adoc b/content/en/docs/v4.1/11-use-extensions/17-kubeedge/01-add-an-edge-node.adoc new file mode 100644 index 000000000..e94c167d9 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/17-kubeedge/01-add-an-edge-node.adoc @@ -0,0 +1,137 @@ +--- +title: "添加边缘节点" +keywords: "Kubernetes, {ks_product}, 集群管理, 节点, 添加边缘节点" +description: "介绍如何添加边缘节点。" +weight: 01 +--- + +:ks_permission: **节点管理** +:ks_navigation: **节点 > 边缘节点** + +本节介绍如何添加边缘节点。 + + +== Prerequisites + +* {empty} +include::../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **KubeEdge** 扩展组件。 + +* 待添加的边缘节点需要能够访问{ks_product_both}集群主节点的 **30000**、**30001**、**30002**、**30004** 端口。 + +* 待添加的边缘节点已安装 Docker、containerd、CRI-O 或 Virtlet 作为容器运行时。KubeEdge 边缘节点默认使用 containerd 作为运行时。有关更多信息,请参阅 link:https://docs.kubeedge.io/zh/docs/advanced/cri/[KubeEdge 官方文档]。 + +* 已获取待添加的边缘节点的 SSH 登录信息。 + + +== 配置边缘节点 + +执行以下步骤在边缘节点上配置 link:https://kubeedge.io/zh/docs/advanced/edgemesh/[EdgeMesh]。 + +. 执行以下命令编辑 **/etc/nsswitch.conf** 文件: ++ +-- +// Bash +[,bash] +---- +vi /etc/nsswitch.conf +---- +-- + +. 在 **/etc/nsswitch.conf** 文件中添加以下内容,然后保存文件: ++ +-- +// Bash +[,bash] +---- +hosts:          dns files mdns4_minimal [NOTFOUND=return] +---- +-- + +. 执行以下命令在边缘节点上启用 IP 转发: ++ +-- +// Bash +[,bash] +---- +sudo echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf +---- +-- + +. 执行以下命令验证配置结果: ++ +-- +// Bash +[,bash] +---- +sudo sysctl -p | grep ip_forward +---- + +如果显示以下信息,则表明配置成功: + +// Bash +[,bash] +---- +net.ipv4.ip_forward = 1 +---- +-- + + +== 添加边缘节点 + +include::../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在页面右侧点击**添加**。 + +. 在**添加边缘节点**对话框,设置边缘节点的参数。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|边缘节点的名称。系统会自动为边缘节点生成名称,您也可以手动设置边缘节点的名称。名称只能包含小写字母、数字和连字符(-),必须以小写字母或数字开头和结尾,最长 63 个字符。 + +// |内部 IP 地址 +// |边缘节点在{ks_product_both}集群内部的 IP 地址。边缘节点的内部 IP 地址不能与{ks_product_both}集群现有节点的内部 IP 地址相同。 + +|添加默认污点 +|是否为边缘节点添加污点以阻止容器组调度到边缘节点上。 +|=== +-- + +. 点击**验证**生成边缘节点配置命令。 + +. 点击**复制**将边缘节点配置命令复制到剪贴板,然后进行以下修改。 ++ +将边缘节点配置命令中的 10000,10001,10002,10004 端口修改为 cloudcore 服务暴露出来的端口 30000,30001,30002,30004。 ++ +image:/images/ks-qkcp/zh/v4.1/kubeedge-port.png[ port,100%] + + +. 登录边缘节点并执行已修改的命令。 ++ +-- +// Note +include::../../../../_ks_components-en/admonitions/note.adoc[] + +* 请确保边缘节点能够通过 **--cloudcore-ipport** 参数指定的 IP 地址访问{ks_product_both}集群主节点。 + +* 请确保边缘节点能够通过 **--cloudcore-ipport**、**--quicport**、**--certport**、**--tunnelport** 参数指定的端口号分别访问{ks_product_both}集群主节点的 **30000**、**30001**、**30002**、**30004** 端口。 + +* 取决于您的网络环境,您可能需要设置防火墙和流量转发规则。 + +include::../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + +. 刷新{ks_product_left} Web 控制台的**边缘节点**页面。如果添加成功,边缘节点将显示在边缘节点列表。 diff --git a/content/en/docs/v4.1/11-use-extensions/17-kubeedge/02-view-an-edge-node-list.adoc b/content/en/docs/v4.1/11-use-extensions/17-kubeedge/02-view-an-edge-node-list.adoc new file mode 100644 index 000000000..dbe4a07ab --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/17-kubeedge/02-view-an-edge-node-list.adoc @@ -0,0 +1,67 @@ +--- +title: "查看边缘节点列表" +keywords: "Kubernetes, {ks_product}, 集群管理, 边缘节点, 查看边缘节点列表" +description: "介绍如何查看边缘节点列表。" +weight: 02 +--- + +:ks_permission: **节点查看** + + +本节介绍如何查看边缘节点列表。 + + +== Prerequisites + +* {empty} +include::../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **KubeEdge** 扩展组件。 + +== Steps + +include::../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + +. 在左侧导航栏选择**节点 > 边缘节点**打开节点列表。 + ++ + +==== +* 节点列表提供以下信息: ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|各节点的主机名称和在子网内部的 IP 地址。 +// 各节点的主机名称由用户安装集群时在安装配置文件 **config-sample.yaml** 中设置。 + +|状态 +| +include::../../../_custom-en/clusterManagement/nodes/nodes-para-nodeStatus_new.adoc[] + +ifeval::["{file_output_type}" == "html"] +如果节点上存在污点,**状态**列还将显示节点上污点的数量。将光标悬停在污点数字上查看污点的具体信息。有关更多信息,请参阅link:../../../07-cluster-management/03-nodes/05-edit-node-taints/[设置节点污点]。 +endif::[] + +ifeval::["{file_output_type}" == "pdf"] +如果节点上存在污点,**状态**列还将显示节点上污点的数量。将光标悬停在污点数字上查看污点的具体信息。有关更多信息,请参阅《{ks_product_right}集群管理指南》的“节点”章节。 +endif::[] + +|角色 +| +各节点在集群中的角色,取值为**代理/边缘节点**。 + +|=== +-- + +* 在列表上方点击搜索框并设置搜索条件,可按名称、状态或角色搜索节点。 + +include::../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== diff --git a/content/en/docs/v4.1/11-use-extensions/17-kubeedge/03-delete-an-edge-node.adoc b/content/en/docs/v4.1/11-use-extensions/17-kubeedge/03-delete-an-edge-node.adoc new file mode 100644 index 000000000..fc86d5740 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/17-kubeedge/03-delete-an-edge-node.adoc @@ -0,0 +1,70 @@ +--- +title: "删除边缘节点" +keywords: "Kubernetes, {ks_product}, 集群管理, 节点, 删除边缘节点" +description: "介绍如何删除边缘节点。" +weight: 03 +--- + +:ks_permission: **节点管理** +:ks_menu: **节点 > 边缘节点** + +本节介绍如何删除边缘节点。 + + +== Prerequisites + +* {empty} +include::../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **KubeEdge** 扩展组件。 + +* 已获取{ks_product_both}集群主节点和边缘节点的 SSH 登录信息。 + + +== Steps + +. 登录边缘节点并执行以下命令删除边缘节点中的配置: ++ +-- +// Bash +[,bash] +---- + ./keadm reset +---- + +// Bash +[,bash] +---- +apt remove mosquitto +---- + +// Bash +[,bash] +---- +rm -rf /var/lib/kubeedge /var/lib/edged /etc/kubeedge/ca /etc/kubeedge/certs +---- +-- + +. 登录{ks_product_both}集群主节点并执行以下命令删除边缘节点。 ++ +-- +// Bash +[,bash] +---- +kubectl delete node +---- +-- + +. 在{ks_product_both}集群主节点执行以下命令检查当前的节点: ++ +-- +// Bash +[,bash] +---- +kubectl get node +---- + +如果命令回显中没有显示需要删除的边缘节点,则表明边缘节点删除成功。 +-- diff --git a/content/en/docs/v4.1/11-use-extensions/17-kubeedge/_index.adoc b/content/en/docs/v4.1/11-use-extensions/17-kubeedge/_index.adoc new file mode 100644 index 000000000..cf07fd98d --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/17-kubeedge/_index.adoc @@ -0,0 +1,29 @@ +--- +title: "KubeEdge" +keywords: "Kubernetes, {ks_product}, 集群管理, 边缘节点" +description: "介绍如何使用 KubeEdge 管理集群的边缘节点。" +weight: 17 +layout: "second" +draft: true +--- + + +本节介绍如何使用 KubeEdge 扩展组件管理集群的边缘节点。 + +KubeEdge 包含云端和边缘端两部分,可将本机容器化应用编排和管理扩展到边缘端设备。它基于 Kubernetes 构建,为网络和应用程序提供核心基础架构支持,并在云端和边缘端部署应用、同步元数据。使用 KubeEdge,可以很容易地将应用程序部署到边缘端并进行使用。通过在边缘端处理数据,响应速度会显著提高,数据隐私也可以得到更好地保护。 + +安装 KubeEdge 扩展组件后,集群左侧导航栏的**节点**菜单下将显⽰**边缘节点**选项。 + +{ks_product_right}平台支持两类节点: + +* 集群节点:{ks_product_right}集群本地的节点,通常所有集群节点都属于同一个私有网络。 + +* 边缘节点:部署在边缘环境中受{ks_product_both}管理的节点。通常边缘节点相较集群节点更为轻量,与普通节点属于不同的私有网络。 + +ifeval::["{file_output_type}" == "html"] +边缘节点和集群节点的部分操作相同,如查看节点详情、阻⽌和允许容器组调度、编辑节点污点和标签。有关更多信息,请参阅link:../../07-cluster-management/03-nodes[节点管理]。 +endif::[] + +ifeval::["{file_output_type}" == "pdf"] +边缘节点和集群节点的部分操作相同,如查看节点详情、阻⽌和允许容器组调度、编辑节点污点和标签。有关更多信息,请参阅《{ks_product_right}集群管理指南》的“节点”章节。 +endif::[] diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/01-microservices/01-create-a-deployment-and-register-the-deployment-as-a-microservice.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/01-microservices/01-create-a-deployment-and-register-the-deployment-as-a-microservice.adoc new file mode 100644 index 000000000..be9ac0de7 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/01-microservices/01-create-a-deployment-and-register-the-deployment-as-a-microservice.adoc @@ -0,0 +1,299 @@ +--- +title: "创建部署并注册为微服务" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 创建部署并注册为微服务" +description: "介绍如何创建部署并将部署注册为微服务。" +weight: 01 +--- + + +:ks_permission: ** Spring Cloud 微服务管理** +:ks_navigation:  **Spring Cloud > 微服务** + + +本节介绍如何创建部署并将部署注册为微服务。 + +Spring Cloud 微服务实例通过 Kubernetes 部署管理,部署的容器组副本即微服务的实例。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere Spring Cloud** 扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + +* 创建部署所使用的容器镜像中的应用程序需要符合 Nacos 规范。有关更多信息,请参阅 link:https://nacos.io[Nacos 官方文档]。 + + +== Steps + +请参阅link:#_参数描述[参数描述]设置部署的参数。 + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 点击**启用 Spring Cloud**。 + ++ + +include::../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +. 在**基本信息**页签,设置**部署**的基本信息,然后点击**下一步**。 + +. 在**容器组设置**页签,为**部署**管理的容器组设置副本数量、容器、更新策略、安全上下文、调度规则和元数据,然后点击**下一步**。 + +. 在**存储设置**页签,为部署管理的容器挂载卷,然后点击**下一步**。 + +. 在**高级设置**页签,为部署管理的容器组指定节点,并设置部署的元数据,然后点击**创建**。 ++ +-- +部署创建完成后将被注册为微服务,并显示在微服务列表中。 + +// Note +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +在 **Spring Cloud > 微服务**页面创建的部署将被自动注册为微服务。如需对微服务实例进行操作(例如调整实例数量),您需要前往**工作负载 > 部署**页面对微服务对应的部署进行操作。 + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + + +== 参数描述 + +* 基本信息 ++ +-- +设置部署的基本信息。 + +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|部署的名称。名称只能包含小写字母、数字和连字符(-),必须以小写字母或数字开头和结尾,最长 253 个字符。 + +|别名 +|部署的别名。不同部署的别名可以相同。别名只能包含中文、字母、数字和连字符(-),不得以连字符(-)开头或结尾,最长 63 个字符。 + +|描述 +|部署的描述信息。描述可包含任意字符,最长 256 个字符。 +|=== +-- + +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-podReplicas.adoc[] + +* 容器组设置 > 添加容器 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-addContainer.adoc[] +-- + +* 容器组设置 > 添加容器 > 容器设置 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-desc-setImageNameTypeResource.adoc[] + +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerImage.adoc[] + +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerName.adoc[] + +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerType.adoc[] + +include::../../../../_custom-en/clusterManagement/projects/projects-para-containerQuotas.adoc[] +|=== +-- + +* 容器组设置 > 添加容器 > 端口设置 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-Port.adoc[] +-- + +* 容器组设置 > 添加容器 > 镜像拉取策略 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-imagePullPolicy.adoc[] +-- + +* 容器组设置 > 添加容器 > 健康检查 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-healthCheck.adoc[] +-- + +* 容器组设置 > 添加容器 > 健康检查 > 添加探针 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-addProbe.adoc[] +-- + +* 容器组设置 > 添加容器 > 生命周期管理 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-lifecycleManagement.adoc[] +-- + +* 容器组设置 > 添加容器 > 生命周期管理 > 添加动作 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-addAction.adoc[] +-- + +* 容器组设置 > 添加容器 > 启动命令 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-startCommand.adoc[] +-- + +* 容器组设置 > 添加容器 > 环境变量 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-environmentVariables.adoc[] +-- + +* 容器组设置 > 添加容器 > 容器组安全上下文 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-containerSecurityContext.adoc[] +-- + +* 容器组设置 > 添加容器 > 同步主机时区 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-syncTimeZone.adoc[] +-- + +* 容器组设置 > 更新策略 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-updatePolicy.adoc[] +-- + +* 容器组设置 > 更新策略 > 滚动更新设置 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-rollingUpdate.adoc[] +-- + +* 容器组设置 > 容器组安全上下文 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-podSecurityContext.adoc[] +-- + +* 容器组设置 > 容器组调度规则 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-podSchedulingRules.adoc[] +-- + +* 容器组设置 > 容器组调度规则 > 自定义规则 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-customRules.adoc[] +-- + +* 容器组设置 > 容器组优雅终止 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-PodGracePeriod.adoc[] +-- + +* 容器组设置 > 添加元数据 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-PodMetadata.adoc[] +-- + +* 存储设置 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-desc-mountVolume.adoc[] + +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +// include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-collectLogsOnVolume.adoc[] + +// include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-desc-enableLogCollectionCluster.adoc[] + +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-addPVCTemplate.adoc[] + +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-mountVolume.adoc[] + +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-mountSecretOrConfigmap.adoc[] +|=== + +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-oper-editDeleteVolume.adoc[] +-- + +* 存储设置 > 添加持久卷声明模板 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-volumeTemplate.adoc[] +-- + +* 存储设置 > 挂载卷 > 持久卷 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-persistentVolume.adoc[] +-- + +* 存储设置 > 挂载卷 > 临时卷 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-temporaryVolume.adoc[] +-- + +* 存储设置 > 挂载卷 > HostPath 卷 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-hostpathVolume.adoc[] +-- + +* 存储设置 > 挂载配置字典或保密字典 ++ +-- +include::../../../../_custom-en/clusterManagement/workloads/createWorkload/workloads-para-mountConfigmapSecret.adoc[] +-- + +* 高级设置 ++ +-- +为部署管理的容器组指定节点,并设置部署的元数据。 + +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +// |容器组 IP 池 +// |选择用于为容器组副本分配虚拟 IP 地址的 IP 池。 + +|选择节点 +|将容器组副本调度到具有指定标签的节点上。 + +* 您可以手动输入目标节点的标签键值对,也可以点击**指定节点**选择一个节点。 +* 点击**添加节点选择器**可设置多个标签,容器组副本将被调度具有所有指定标签的节点上。 +* 在已创建的标签右侧点击image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18]可删除标签。 + +|添加元数据 +|设置部署的标签和注解。 + +* 点击添加可设置多条标签或注解。 +* 在已创建的标签或注解右侧点击image:/images/ks-qkcp/zh/icons/trash-light.svg[trash-light,18,18]可删除标签或注解。 +|=== +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/01-microservices/02-view-a-microservice-list.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/01-microservices/02-view-a-microservice-list.adoc new file mode 100644 index 000000000..d1e1934ec --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/01-microservices/02-view-a-microservice-list.adoc @@ -0,0 +1,61 @@ +--- +title: "查看微服务列表" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 查看微服务列表" +description: "介绍如何查看微服务列表。" +weight: 02 +--- + + +:ks_permission: ** Spring Cloud 微服务查看** +:ks_navigation:  **Spring Cloud > 微服务** + + +本节介绍如何查看微服务列表。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere Spring Cloud** 扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] ++ +==== +* 服务注册中心显示服务注册中心的地址、微服务的数量、微服务实例的数量和健康实例的数量。 + +* 微服务列表显示每个微服务的实例数量、健康实例数量和当前微服务是否已触发健康保护机制。 ++ +-- +// Note +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +* 为了防止因过多实例不健康导致流量全部流向健康实例,继而造成流量压力把健康实例压垮并形成雪崩效应,Nacos 支持设置健康保护阈值。当健康实例数量占微服务总实例数的比例小于该值时,无论实例是否健康,都会将这个实例返回给客户端。 + +* {ks_product_right}的默认健康保护阈值为 0,即默认不使用健康保护机制。您可以参阅 link:https://nacos.io[Nacos 官方文档]设置 Nacos 的健康保护阈值。 + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] +-- + +* 在列表上方点击搜索框并输入关键字,可搜索名称包含特定关键字的微服务。 + +include::../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== + +. 在微服务右侧点击image:/images/ks-qkcp/zh/icons/plus-square.svg[plus-square,18,18]查看微服务的所有实例。 ++ +-- +include::../../../../_custom-en/projectManagement/microservices/microservices-para-instances.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/01-microservices/03-edit-the-weight-of-a-microservice.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/01-microservices/03-edit-the-weight-of-a-microservice.adoc new file mode 100644 index 000000000..da01cdf4e --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/01-microservices/03-edit-the-weight-of-a-microservice.adoc @@ -0,0 +1,44 @@ +--- +title: "编辑微服务实例权重" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 编辑微服务实例权重" +description: "介绍编辑微服务实例权重。" +weight: 03 +--- + + +:ks_permission: ** Spring Cloud 微服务管理** +:ks_navigation:  **Spring Cloud > 微服务** + + +本节介绍如何编辑微服务实例权重。 + +微服务实例的权重用于决定微服务实例的流量分配,发送给微服务的流量将根据微服务实例的权重分配给微服务实例。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere Spring Cloud** 扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/projectManagement/microservices/microservices-oper-openInstanceList.adoc[] + ++ + +. 在需要操作的微服务实例右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑权重**。 + +. 在**编辑权重**对话框,设置微服务实例的权重,然后点击**确定**。 diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/01-microservices/04-take-a-microservice-instance-offline-and-online.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/01-microservices/04-take-a-microservice-instance-offline-and-online.adoc new file mode 100644 index 000000000..6bcd761fa --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/01-microservices/04-take-a-microservice-instance-offline-and-online.adoc @@ -0,0 +1,42 @@ +--- +title: "下线和上线微服务实例" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 下线微服务实例" +description: "介绍如何下线和上线微服务实例。" +weight: 04 +--- + + +:ks_permission: ** Spring Cloud 微服务管理** +:ks_navigation:  **Spring Cloud > 微服务** + + +本节介绍如何下线和上线微服务实例。微服务实例下线后将不再接收业务流量。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere Spring Cloud** 扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/projectManagement/microservices/microservices-oper-openInstanceList.adoc[] + ++ + +. 在需要操作的微服务实例右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**下线**可下线微服务。 + +. 在已下线的微服务实例右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**上线**可重新上线微服务。 diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/01-microservices/_index.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/01-microservices/_index.adoc new file mode 100644 index 000000000..8b9b73644 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/01-microservices/_index.adoc @@ -0,0 +1,11 @@ +--- +title: "微服务" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 微服务" +description: "介绍如何管理微服务。" +weight: 01 +layout: "second" +--- + + + +本节介绍如何管理微服务。 diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/01-create-a-microservice-configuration.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/01-create-a-microservice-configuration.adoc new file mode 100644 index 000000000..506d0d847 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/01-create-a-microservice-configuration.adoc @@ -0,0 +1,52 @@ +--- +title: "创建微服务配置" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 创建微服务路由" +description: "介绍如何创建微服务路由。" +weight: 01 +--- + +:ks_permission: ** Spring Cloud 微服务管理** +:ks_navigation:  **Spring Cloud > 微服务配置** + + +本节介绍如何创建微服务配置。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere Spring Cloud** 扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +. 在**创建微服务配置**对话框,设置微服务配置的参数,然后点击**创建**。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|微服务配置的名称。名称只能包含小写字母、数字和连字符(-),必须以小写字母或数字开头和结尾,最长 63 个字符。 + +|数据 +|微服务配置数据。点击下拉列表可选择数据的格式。有关微服务配置数据的更多信息,请参阅 link:https://nacos.io[Nacos 官方文档]。 +|=== +-- diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/02-view-a-microservice-configuration-list.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/02-view-a-microservice-configuration-list.adoc new file mode 100644 index 000000000..ad156a1f1 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/02-view-a-microservice-configuration-list.adoc @@ -0,0 +1,64 @@ +--- +title: "查看微服务配置列表" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 查看微服务配置列表" +description: "介绍如何查看微服务配置列表。" +weight: 02 +--- + +:ks_permission: ** Spring Cloud 微服务查看** +:ks_navigation:  **Spring Cloud > 微服务配置** + + +本节介绍如何查看微服务配置列表。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere Spring Cloud** 扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] ++ +==== +* 微服务配置列表提供以下信息: ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|微服务配置的名称。 + +|状态 +|微服务配置的状态。 + +* **已发布**:微服务配置创建成功并且可供微服务使用。 + +* **失败**:微服务配置创建过程中出现系统错误导致创建失败。 + +|数据 ID +|微服务配置的全局唯一标识符,由 <微服务配置名称>.<格式> 组成。 + +|创建时间 +|微服务配置的创建时间。 +|=== +-- + +* 在列表上方点击搜索框并输入关键字,可按名称和状态搜索微服务配置。 + +include::../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/03-view-microservice-configuration-details.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/03-view-microservice-configuration-details.adoc new file mode 100644 index 000000000..572e174f8 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/03-view-microservice-configuration-details.adoc @@ -0,0 +1,55 @@ +--- +title: "查看微服务配置详情" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 查看微服务配置详情" +description: "介绍如何查看微服务配置详情。" +weight: 03 +--- + +:ks_permission: ** Spring Cloud 微服务查看** +:ks_navigation:  **Spring Cloud > 微服务配置** + + +本节介绍如何查看微服务配置详情。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere Spring Cloud** 扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/projectManagement/microserviceConfiguration/microserviceConfiguration-oper-openDetailsPage.adoc[] ++ +-- +* 微服务配置详情页面左侧的**属性**区域显示微服务配置所属的项目、集群和创建时间。 + +* 微服务配置详情页面右侧的**数据**页签显示微服务配置所包含的数据。 +-- + +. 在微服务详情页面右侧点击**历史版本**页签查看微服务配置的修改记录。 ++ +-- +* 每次编辑微服务配置都会生成修改记录,可用于回退微服务配置。 + +* 点击修改记录可查看微服务配置的数据内容。 +-- + +. 在微服务配置详情页面右侧点击**事件**页签查看微服务配置的事件。 ++ +-- +include::../../../../_custom-en/clusterManagement/clusterManagement-para-eventsTab.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/04-edit-a-microservice-configuration.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/04-edit-a-microservice-configuration.adoc new file mode 100644 index 000000000..df22ecab3 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/04-edit-a-microservice-configuration.adoc @@ -0,0 +1,38 @@ +--- +title: "编辑微服务配置" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 编辑微服务配置" +description: "介绍如何编辑微服务配置。" +weight: 04 +--- + + +:ks_permission: ** Spring Cloud 微服务管理** +:ks_navigation:  **Spring Cloud > 微服务配置** + + +本节介绍如何编辑微服务配置。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere Spring Cloud** 扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要操作的微服务配置右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑**。 + +. 在**编辑微服务配置**对话框,设置微服务配置的新数据,然后点击**确定**。 diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/05-replicate-a-microservice-configuration.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/05-replicate-a-microservice-configuration.adoc new file mode 100644 index 000000000..96abfc82d --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/05-replicate-a-microservice-configuration.adoc @@ -0,0 +1,50 @@ +--- +title: "复制微服务配置" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 复制微服务配置" +description: "介绍如何复制微服务配置。" +weight: 05 +--- + +:ks_permission: ** Spring Cloud 微服务管理** +:ks_navigation:  **Spring Cloud > 微服务配置** + + +本节介绍如何复制微服务配置。 + +您可以使用已有的微服务配置创建一个名称不同但数据完全相同的微服务配置。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere Spring Cloud** 扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要操作的微服务配置右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**复制**。 + +. 在**复制微服务配置**对话框,设置新微服务配置的名称,然后点击**确定**。 ++ +-- +// Note +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +根据需要,您也可以修改配置数据。 + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + +复制完成后,复制生成的微服务配置将显示在列表中。 +-- diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/06-roll-back-a-microservice-configuration.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/06-roll-back-a-microservice-configuration.adoc new file mode 100644 index 000000000..79edd2a9e --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/06-roll-back-a-microservice-configuration.adoc @@ -0,0 +1,43 @@ +--- +title: "回退微服务配置" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 回退微服务配置" +description: "介绍如何回退微服务配置。" +weight: 06 +--- + +:ks_permission: ** Spring Cloud 微服务管理** +:ks_navigation:  **Spring Cloud > 微服务配置** + + +本节介绍如何回退微服务配置。 + +每次编辑微服务配置都会生成修改记录,您可以使用修改记录将微服务配置回退到历史版本。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere Spring Cloud** 扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../_custom-en/projectManagement/microserviceConfiguration/microserviceConfiguration-oper-openDetailsPage.adoc[] + ++ + +. 在微服务配置详情页面左上角,选择**更多操作 > 回退**。 + +. 在**回退**对话框,选择目标修改记录,然后点击**确定**。 diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/07-delete-microservice-configurations.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/07-delete-microservice-configurations.adoc new file mode 100644 index 000000000..b5f05b7f7 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/07-delete-microservice-configurations.adoc @@ -0,0 +1,56 @@ +--- +title: "删除微服务配置" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 删除微服务配置" +description: "介绍如何删除微服务配置。" +weight: 07 +--- + +:ks_permission: ** Spring Cloud 微服务管理** +:ks_navigation:  **Spring Cloud > 微服务配置** + + +本节介绍如何删除微服务配置。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere Spring Cloud** 扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== 删除单个微服务配置 + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要删除的微服务配置右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**删除**。 + +. 在**删除微服务配置**对话框,输入微服务配置的名称,然后点击**确定**。 + + +== 批量删除微服务配置 + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 选择需要删除的微服务配置左侧的复选框,然后在列表上方点击**删除**。 + +. 在**批量删除微服务配置**对话框,输入微服务配置的名称,然后点击**确定**。 ++ +-- +include::../../../../_custom-en/note-separateNamesByComma.adoc[] +-- diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/_index.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/_index.adoc new file mode 100644 index 000000000..d30c37d34 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/02-microservice-configurations/_index.adoc @@ -0,0 +1,20 @@ +--- +title: "微服务配置" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 微服务配置" +description: "介绍如何管理微服务配置。" +weight: 02 +layout: "second" +--- + + + +本节介绍如何管理微服务配置。 + +微服务配置中存储供微服务使用的键值数据,可用于分离微服务及其配置数据。 + +// Note +include::../../../../../_ks_components-en/admonitions/note.adoc[] + +本节仅介绍如何管理微服务配置。有关应用程序如何获取配置数据,请参阅 link:https://nacos.io[Nacos 官方文档]。 + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/01-create-a-microservice-gateway.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/01-create-a-microservice-gateway.adoc new file mode 100644 index 000000000..679203eec --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/01-create-a-microservice-gateway.adoc @@ -0,0 +1,52 @@ +--- +title: "创建微服务网关" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 创建微服务网关" +description: "介绍如何创建微服务网关。" +weight: 01 +--- + +:ks_permission: ** Spring Cloud 微服务管理** +:ks_navigation:  **Spring Cloud > 微服务网关** + + +本节介绍如何创建微服务网关。 + +创建微服务网关过程中实际上创建了一个运行 Spring Cloud Gateway 的部署。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere Spring Cloud** 扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + +* 您需要提前准备 Spring Cloud Gateway 容器镜像。有关更多信息,请参阅 link:https://spring.io/projects/spring-cloud-gateway#overview[Spring Cloud Gateway] 官方文档。本节使用 registry.cn-beijing.aliyuncs.com/kse/spring-cloud-gateway:latest 容器镜像作为示例,您也可以根据需要自行构建容器镜像。 + + +== Steps + +请参阅link:#_参数描述[参数描述]设置微服务网关的参数。 + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +. 在**网关设置**页签,设置微服务网关的参数,然后点击**下一步**。 + +. 在**高级设置**页签,选择是否启用外部访问和外部访问模式,然后点击**创建**。 + + +== 参数描述 + +include::../../../../_custom-en/projectManagement/microserviceGateway/microserviceGateway-para-microserviceGatewaySettings.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/02-view-microservice-gateway-information.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/02-view-microservice-gateway-information.adoc new file mode 100644 index 000000000..3f6fc81ca --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/02-view-microservice-gateway-information.adoc @@ -0,0 +1,77 @@ +--- +title: "查看微服务网关信息" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 查看微服务网关信息" +description: "介绍如何查看微服务网关信息。" +weight: 02 +--- + +:ks_permission: ** Spring Cloud 微服务查看** +:ks_navigation:  **Spring Cloud > 微服务网关** + + +本节介绍如何查看微服务网关信息。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere Spring Cloud** 扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] ++ +-- +**微服务网关**页面提供以下信息: + +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|类型 +|网关的类型。对于微服务网关参数值为**微服务网关**。 + +|状态 +|网关当前的状态。 + +* **运行中**:微服务网关运行正常。 + +* **更新中**:微服务网关正在创建中或正在更新设置。 + +|创建者 +|创建网关的用户。 + +|创建时间 +|网关的创建时间。 + +|访问模式 +|网关的访问模式。 + +include::../../../../_custom-en/clusterManagement/services/services-para-externalAccess.adoc[tag=bullets] + +* **ClusterIP**:网关不能从 KubeSphere 集群外部访问,只能在 KubeSphere 集群内部通过虚拟 IP 地址访问。 + +|网关地址 +| +网关的访问地址。 + +include::../../../../_custom-en/clusterManagement/gatewaySettings/gatewaySettings-para-address.adoc[tag=bullets] + +* 如果网关的访问模式为 ClusterIP,网关不能从集群外部访问,**网关地址**为网关在 KubeSphere 集群内部的虚拟 IP 地址。 + +|节点端口 +|网关服务的 HTTP 和 HTTPS 节点端口。仅在网关的外部访问模式为 NodePort 时显示。 + +|副本 +|网关工作负载的容器组副本数量。 +|=== +-- diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/03-view-microservice-gateway-details.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/03-view-microservice-gateway-details.adoc new file mode 100644 index 000000000..de37693f7 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/03-view-microservice-gateway-details.adoc @@ -0,0 +1,72 @@ +--- +title: "查看微服务网关详情" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 查看微服务网关详情" +description: "介绍如何查看微服务网关详情。" +weight: 03 +--- + +:ks_permission: ** Spring Cloud 微服务查看** +:ks_navigation:  **Spring Cloud > 微服务网关** + + +本节介绍如何查看微服务网关详情。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere Spring Cloud** 扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在页面右侧选择**管理 > 查看详情**打开网关详情页面。 + +. 在网关详情页面左侧的**属性**区域查看网关的资源属性。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|集群 +|网关所属的集群。 + +|创建时间 +|网关的创建时间。 + +|更新时间 +|网关的更新时间 + +|创建者 +|启用网关的用户。 +|=== +-- + +. 在网关详情页面右侧是的**资源状态**页签查看网关的容器组副本数量、容器端口和容器组。 ++ +==== +* **副本**区域显示网关的期望容器组副本数量和当前容器组副本数量。 + +* **端口**区域显示网关的容器端口名称、协议和端口号。 + +* **容器组**区域显示网关的所有容器组副本。 ++ +-- +include::../../../../_custom-en/clusterManagement/nodes/nodes-para-podList.adoc[] +-- +==== + +. 在网关详情页面右侧点击**元数据**页签查看网关的标签和注解。 diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/04-edit-microservice-gateway-settings.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/04-edit-microservice-gateway-settings.adoc new file mode 100644 index 000000000..e043ceaa1 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/04-edit-microservice-gateway-settings.adoc @@ -0,0 +1,46 @@ +--- +title: "编辑微服务网关" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 编辑微服务网关" +description: "介绍如何编辑微服务网关。" +weight: 04 +--- + +:ks_permission: ** Spring Cloud 微服务管理** +:ks_navigation:  **Spring Cloud > 微服务网关** + + +本节介绍如何编辑微服务网关。 + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere Spring Cloud** 扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在页面右侧选择**管理 > 编辑**。 + +. 在**编辑微服务网关**对话框,修改微服务网关的参数,然后点击**确定**。 ++ +-- +有关微服务网关参数的更多信息,请参阅link:#_参数描述[参数描述]。 +-- + + +== 参数描述 + +include::../../../../_custom-en/projectManagement/microserviceGateway/microserviceGateway-para-microserviceGatewaySettings.adoc[] diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/05-delete-a-microservice-gateway.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/05-delete-a-microservice-gateway.adoc new file mode 100644 index 000000000..73d15cfb6 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/05-delete-a-microservice-gateway.adoc @@ -0,0 +1,44 @@ +--- +title: "删除微服务网关" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 删除微服务网关" +description: "介绍如何删除微服务网关。" +weight: 05 +--- + +:ks_permission: ** Spring Cloud 微服务管理** +:ks_navigation:  **Spring Cloud > 微服务网关** + + +本节介绍如何删除微服务网关。 + +// Warning +include::../../../../../_ks_components-en/admonitions/warning.adoc[] + +删除微服务网关将导致微服务的业务中断,请谨慎执行此操作。 + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + + +== Prerequisites + +* {ks_product_right}平台需要安装并启用 **KubeSphere Spring Cloud** 扩展组件。 + +* {empty} +include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[] + + + + +== Steps + +include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在页面右侧选择**管理 > 删除**。 + +. 在**删除**对话框,输入微服务网关的名称,然后点击**确定**。 diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/_index.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/_index.adoc new file mode 100644 index 000000000..b2b1d2be7 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/03-microservice-gateway/_index.adoc @@ -0,0 +1,13 @@ +--- +title: "微服务网关" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud, 微服务网关" +description: "介绍如何管理微服务网关。" +weight: 03 +layout: "second" +--- + + + +本节介绍如何管理微服务网关。 + +微服务网关是微服务的反向代理。来自客户端的请求先发送给微服务网关,再由微服务网关根据微服务路由转发给微服务。 diff --git a/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/_index.adoc b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/_index.adoc new file mode 100644 index 000000000..4812ffd65 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/18-spring-cloud/_index.adoc @@ -0,0 +1,15 @@ +--- +title: "KubeSphere Spring Cloud" +keywords: "Kubernetes, {ks_product}, 项目管理, Spring Cloud" +description: "介绍如何使用 Spring Cloud 功能。" +weight: 18 +layout: "second" +draft: true +--- + + +本节介绍如何使用 KubeSphere Spring Cloud 扩展组件。 + +KubeSphere Spring Cloud 扩展组件提供了微服务、微服务配置和微服务网关功能。微服务注册和配置功能基于 link:https://nacos.io[Nacos] 实现,微服务网关基于 Spring Cloud Gateway 实现。如果您原有的应用程序符合 Nacos 规范,KubeSphere Spring Cloud 功能可以帮助您在保持原有框架不变的同时获得容器化应用的运维效率。 + +安装 KubeSphere Spring Cloud 扩展组件后,项⽬左侧导航栏将显⽰ **Spring Cloud** 选项。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/19-tower/02-add-a-member-cluster-using-proxy-connection.adoc b/content/en/docs/v4.1/11-use-extensions/19-tower/02-add-a-member-cluster-using-proxy-connection.adoc new file mode 100644 index 000000000..e6ea7017a --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/19-tower/02-add-a-member-cluster-using-proxy-connection.adoc @@ -0,0 +1,110 @@ +--- +title: "通过代理连接添加成员集群" +keywords: "Kubernetes, {ks_product}, 多集群管理, 集群, 添加成员集群, 通过代理连接添加成员集群" +description: "介绍如何通过代理连接添加成员集群。" +weight: 02 +--- + + +本节介绍如何通过代理连接添加成员集群。 + +如果主集群无法访问成员集群的 Kubernetes API 服务,您可以设置成员集群连接到主集群对外暴露的 **tower** 服务从而添加成员集群。 + + +== Prerequisites + +* 您需要在主集群中具有 **platform-admin** 角色。 + +* {ks_product_right}平台需要安装并启用 **KubeSphere 多集群代理连接**扩展组件。 + +* 成员集群所有节点必须能访问主集群 **tower** 服务的外部访问地址。取决于您的网络环境,您可能需要配置防火墙和流量转发规则。 + +== 设置代理服务地址 + +在主集群安装“KubeSphere 多集群代理连接”扩展组件后,将在系统项目 kubesphere-system 中自动创建一个名为 tower 的服务。 + + +=== 集群中有可用的 LoadBalancer + +如果主集群中有可用的 LoadBalancer 插件,在主集群节点执行以下命令,可以看到 tower 服务有相应的 `EXTERNAL-IP` 地址。该地址将由 KubeSphere 自动获取并配置代理服务地址,这意味着您可以跳过设置代理服务地址这一步。 + +执行以下命令确认是否有 LoadBalancer 插件。 + +[,bash] +---- +kubectl -n kubesphere-system get svc +---- + +命令输出结果可能如下所示: + +[,bash] +---- +NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE +tower LoadBalancer 10.233.63.191 139.198.110.23 8080:30721/TCP 16h +---- + +[.admon.note,cols="a"] +|=== +|说明 + +| +主流公有云厂商一般会提供 LoadBalancer 解决方案,并且负载均衡器可以自动分配外部 IP。如果您的集群运行在本地环境中,尤其是在裸机环境中,可以使用 link:https://github.com/kubesphere/openelb[OpenELB] 作为负载均衡器解决方案。 +|=== + +=== 集群中没有可用的 LoadBalancer + +若主集群中没有可用的 LoadBalancer,执行 `kubectl -n kubesphere-system get svc` 命令后,输出结果可能如下所示。 + +[,bash] +---- +NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE +tower LoadBalancer 10.233.63.191 8080:30721/TCP 16h +---- + +由于 `EXTERNAL-IP` 处于 `pending` 状态,您需要手动设置代理地址,将 proxyPublishAddress 的值添加到 `kubesphere-config` ConfigMap 中。 + +. 在主集群节点,执行以下命令打开 kubesphere-config 配置字典。 ++ +[,bash] +---- +kubectl -n kubesphere-system edit cm kubesphere-config +---- + +. 搜索 `multicluster` 并添加新行,输入 `proxyPublishAddress` 来定义 tower 服务的外部 IP 地址,以便访问 Tower。 ++ +-- +[,bash] +---- +multicluster: + clusterRole: host + proxyPublishAddress: {公有 IP 地址}:{Port} # Add this line to set the address to access tower +---- + +[.admon.note,cols="a"] +|=== +|说明 + +| +您可能需要配置端口转发规则,例如,将公有 IP:Port 转发到 NodeIP:NodePort。 +|=== +-- + +== 添加成员集群 + +include::../../../_custom-en/platformManagement/multiclusterManagement/clusters/clusters-oper-logInToHost.adoc[] + ++ + +. 点击**集群管理**。 ++ +include::../../../_custom-en/platformManagement/multiclusterManagement/clusters/clusters-oper-addClusterBasicInfo.adoc[] ++ +在**高级设置**下,设置集群的用途标识。 + +. 在**连接设置**页签,将**连接方式**设置为**代理连接**,点击**下一步**。 + +. 在**集群配置**页签,设置集群配置,然后点击**创建**。 ++ +-- +成员集群添加完成后将显示在**集群管理**页面的集群列表中。 +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/19-tower/_index.adoc b/content/en/docs/v4.1/11-use-extensions/19-tower/_index.adoc new file mode 100644 index 000000000..3c62e8af6 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/19-tower/_index.adoc @@ -0,0 +1,20 @@ +--- +title: "KubeSphere 多集群代理连接" +description: "介绍如何使用“KubeSphere 多集群代理连接”扩展组件进行集群间的代理连接。" +weight: 19 +layout: "second" +--- + +本节介绍如何使用“KubeSphere 多集群代理连接”扩展组件进行集群间的代理连接。 + +KubeSphere 的组件 Tower 用于代理连接。Tower 是一种通过代理在集群间建立网络连接的工具。如果主集群无法直接访问成员集群,您可以暴露主集群的代理服务地址,这样可以让成员集群通过代理连接到主集群。当成员集群部署在私有环境(例如 IDC)并且主集群可以暴露代理服务时,适用此连接方法。当您的集群分布部署在不同的云厂商上时,同样适用代理连接的方法。 + +在主集群安装“KubeSphere 多集群代理连接”扩展组件后,将在系统项目 kubesphere-system 中自动创建一个名为 tower 的服务。通过此服务,可以通过代理连接添加成员集群。 + +[.admon.note,cols="a"] +|=== +|说明 + +| +有关组件配置的更多信息,请参阅扩展中心“KubeSphere 多集群代理连接”扩展组件的详情页说明。 +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/01-constraint-templates/01-create-a-constraint-template.adoc b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/01-constraint-templates/01-create-a-constraint-template.adoc new file mode 100644 index 000000000..78abe9144 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/01-constraint-templates/01-create-a-constraint-template.adoc @@ -0,0 +1,56 @@ +--- +title: "创建约束模板" +description: "介绍如何创建约束模板。" +weight: 01 +--- + +:ks_permission: ** cluster-admin ** +:ks_navigation: ** Gatekeeper > 约束模板** + + +本节介绍如何创建约束模板。 + + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **Gatekeeper** 扩展组件。 + + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +. 在**创建约束模板**对话框,设置约束模板的名称和目标(Targets),然后点击**确定**。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +| CRD 名称 +|约束模板对应的 CRD 名称。 + +|Targets +|Targets 是约束的目标对象,即需要应用约束规则的资源对象。Targets 可以是 Kubernetes 集群中的各种资源,如 Pod、Deployment、Namespace 等。约束将被应用于这些目标对象,以确保它们满足约束规则的要求。 + +|=== + +您将在**约束模板**页面查看已创建的约束模板。 +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/01-constraint-templates/03-view-constraint-template-details.adoc b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/01-constraint-templates/03-view-constraint-template-details.adoc new file mode 100644 index 000000000..897b9dd17 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/01-constraint-templates/03-view-constraint-template-details.adoc @@ -0,0 +1,61 @@ +--- +title: "查看约束模板详情" +description: "介绍如何查看约束模板详情。" +weight: 03 +--- + +:ks_permission: ** cluster-admin ** +:ks_navigation: ** Gatekeeper > 约束模板** + + +本节介绍如何查看约束模板详情。 + + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **Gatekeeper** 扩展组件。 + + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在约束模板列表中点击一个约束模板的名称打开其详情页面。 + +. 在约束模板详情页面左侧的**属性**区域,查看约束模板的基本信息。 ++ +-- + +[%header,cols="2,5"] +|=== +|参数 |描述 + +|集群 +|约束模板所属的集群。 + +|创建时间 +|约束模板的创建时间。 + +|CRD +|约束模板对应的 CRD 名称。 +|=== +-- + +. 在约束模板详情页面右侧的**目标**页签,查看约束模板的约束对象。 + +. 在约束模板详情页面右侧点击**状态**页签,查看约束模板的标签和注解。 + +. 在约束模板详情页面右侧点击**约束**页签,查看使用约束模板创建的约束条件。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/01-constraint-templates/04-edit-constraint-template-yaml.adoc b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/01-constraint-templates/04-edit-constraint-template-yaml.adoc new file mode 100644 index 000000000..6c03021c8 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/01-constraint-templates/04-edit-constraint-template-yaml.adoc @@ -0,0 +1,36 @@ +--- +title: "编辑约束模板配置" +description: "介绍如何编辑约束模板配置。" +weight: 04 +--- + +:ks_permission: ** cluster-admin ** +:ks_navigation: ** Gatekeeper > 约束模板** + + +本节介绍如何编辑约束模板配置。 + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **Gatekeeper** 扩展组件。 + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要编辑的约束模板右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑 YAML**。 + +. 在**编辑 YAML**对话框,修改相关配置,然后点击**确定**。 diff --git a/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/01-constraint-templates/07-delete-constraint-templates.adoc b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/01-constraint-templates/07-delete-constraint-templates.adoc new file mode 100644 index 000000000..6503226dd --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/01-constraint-templates/07-delete-constraint-templates.adoc @@ -0,0 +1,45 @@ +--- +title: "删除约束模板" +description: "介绍如何删除约束模板。" +weight: 07 +--- + +:ks_permission: ** cluster-admin ** +:ks_navigation: ** Gatekeeper > 约束模板** + + +本节介绍如何删除约束模板。 + +// Warning +include::../../../../../_ks_components-en/admonitions/warning.adoc[] + +约束模板删除后不能恢复,请谨慎执行此操作。 + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **Gatekeeper** 扩展组件。 + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要删除的约束模板右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**删除**。 + +. 在**删除约束模板**对话框,输入约束模板的名称,然后点击**确定**。 + + diff --git a/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/01-constraint-templates/_index.adoc b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/01-constraint-templates/_index.adoc new file mode 100644 index 000000000..e767d0ada --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/01-constraint-templates/_index.adoc @@ -0,0 +1,11 @@ +--- +title: "约束模板" +description: "介绍如何管理约束模板。" +weight: 01 +layout: "second" +--- + + +约束模板(ConstraintTemplates)是定义和管理约束的模板,用于验证 Gatekeeper 的 Kubernetes 准入控制器中的某些 Kubernetes 对象集。 + +约束模板可以被应用于集群,用于创建实际的约束实例。有关约束模板的更多信息,请参阅 link:https://open-policy-agent.github.io/gatekeeper/website/docs/howto/#constraint-templates[ConstraintTemplates]。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/01-create-a-constraint.adoc b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/01-create-a-constraint.adoc new file mode 100644 index 000000000..c27aeaa05 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/01-create-a-constraint.adoc @@ -0,0 +1,71 @@ +--- +title: "创建约束" +description: "介绍如何创建约束。" +weight: 01 +--- + +:ks_permission: ** cluster-admin ** +:ks_navigation: ** Gatekeeper > 约束** + + +本节介绍如何创建约束。 + + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **Gatekeeper** 扩展组件。 + +* 已创建一个约束模板。 + + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-clickCreate.adoc[] + ++ + +. 在**创建约束条件**对话框,设置以下参数,然后点击**确定**。 ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|约束条件名称 +|约束条件的名称。 + +|约束条件类型 +|约束条件使用的约束模板。 + +|enforcementAction +|`enforcementAction` 字段定义了处理约束违规的操作。默认设置为 `deny`,即默认拒绝任何违规的准入请求。有关更多信息,请参阅link:https://open-policy-agent.github.io/gatekeeper/website/docs/violations/[约束违规处理]。 + +|Match Kinds +|`match` 字段定义了约束适用的资源。有关更多信息,请参阅 link:https://open-policy-agent.github.io/gatekeeper/website/docs/howto/#the-match-field[match]。 + +`kinds` 接受包含 `apiGroups` 和 `kinds` 字段的对象列表,这些字段列出了约束适用对象的 groups/kinds。如果指定了多个 groups/kinds 对象,只需匹配其中一个对象,资源就会在约束的适用范围内。 + +|命名空间标签 +|针对对象所在的命名空间或对象本身(如果对象是一个命名空间)设置的可标识的键值对。 + +|参数 +|用于描述约束的意图。有关更多信息,请参阅 link:https://open-policy-agent.github.io/gatekeeper/website/docs/howto/#the-parameters-field[parameters]。 +|=== + +您将在**约束**页面查看已创建的约束。 +-- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/02-view-a-constraint-list.adoc b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/02-view-a-constraint-list.adoc new file mode 100644 index 000000000..43338f91b --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/02-view-a-constraint-list.adoc @@ -0,0 +1,56 @@ +--- +title: "查看约束列表" +description: "介绍如何查看约束列表。" +weight: 02 +--- + +:ks_permission: ** cluster-admin ** +:ks_navigation: ** Gatekeeper > 约束** + + +本节介绍如何查看约束列表。 + + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **Gatekeeper** 扩展组件。 + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ +==== + +* 约束列表提供以下信息: ++ +-- +[%header,cols="1a,4a"] +|=== +|参数 |描述 + +|名称 +|约束的名称。 + +|Kind +|约束使用的约束模板。 +|=== +-- + +* 在列表上方点击搜索框并输入关键字,可搜索名称包含特定关键字的约束。 + +include::../../../../../_ks_components-en/oper-refreshListData.adoc[] + +include::../../../../../_ks_components-en/oper-customizeColumns.adoc[] +==== diff --git a/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/03-view-constraint-details.adoc b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/03-view-constraint-details.adoc new file mode 100644 index 000000000..5c3931935 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/03-view-constraint-details.adoc @@ -0,0 +1,55 @@ +--- +title: "查看约束详情" +description: "介绍如何查看约束详情。" +weight: 03 +--- + +:ks_permission: ** cluster-admin ** +:ks_navigation: ** Gatekeeper > 约束** + + +本节介绍如何查看约束详情。 + + +== Prerequisites + + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **Gatekeeper** 扩展组件。 + + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在约束列表中点击一个约束的名称打开其详情页面。 + +. 在约束详情页面左侧的**属性**区域,查看约束的基本信息。 ++ +-- + +[%header,cols="2,5"] +|=== +|参数 |描述 + +|集群 +|约束所属的集群。 + +|创建时间 +|约束的创建时间。 + +|=== +-- + +. 在约束详情页面右侧的**Violations**页签,查看违规信息。 diff --git a/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/04-edit-constraint-yaml.adoc b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/04-edit-constraint-yaml.adoc new file mode 100644 index 000000000..cd97421e1 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/04-edit-constraint-yaml.adoc @@ -0,0 +1,36 @@ +--- +title: "编辑约束配置" +description: "介绍如何编辑约束配置。" +weight: 04 +--- + +:ks_permission: ** cluster-admin ** +:ks_navigation: ** Gatekeeper > 约束** + + +本节介绍如何编辑约束的配置。 + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **Gatekeeper** 扩展组件。 + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要编辑的约束右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**编辑 YAML**。 + +. 在**编辑 YAML**对话框,修改相关配置,然后点击**确定**。 diff --git a/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/07-delete-constraints.adoc b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/07-delete-constraints.adoc new file mode 100644 index 000000000..6c64b5f89 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/07-delete-constraints.adoc @@ -0,0 +1,44 @@ +--- +title: "删除约束" +description: "介绍如何删除约束。" +weight: 07 +--- + +:ks_permission: ** cluster-admin ** +:ks_navigation: ** Gatekeeper > 约束** + + +本节介绍如何删除约束。 + +// Warning +include::../../../../../_ks_components-en/admonitions/warning.adoc[] + +约束删除后不能恢复,请谨慎执行此操作。 + +include::../../../../../_ks_components-en/admonitions/admonEnd.adoc[] + + +== Prerequisites + +* {empty} +include::../../../../_custom-en/clusterManagement/clusterManagement-prer-requiredPermission_new.adoc[] + + + +* {ks_product_right}平台需要安装并启用 **Gatekeeper** 扩展组件。 + + +== Steps + +include::../../../../_custom-en/clusterManagement/clusterManagement-oper-openClusterPage.adoc[] + ++ + +include::../../../../../_ks_components-en/oper-navigate.adoc[] + ++ + +. 在需要删除的约束右侧点击image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],然后在下拉列表中选择**删除**。 + +. 在**删除约束**对话框,输入约束的名称,然后点击**确定**。 + diff --git a/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/_index.adoc b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/_index.adoc new file mode 100644 index 000000000..ca62e3edc --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/02-constraints/_index.adoc @@ -0,0 +1,10 @@ +--- +title: "约束" +description: "介绍如何管理约束。" +weight: 02 +layout: "second" +--- + +约束(Constraints)是指用于定义和实施集群策略的规则或条件,用于声明需要强制执行的 Gatekeeper 约束模板,是约束模板的实例。 + +有关约束的更多信息,请参阅 link:https://open-policy-agent.github.io/gatekeeper/website/docs/howto/#constraints[Constraints]。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/_index.adoc b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/_index.adoc new file mode 100644 index 000000000..7d8c5d9f7 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/20-gatekeeper/_index.adoc @@ -0,0 +1,23 @@ +--- +title: "Gatekeeper" +description: "介绍如何使用 Gatekeeper。" +weight: 20 +layout: "second" +--- + +link:https://github.com/open-policy-agent/gatekeeper[Gatekeeper] 是一个用于 Kubernetes 可灵活配置策略的准入控制器,利用 link:https://www.openpolicyagent.org/[Open Policy Agent (OPA)] 验证在 Kubernetes 集群上创建和更新资源的请求。 + +// Gatekeeper 可以根据 Gatekeeper 验证策略对集群中的资源进行验证。参阅:https://open-policy-agent.github.io/gatekeeper-library/website/ + +link:https://open-policy-agent.github.io/gatekeeper-library/website/[OPA Gatekeeper Library] 提供了一些常用的安全准入策略,其中包含一系列可在 Gatekeeper 使用的约束模板(ConstraintTemplates)和约束(Constraints)。约束模板可直接应用于集群,约束可用于定制策略,以满足您的特定需求。 + +借助 Gatekeeper 灵活地定义准入策略,在集群层面强制执行安全准入审查,从而确保 Kubernetes 集群的稳定性和安全合规。 + +Gatekeeper 的主要特性包括: + +* **灵活**: Gatekeeper 允许用户声明式的定义准入策略,作用于选定的 namespace 与选定的资源类型。 +* **可编程**: Gatekeeper 使用 Open Policy Agent(OPA)作为决策引擎,可借助 Rego 实现复杂的安全策略定义。 +* **滚动发布**: 支持以循序渐进的方式逐步执行准入策略,从而规避中断工作负载的风险。 +* **预发布机制**: Gatekeeper 提供在强制执行之前测试安全策略影响和范围的机制。 + + diff --git a/content/en/docs/v4.1/11-use-extensions/21-oauth2-proxy/01-config-oauth2-proxy.adoc b/content/en/docs/v4.1/11-use-extensions/21-oauth2-proxy/01-config-oauth2-proxy.adoc new file mode 100644 index 000000000..3a322574e --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/21-oauth2-proxy/01-config-oauth2-proxy.adoc @@ -0,0 +1,259 @@ +--- +title: "配置并访问服务" +keywords: "Kubernetes, {ks_product}, OAuth2-Proxy, alertmanager" +description: "介绍如何配置 OAuth2-Proxy 扩展组件以访问服务。" +weight: 01 +--- + +OAuth2-Proxy 支持多种 link:https://oauth2-proxy.github.io/oauth2-proxy/configuration/providers/[OAuth Providers]。本节介绍如何配置该扩展组件将 KubeSphere 作为 OAuth Provider,以便通过 KubeSphere 认证登录后,直接访问各种服务。 + +// 在 Ingress 场景下借助 Oauth2-Proxy 扩展组件,为应用提供基于 KubeSphere 用户的身份认证 +// 在 NodePort 场景下借助 Oauth2-Proxy 扩展组件及自定义路由,为应用提供基于 KubeSphere 用户的身份认证 + +== 配置 OAuth2-Proxy + +OAuth2-Proxy 扩展组件提供 NodePort 和 Ingress 两种方式,为应用提供基于 KubeSphere 用户的统一身份认证。不同方式下,配置 OAuth2-Proxy 的方法不同。 + +=== NodePort 方式 + +通过将扩展组件中的 OpenResty NodePort 对外暴露,为代理应用提供统一访问入口。 + +在扩展组件配置中,修改 `global.host`,并确认 `openresty.service.nodePort`,完成扩展组件的部署。 + +[,yaml] +---- +global: + # OAuth2-Proxy service external access address + # For example, using NodePort, the address is http://172.31.19.4:32080, + # using Ingress, the host is http://172.31.19.4.nip.io:80 + host: "http://" + + # Kubesphere portal address. For example, http://172.31.19.4:30880 + # No need to set this explicitly, KubeSphere's portal address will be auto-injected. + portal.url: "http://" + +openresty: + enabled: true + + service: + type: NodePort + portNumber: 80 + nodePort: 32080 + annotations: {} + +oauth2-proxy: + extraArgs: + provider: oidc + provider-display-name: "kubesphere" + # Issuer address + # The KubeSphere portal URL is filled by default, but if you use another OAuth Provider, change it + oidc-issuer-url: "{{ .Values.global.portal.url }}" +---- + +=== Ingress 方式 + +OAuth2-Proxy 支持通过 Ingress 方式为应用配置统一认证,在这种场景下,Ingress 将替代 OpenResty 提供统一的服务入口和反向代理功能。 + +. 在扩展组件配置中,将 `openresty.enabled` 改为 false,`ingress.enabled` 改为 true,并修改 `global.host`,即可完成扩展组件的部署。 ++ +-- +[,yaml] +---- +global: + # OAuth2-Proxy service external access address + # For example, using NodePort, the address is http://172.31.19.4:32080, + # using Ingress, the host is http://172.31.19.4.nip.io:80 + host: "http://" + + # Kubesphere portal address. For example, http://172.31.19.4:30880 + # No need to set this explicitly, KubeSphere's portal address will be auto-injected. + portal.url: "http://" + +openresty: + enabled: false + +oauth2-proxy: + extraArgs: + provider: oidc + provider-display-name: "kubesphere" + # Issuer address + # The KubeSphere portal URL is filled by default, but if you use another OAuth Provider, change it + oidc-issuer-url: "{{ .Values.global.portal.url }}" + + ingress: + enabled: true + className: nginx +---- +-- + +. 在应用的 Ingress 字段中添加相关注解,请参考 link:https://kubernetes.github.io/ingress-nginx/examples/auth/oauth-external-auth/[ingress-nginx/External OAUTH Authentication] 示例。 ++ +[,yaml] +---- +... +metadata: + name: application + annotations: + nginx.ingress.kubernetes.io/auth-url: "https://$host/oauth2/auth" + nginx.ingress.kubernetes.io/auth-signin: "https://$host/oauth2/start?rd=$escaped_request_uri" +... +---- + + +=== 注意事项 + +如果您使用 KubeSphere 4.x 作为 OAuth Provider,请确保 KubeSphere Console 的外部访问地址与 configmap `kubesphere-config` 中的 `issuer.url` 一致。如不一致,需按照以下步骤进行更新。 + +[,yaml] +---- +apiVersion: v1 +kind: ConfigMap +metadata: + name: kubesphere-config + namespace: kubesphere-system +data: + kubesphere.yaml: | + authentication: + issuer: + url: "http://172.31.19.4:30880" # 确认 issuer 地址 +---- + +. 复制 ks-core 的 values.yaml 文件,新建为 `custom-kscore-values.yaml`。 ++ +[,bash] +---- +cp ks-core/values.yaml custom-kscore-values.yaml +---- + +. 修改 `portal.hostname`,配置为实际地址。 ++ +[,yaml] +---- +portal: + ## The IP address or hostname to access ks-console service. + ## DO NOT use IP address if ingress is enabled. + hostname: "172.31.19.4" + http: + port: 30880 +---- + +. 更新 ks-core。 ++ +-- +[,bash] +---- +helm upgrade --install -n kubesphere-system --create-namespace ks-core ${kscore_chart_path} -f ./custom-kscore-values.yaml --debug --wait +---- +-- + +== 示例 1:通过 NodePort 访问 AlertManager 服务 + +. 在扩展组件配置中,修改 `global.host`,并确认 `openresty.service.nodePort`。 + +. 然后修改 `openresty.configs` 配置如下。 ++ +[,yaml] +---- +openresty: + configs: + - name: alertmanager + description: KubeSphere 监控栈内部 Alertmanager 端点 + subPath: /alertmanager/ + endpoint: http://whizard-notification-alertmanager.kubesphere-monitoring-system.svc:9093/ +---- + +. 配置完成后,访问 OAuth2-Proxy 的外部地址,如 http://172.31.19.4:32080,通过 KubeSphere 认证登录后,即可在首页看到 Alertmanager 服务的入口,点击即可访问。 + +== 示例 2:通过 Ingress 访问 AlertManager 服务 + +. 在扩展组件配置中,将 `openresty.enabled` 改为 false,`ingress.enabled` 改为 true,并修改 `global.host`。 + +. 安装 ingress-nginx controller。 ++ +[,bash] +---- +helm upgrade --install ingress-nginx ingress-nginx \ + --repo https://kubernetes.github.io/ingress-nginx \ + --namespace ingress-nginx --create-namespace +---- + +. 修改名为 ingress-nginx-controller 的 deployment。设置 ingress 对外访问方式,当前link:https://kubernetes.github.io/ingress-nginx/deploy/baremetal/#via-the-host-network[以hostnetwork 方式暴露]。 ++ +[,yaml] +---- +spec: + nodeName: # 替换为实际节点名称 + hostNetwork: true +---- + +. 创建 alertmanager 自定义资源、服务和 ingress。 ++ +-- +[,bash] +---- +vim alertmanager.yaml +---- + +[,yaml] +---- +apiVersion: monitoring.coreos.com/v1 +kind: Alertmanager +metadata: + name: main + namespace: extension-oauth2-proxy +spec: + externalUrl: http://172.31.19.4.nip.io/alertmanager # 替换为实际地址 + portName: web + replicas: 1 + resources: + requests: + memory: 400Mi +--- +apiVersion: v1 +kind: Service +metadata: + name: alertmanager-main + namespace: extension-oauth2-proxy +spec: + type: ClusterIP + ports: + - name: web + port: 9093 + protocol: TCP + targetPort: web + selector: + alertmanager: main +--- +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + annotations: + nginx.ingress.kubernetes.io/auth-signin: https://$host/oauth2/start?rd=$escaped_request_uri + nginx.ingress.kubernetes.io/auth-url: https://$host/oauth2/auth + nginx.ingress.kubernetes.io/rewrite-target: /$2 + name: alertmanager-ingress + namespace: extension-oauth2-proxy +spec: + ingressClassName: nginx + rules: + - host: 172.31.19.4.nip.io # 替换为实际地址 + http: + paths: + - backend: # 应用配置部分 + service: + name: alertmanager-main + port: + number: 9093 + path: /alertmanager(/|$)(.*) + pathType: ImplementationSpecific +---- +-- + +. 部署 Alertmanager 服务。 ++ +[,bash] +---- +kubectl apply -f alertmanager.yaml +---- + +. 在浏览器中访问 `.nip.io/alertmanager`,如 172.31.19.4.nip.io/alertmanager,即可访问 Alertmanager 的用户界面。 diff --git a/content/en/docs/v4.1/11-use-extensions/21-oauth2-proxy/_index.adoc b/content/en/docs/v4.1/11-use-extensions/21-oauth2-proxy/_index.adoc new file mode 100644 index 000000000..3109bc6c3 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/21-oauth2-proxy/_index.adoc @@ -0,0 +1,18 @@ +--- +title: "OAuth2-Proxy" +keywords: "Kubernetes, {ks_product}, OAuth2-Proxy, alertmanager" +description: "介绍如何使用 OAuth2-Proxy 扩展组件。" +weight: 21 +layout: "second" +draft: true +--- + + +OAuth2-Proxy 扩展组件旨在保护后端应用并提供统一的认证服务。通过处理 OAuth2 协议的认证流程,允许用户通过第三方认证服务(如 Google、GitHub、KubeSphere)进行登录,并生成用户会话。link:https://openresty.org/[OpenResty] 作为反向代理服务器,接收 HTTP 请求并转发给后端应用。 + +OAuth2-Proxy 提供统一认证接口确保所有应用通过相同流程保护,简化多应用环境下的身份验证管理,提高安全性和用户体验,适用于需要对多个后端应用进行统一认证管理的企业环境,以及需要通过第三方认证服务进行用户身份验证的应用。 + +// 扩展组件配置后,可通过{ks_product_both}平台鉴权后访问多种服务,如 AlertManager、Prometheus、Whizard 等。 + + + diff --git a/content/en/docs/v4.1/11-use-extensions/22-nvidia-gpu-operator/01-intro.adoc b/content/en/docs/v4.1/11-use-extensions/22-nvidia-gpu-operator/01-intro.adoc new file mode 100644 index 000000000..bf5758aa0 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/22-nvidia-gpu-operator/01-intro.adoc @@ -0,0 +1,20 @@ +--- +title: "概述" +keywords: "Kubernetes, {ks_product}, GPU Operator, NVIDIA" +description: "介绍 NVIDIA GPU Operator 扩展组件。" +weight: 01 +--- + +NVIDIA GPU Operator 是一个基于 link:https://github.com/NVIDIA/gpu-operator[GPU Operator] 改造的扩展组件,旨在适配 KubeSphere LuBan 可插拔架构,支持在 Kubernetes 上创建、配置和管理 GPU。 + +Kubernetes 借助 link:https://kubernetes.io/docs/concepts/extend-kubernetes/compute-storage-net/device-plugins/[device plugin framework] 提供对 NVIDIA GPU、NIC、Infiniband 适配器等特殊硬件资源的访问。然而,配置和管理这些硬件资源节点需要配置多个软件组件,如驱动程序、容器运行时或其他库,这些过程既复杂又容易出错。NVIDIA GPU Operator 在 Kubernetes 中使用 link:https://cloud.redhat.com/blog/introducing-the-operator-framework[operator framework] 自动管理 GPU 所需的所有 NVIDIA 软件组件,包括用于启用 CUDA 的 NVIDIA 驱动程序、用于 GPU 的 Kubernetes 设备插件、NVIDIA 容器运行时、自动节点标记、基于 link:https://developer.nvidia.com/dcgm[DCGM] 的监控等。 + +== 受众和使用场景 + +GPU Operator 允许 Kubernetes 集群管理员像管理集群 CPU 节点一样管理 GPU 节点。管理员不需要为 GPU 节点指定操作系统镜像,而是可以依赖于 CPU 和 GPU 节点的标准操作系统镜像,然后依赖 GPU Operator 为 GPU 提供所需的软件组件。 + +需要注意的是,GPU Operator 特别适用于 Kubernetes 集群需要快速扩展的场景,例如在云端或本地增加 GPU 节点并管理底层软件组件的生命周期。由于 GPU Operator 将所有内容都作为容器运行,包括 NVIDIA 驱动程序,管理员可以轻松更换各种组件——只需启动或停止容器即可。 + +== 产品文档 + +有关平台支持和入门信息,请访问link:https://docs.nvidia.com/datacenter/cloud-native/gpu-operator/overview.html[官方文档]。 \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/22-nvidia-gpu-operator/_index.adoc b/content/en/docs/v4.1/11-use-extensions/22-nvidia-gpu-operator/_index.adoc new file mode 100644 index 000000000..d718ba821 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/22-nvidia-gpu-operator/_index.adoc @@ -0,0 +1,8 @@ +--- +title: "NVIDIA GPU Operator" +keywords: "Kubernetes, {ks_product}, GPU Operator, NVIDIA" +description: "介绍 NVIDIA GPU Operator 扩展组件。" +weight: 22 +layout: "second" +draft: true +--- diff --git a/content/en/docs/v4.1/11-use-extensions/23-cert-manager/01-intro.adoc b/content/en/docs/v4.1/11-use-extensions/23-cert-manager/01-intro.adoc new file mode 100644 index 000000000..317a59c63 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/23-cert-manager/01-intro.adoc @@ -0,0 +1,20 @@ +--- +title: "概述" +keywords: "Kubernetes, {ks_product}, 证书管理, 更新证书" +description: "介绍证书管理扩展组件。" +weight: 01 +--- + +Cert Manager (证书管理) 为 Kubernetes 中的工作负载创建 TLS 证书,并在证书过期前续订。 + +Cert Manager 可以从各种证书颁发机构获取证书,包括:Let’s Encrypt、HashiCorp Vault、Venafi 和私有 PKI。 + +安装扩展组件时,在扩展组件配置下,开启 `defaultIssuer` 字段下的参数,会生成一个 ClusterIssuer, 名为 `default-issuer`。 默认的 ClusterIssuer 可用来给其他组件颁发证书。例如,使用 KubeSphere 网关时,可为路由自动生成和更新证书。 + +[.admon.note,cols="a"] +|=== +|说明 + +| +有关组件配置的更多信息,请参阅扩展中心“证书管理”扩展组件的详情页说明。 +|=== \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/23-cert-manager/_index.adoc b/content/en/docs/v4.1/11-use-extensions/23-cert-manager/_index.adoc new file mode 100644 index 000000000..ae2ebbcad --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/23-cert-manager/_index.adoc @@ -0,0 +1,8 @@ +--- +title: "证书管理" +keywords: "Kubernetes, {ks_product}, 证书管理, 更新证书" +description: "介绍证书管理扩展组件。" +weight: 23 +layout: "second" +draft: true +--- \ No newline at end of file diff --git a/content/en/docs/v4.1/11-use-extensions/_index.adoc b/content/en/docs/v4.1/11-use-extensions/_index.adoc new file mode 100644 index 000000000..de2977ce2 --- /dev/null +++ b/content/en/docs/v4.1/11-use-extensions/_index.adoc @@ -0,0 +1,11 @@ +--- +title: "Extension User Guide" +keywords: "Kubernetes, {ks_product}, Extensions, User Guide, DevOps, DMP, whizard, Observability" +description: "Learn how to use various extensions." +weight: 11 +layout: "second" +icon: "/images/docs/common/docs.svg" +draft: true +--- + +This section explains how to use the various extensions in KubeSphere. Before using them, please first link:../06-extension-user-guide/01-install-components-pdf/[Install Extensions]. \ No newline at end of file diff --git a/content/zh/docs/_custom/clusterManagement/workloads/workloads-multi-project-oper-createAWorkload-ClusterDiff.adoc b/content/zh/docs/_custom/clusterManagement/workloads/workloads-multi-project-oper-createAWorkload-ClusterDiff.adoc index b38edbaa0..c5bc79343 100644 --- a/content/zh/docs/_custom/clusterManagement/workloads/workloads-multi-project-oper-createAWorkload-ClusterDiff.adoc +++ b/content/zh/docs/_custom/clusterManagement/workloads/workloads-multi-project-oper-createAWorkload-ClusterDiff.adoc @@ -8,4 +8,6 @@ . 在**高级设置**页签,为工作负载管理的容器组指定节点,并设置工作负载的元数据。 -. 在**集群差异设置**页签,为不同集群中的工作负载基于容器、端口和环境变量进行差异化设置,然后点击**创建**。工作负载创建完成后将显示在工作负载列表中。 \ No newline at end of file +. 在**集群差异设置**页签,为不同集群中的工作负载基于容器、端口和环境变量进行差异化设置,然后点击**创建**。 ++ +工作负载创建完成后将显示在工作负载列表中。 \ No newline at end of file diff --git a/content/zh/docs/_custom/projectManagement/apps/apps-oper-viewResourceStatus.adoc b/content/zh/docs/_custom/projectManagement/apps/apps-oper-viewResourceStatus.adoc index 967e042d1..fa5b9247d 100644 --- a/content/zh/docs/_custom/projectManagement/apps/apps-oper-viewResourceStatus.adoc +++ b/content/zh/docs/_custom/projectManagement/apps/apps-oper-viewResourceStatus.adoc @@ -1,5 +1,5 @@ // :ks_include_id: c4590bcc1e7e440b8eaf162491107dc0 -. 在应用详情页面左侧的**资源状态**页签查看组成应用的应用路由、服务和工作负载。 +. 在应用详情页面的**资源状态**页签查看组成应用的应用路由、服务和工作负载。 * **应用路由**区域提供以下信息: + diff --git a/content/zh/docs/v4.1/01-intro/01-introduction.adoc b/content/zh/docs/v4.1/01-intro/01-introduction.adoc index feb5bb385..e2ddbec8b 100644 --- a/content/zh/docs/v4.1/01-intro/01-introduction.adoc +++ b/content/zh/docs/v4.1/01-intro/01-introduction.adoc @@ -5,7 +5,7 @@ description: "介绍 KubeSphere LuBan 的背景和优势。" weight: 01 --- -{ks_product_right},是基于 Kubernetes 内核的分布式多租户商用云原生操作系统。在开源能力的基础上,在多云集群管理、微服务治理、应用管理等多个核心业务场景进行功能延伸。商用扩展中心实现高度模块化,满足不同场景业务需求。以强大的企业级云原生底座,完善的专家级解决方案和服务支持,赋能企业数字化转型和规模化运营。 +{ks_product},是基于 Kubernetes 内核的分布式多租户商用云原生操作系统。在开源能力的基础上,在多云集群管理、微服务治理、应用管理等多个核心业务场景进行功能延伸。商用扩展中心实现高度模块化,满足不同场景业务需求。以强大的企业级云原生底座,完善的专家级解决方案和服务支持,赋能企业数字化转型和规模化运营。 自{ks_product_left} v4.0 起,引入扩展机制,推出了全新的 KubeSphere 架构:**KubeSphere LuBan**,它构建在 link:https://kubernetes.io/zh-cn/docs/concepts/extend-kubernetes/[Kubernetes] 之上,支持高度可配置和可扩展。KubeSphere LuBan,是一个分布式的云原生可扩展开放架构,为扩展组件提供一个可热插拔的微内核。自此,KubeSphere 所有功能组件及第三方组件都会基于 KubeSphere LuBan,以扩展组件的方式无缝融入到 KubeSphere 控制台中,并独立维护版本,真正实现即插即用的应用级云原生操作系统。 diff --git a/content/zh/docs/v4.1/03-installation-and-upgrade/02-install-kubesphere/02-install-kubernetes-and-kubesphere.adoc b/content/zh/docs/v4.1/03-installation-and-upgrade/02-install-kubesphere/02-install-kubernetes-and-kubesphere.adoc index 46b577731..597f9beb1 100644 --- a/content/zh/docs/v4.1/03-installation-and-upgrade/02-install-kubesphere/02-install-kubernetes-and-kubesphere.adoc +++ b/content/zh/docs/v4.1/03-installation-and-upgrade/02-install-kubesphere/02-install-kubernetes-and-kubesphere.adoc @@ -159,12 +159,11 @@ include::../../../../_ks_components/admonitions/admonEnd.adoc[] 在 Ubuntu 操作系统上,执行以下命令为服务器安装依赖项: -// Bash -include::../../../../_ks_components/code/bash.adoc[] - -sudo apt install socat conntrack ebtables ipset -y - +[source,bash] ---- +sudo apt install socat conntrack ebtables ipset -y +---- + 如果集群节点使用其他操作系统,请将 **apt** 替换为操作系统对应的软件包管理工具。 @@ -183,7 +182,8 @@ include::../../../_custom/installationAndUpgrade/installationAndUpgrade-oper-dow + -- // Bash -include::../../../../_ks_components/code/bash.adoc[] +[source,bash] +----  ./kk create config --with-kubernetes @@ -200,16 +200,16 @@ include::../../../_custom/installationAndUpgrade/installationAndUpgrade-note-doN + -- // Bash -include::../../../../_ks_components/code/bash.adoc[] - +[source,bash] +---- vi config-sample.yaml ---- 以下为部分示例配置文件,如需了解完整示例,请参阅link:https://github.com/kubesphere/kubekey/blob/master/docs/config-example.md[此文件]。 // YAML -include::../../../../_ks_components/code/yaml.adoc[] - +[source,yaml] +---- apiVersion: kubekey.kubesphere.io/v1alpha2 kind: Cluster metadata: @@ -253,7 +253,6 @@ spec: # harbor 不支持 arm64,arm64 环境部署时,可不配置该参数。 type: harbor # 如使用 kk 部署的 harbor 或其他需要登录的仓库,需设置对应仓库的 auths,如使用 kk 部署默认的 docker registry 仓库,则无需配置 auths 参数。 - # 注意:如使用 kk 部署 harbor,auths 参数请于创建 harbor 项目之后设置。 auths: "dockerhub.kubekey.local": username: admin # harbor 默认用户名 @@ -263,7 +262,6 @@ spec: registryMirrors: [] insecureRegistries: [] addons: [] - ---- -- diff --git a/content/zh/docs/v4.1/03-installation-and-upgrade/02-install-kubesphere/04-offline-installation.adoc b/content/zh/docs/v4.1/03-installation-and-upgrade/02-install-kubesphere/04-offline-installation.adoc new file mode 100644 index 000000000..3d3abf7b2 --- /dev/null +++ b/content/zh/docs/v4.1/03-installation-and-upgrade/02-install-kubesphere/04-offline-installation.adoc @@ -0,0 +1,706 @@ +--- +title: "离线安装 KubeSphere" +linkTitle: "离线安装 KubeSphere" +keywords: "Kubernetes, KubeSphere, 安装, 离线包, 离线安装, 离线部署" +description: "了解如何在离线环境下安装 KubeSphere 和 Kubernetes。" +weight: 04 +--- + + +本节介绍如何使用 KubeKey 在联网状态下制作离线包,并在离线环境中部署 Kubernetes 和 KubeSphere。 + +== 前提条件 + +* 参考如下示例准备至少三台主机。 ++ +[%header,cols="1a,1a, 4a"] +|=== +|主机 IP |主机名称 |角色 + +|192.168.0.2 |node1 |联网主机,用于制作离线包 +|192.168.0.3 |master |离线环境的主节点 +|192.168.0.4 |node2 |离线环境的镜像仓库节点(若已有镜像仓库,可忽略) +|=== + +* master 和 node2 上需安装 socat 和 conntrack。 ++ +-- +[,bash] +---- +apt install socat conntrack -y +---- + +如果集群节点使用其他操作系统,请将 **apt** 替换为操作系统对应的软件包管理工具。 +-- + +== 获取版本信息及镜像列表 + +. 访问 https://get-images.kubesphere.io/。 + +. 选择需要部署的扩展组件。 + +. 填入邮箱地址。 + +. 点击**获取镜像列表**。 + +. 查看填写的邮箱,获取 KubeSphere 最新的版本信息以及镜像列表文件。 ++ +-- +镜像列表文件如下: + +[%header,cols="1a,3a"] +|=== +|文件名 |描述 + +| `kubesphere-images.txt` +|包含 KubeSphere 及扩展组件涉及的所有镜像,以及在华为云的镜像地址,可根据该文件中的列表将镜像同步至离线仓库中。 + +| `kk-manifest.yaml` +|包含 KubeSphere 及扩展组件涉及的所有镜像,可使用 kk 快速构建离线包。 + +| `kk-manifest-mirror.yaml` +|包含华为云镜像仓库中 KubeSphere 及扩展组件涉及的所有镜像。访问 DockerHub 受限时可使用该 manifest 文件构建离线包。 +|=== +-- + +== 构建离线安装包 + +登录可访问互联网的节点 node1,参照以下步骤构建 KubeSphere 离线安装包。 + +=== 1. 安装 KubeKey + +执行以下命令安装⼯具 KubeKey。 + +下载完成后当前目录下将生成 KubeKey 二进制文件 **kk**。 + +[source,bash] +---- +curl -sSL https://get-kk.kubesphere.io | sh - +---- + + +=== 2. 创建 manifests 文件 + +[.admon.attention,cols="a"] +|=== +|注意 + +| +若只需要使用 kk 打包 KubeSphere 镜像至离线环境中,可直接使用邮件中收到的 manifest 文件link:#_4_构建离线包[构建离线包]。无需另外创建或编辑 manifest 文件。 +|=== + +若需要使用 kk 部署 Kubernetes 以及镜像仓库,可参考以下步骤: + +. 如果您访问 DockerHub 受限,执行以下命令将 Kubernetes 镜像地址替换为阿里云仓库。 ++ +[,bash] +---- +export KKZONE=cn +---- + +. 创建 manifests 文件。 ++ +-- +[source,bash] +---- +# 如需使用 kk 离线部署镜像仓库,添加 --with-registry 打包镜像仓库的安装文件 +./kk create manifest --with-kubernetes v1.26.12 --with-registry +---- + +该命令将创建一个 `manifest-sample.yaml` 文件。 +-- + +=== 3. 编辑 manifest 文件 + +若需要使用 kk 部署 Kubernetes 以及镜像仓库,将从邮件获取到的 KubeSphere 镜像列表添加到新创建的 manifest 文件中即可。 + +. 打开 manifest 文件。 ++ +[source,bash] +---- +vi manifest-sample.yaml +---- + +. 复制 `kk-manifest.yaml` 或 `kk-manifest-mirror.yaml`(若访问 DockerHub 受限) 中的镜像列表,添加到新创建的 `manifest-sample.yaml` 文件中。 ++ +-- +[.admon.attention,cols="a"] +|=== +|注意 + +|以下 manifest 文件中的镜像列表仅为示例,建议通过 https://get-images.kubesphere.io/ 获取最新的镜像列表。 + +|=== + + +[source,yaml] +---- +apiVersion: kubekey.kubesphere.io/v1alpha2 +kind: Manifest +metadata: + name: sample +spec: + arches: + - amd64 + operatingSystems: [] + kubernetesDistributions: + - type: kubernetes + version: v1.26.12 + components: + helm: + version: v3.14.3 + cni: + version: v1.2.0 + etcd: + version: v3.5.13 + containerRuntimes: + - type: docker + version: 24.0.9 + - type: containerd + version: 1.7.13 + calicoctl: + version: v3.27.4 + crictl: + version: v1.29.0 + docker-registry: + version: "2" + harbor: + version: v2.10.1 + docker-compose: + version: v2.26.1 + images: + - registry.cn-beijing.aliyuncs.com/kubesphereio/pause:3.9 + - registry.cn-beijing.aliyuncs.com/kubesphereio/kube-apiserver:v1.26.12 + - registry.cn-beijing.aliyuncs.com/kubesphereio/kube-controller-manager:v1.26.12 + - registry.cn-beijing.aliyuncs.com/kubesphereio/kube-scheduler:v1.26.12 + - registry.cn-beijing.aliyuncs.com/kubesphereio/kube-proxy:v1.26.12 + - registry.cn-beijing.aliyuncs.com/kubesphereio/coredns:1.9.3 + - registry.cn-beijing.aliyuncs.com/kubesphereio/k8s-dns-node-cache:1.22.20 + - registry.cn-beijing.aliyuncs.com/kubesphereio/kube-controllers:v3.27.4 + - registry.cn-beijing.aliyuncs.com/kubesphereio/cni:v3.27.4 + - registry.cn-beijing.aliyuncs.com/kubesphereio/node:v3.27.4 + - registry.cn-beijing.aliyuncs.com/kubesphereio/pod2daemon-flexvol:v3.27.4 + - registry.cn-beijing.aliyuncs.com/kubesphereio/typha:v3.27.4 + - registry.cn-beijing.aliyuncs.com/kubesphereio/provisioner-localpv:3.3.0 + - registry.cn-beijing.aliyuncs.com/kubesphereio/linux-utils:3.3.0 + - registry.cn-beijing.aliyuncs.com/kubesphereio/haproxy:2.9.6-alpine + - registry.cn-beijing.aliyuncs.com/kubesphereio/kube-vip:v0.7.2 + ## ks-core + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/ks-apiserver:v4.1.2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/ks-console:v4.1.2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/ks-controller-manager:v4.1.2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kubectl:v1.27.16 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/redis:7.2.4-alpine + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/haproxy:2.9.6-alpine + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/ks-extensions-museum:v1.1.2 + ## devops + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/devops-apiserver:v4.1.2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/devops-controller:v4.1.2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/devops-tools:v4.1.2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/devops-jenkins:v4.1.2-2.346.3 + - swr.cn-southwest-2.myhuaweicloud.com/ks/jenkins/inbound-agent:4.10-2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-base:v3.2.2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-nodejs:v3.2.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-maven:v3.2.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-maven:v3.2.1-jdk11 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-python:v3.2.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-go:v3.2.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-go:v3.2.2-1.16 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-go:v3.2.2-1.17 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-go:v3.2.2-1.18 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-base:v3.2.2-podman + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-nodejs:v3.2.0-podman + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-maven:v3.2.0-podman + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-maven:v3.2.1-jdk11-podman + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-python:v3.2.0-podman + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-go:v3.2.0-podman + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-go:v3.2.2-1.16-podman + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-go:v3.2.2-1.17-podman + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/builder-go:v3.2.2-1.18-podman + - swr.cn-southwest-2.myhuaweicloud.com/ks/argoproj/argocd:v2.3.3 + - swr.cn-southwest-2.myhuaweicloud.com/ks/argoproj/argocd-applicationset:v0.4.1 + - swr.cn-southwest-2.myhuaweicloud.com/ks/dexidp/dex:v2.30.2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/library/redis:6.2.6-alpine + ## gatekeeper + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/gatekeeper-extension-apiserver:v1.0.1 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kubectl:v1.27.12 + - swr.cn-southwest-2.myhuaweicloud.com/ks/openpolicyagent/gatekeeper:v3.14.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/openpolicyagent/gatekeeper-crds:v3.14.0 + ## gateway + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/nginx-ingress-controller:v1.4.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/gateway-apiserver:v1.0.2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/gateway-controller-manager:v1.0.2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kubectl:v1.27.16 + ## grafana + - swr.cn-southwest-2.myhuaweicloud.com/ks/curlimages/curl:7.85.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/grafana/grafana:10.4.1 + - swr.cn-southwest-2.myhuaweicloud.com/ks/library/busybox:1.31.1 + ## kubeedge + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubeedge/iptables-manager:v1.13.1 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubeedge/cloudcore:v1.13.1 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubeedge/controller-manager:v1.13.1 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kubeedge-proxy:v0.4.1 + ## kubefed + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kubefed-extension:v1.0.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kubefed:v0.8.1 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kubectl:v1.27.4 + ## loki + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kubectl:v1.27.12 + - swr.cn-southwest-2.myhuaweicloud.com/ks/grafana/loki:3.0.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/grafana/loki-helm-test:ewelch-distributed-helm-chart-17db5ee + - swr.cn-southwest-2.myhuaweicloud.com/ks/grafana/loki-canary:3.0.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/nginxinc/nginx-unprivileged:1.24-alpine + - swr.cn-southwest-2.myhuaweicloud.com/ks/library/memcached:1.6.23-alpine + - swr.cn-southwest-2.myhuaweicloud.com/ks/prom/memcached-exporter:v0.14.2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kiwigrid/k8s-sidecar:1.24.3 + - swr.cn-southwest-2.myhuaweicloud.com/ks/minio/minio:RELEASE.2022-09-17T00-09-45Z + - swr.cn-southwest-2.myhuaweicloud.com/ks/minio/mc:RELEASE.2022-09-16T09-16-47Z + ## metrics-server + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/metrics-server:v0.7.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/addon-resizer:1.8.20 + ## network + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/network-extension-apiserver:v1.1.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/network-extension-controller:v1.1.0 + ## openpitrix + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/apps-manage:v2.0.1 + ## opensearch + - swr.cn-southwest-2.myhuaweicloud.com/ks/opensearchproject/opensearch:2.8.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/library/busybox:1.35.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/opensearch-curator:v0.0.5 + - swr.cn-southwest-2.myhuaweicloud.com/ks/opensearchproject/opensearch-dashboards:2.8.0 + ## servicemesh + - swr.cn-southwest-2.myhuaweicloud.com/ks/istio/pilot:1.16.5 + - swr.cn-southwest-2.myhuaweicloud.com/ks/istio/proxyv2:1.16.5 + - swr.cn-southwest-2.myhuaweicloud.com/ks/istio/istioctl:1.16.5 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kubectl:v1.27.4 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kiali-operator:v1.59.1 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kiali:v1.59 + - swr.cn-southwest-2.myhuaweicloud.com/ks/jaegertracing/jaeger-operator:1.35.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/jaegertracing/jaeger-agent:1.35 + - swr.cn-southwest-2.myhuaweicloud.com/ks/jaegertracing/jaeger-collector:1.35 + - swr.cn-southwest-2.myhuaweicloud.com/ks/jaegertracing/jaeger-query:1.35 + - swr.cn-southwest-2.myhuaweicloud.com/ks/jaegertracing/jaeger-es-index-cleaner:1.35 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/servicemesh-apiserver:v0.1.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/servicemesh-controller-manager:v0.1.0 + ## storage-utils + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/storageclass-accessor:v0.2.5 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/snapshot-controller:v4.2.1 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/snapshotclass-controller:v0.0.1 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/pvc-autoresizer:v0.3.1 + ## tower + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/tower:v0.2.1 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/tower-extension:v1.0.0 + ## vector + - swr.cn-southwest-2.myhuaweicloud.com/ks/timberio/vector:0.39.0-debian + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kubectl:v1.27.12 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/vector-config:v0.2.1 + ## whizard-alerting + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/whizard-alerting-apiserver:v1.0.2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/whizard-alerting-controller-manager:v1.0.2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/thanosio/thanos:v0.36.1 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kubectl:v1.27.12 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/cortex-tenant:v1.12.5 + - swr.cn-southwest-2.myhuaweicloud.com/ks/prometheus-operator/prometheus-config-reloader:v0.75.1 + ## whizard-events + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kube-events-exporter:v0.8.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/jimmidyson/configmap-reload:v0.9.0 + ## whizard-logging + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kubectl:v1.27.12 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/log-sidecar-injector:v1.3.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/jimmidyson/configmap-reload:v0.9.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/elastic/filebeat:6.7.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/timberio/vector:0.39.0-debian + - swr.cn-southwest-2.myhuaweicloud.com/ks/library/alpine:3.14 + ## whizard-monitoring + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kubectl:v1.27.12 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kube-state-metrics:v2.12.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubespheredev/kube-webhook-certgen:v20221220-controller-v1.5.1-58-g787ea74b6 + - swr.cn-southwest-2.myhuaweicloud.com/ks/thanosio/thanos:v0.36.1 + - swr.cn-southwest-2.myhuaweicloud.com/ks/brancz/kube-rbac-proxy:v0.18.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/prometheus-operator/prometheus-config-reloader:v0.75.1 + - swr.cn-southwest-2.myhuaweicloud.com/ks/prometheus-operator/prometheus-operator:v0.75.1 + - swr.cn-southwest-2.myhuaweicloud.com/ks/prometheus/node-exporter:v1.8.1 + - swr.cn-southwest-2.myhuaweicloud.com/ks/prometheus/prometheus:v2.51.2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/dcgm-exporter:3.3.5-3.4.0-ubuntu22.04 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/process-exporter:0.5.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/nginxinc/nginx-unprivileged:1.24 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/calico-exporter:v0.3.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/whizard-monitoring-helm-init:v0.1.0 + ## whizard-notification + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kubectl:v1.27.12 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/kube-rbac-proxy:v0.11.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/alertmanager-proxy:v0.2.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/notification-manager-operator:v2.5.2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/notification-manager:v2.5.2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/notification-tenant-sidecar:v4.0.2 + - swr.cn-southwest-2.myhuaweicloud.com/ks/prometheus/alertmanager:v0.27.0 + - swr.cn-southwest-2.myhuaweicloud.com/ks/prometheus-operator/prometheus-config-reloader:v0.75.1 + ## whizard-telemetry + - swr.cn-southwest-2.myhuaweicloud.com/ks/kubesphere/whizard-telemetry-apiserver:v1.2.2 + + registry: + auths: {} +---- +-- + +=== 4. 构建离线包 + +执行以下命令构建包含 ks-core 及各扩展组件镜像的离线安装包。 + +[source,bash] +---- +./kk artifact export -m manifest-sample.yaml -o kubesphere.tar.gz +---- + +执行成功后,将显示如下信息: + +[source,bash] +---- +Pipeline[ArtifactExportPipeline] execute successfully +---- + +=== 5. 下载 KubeSphere Core Helm Chart + +. 安装 helm。 ++ +[source,bash] +---- +curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash +---- + +. 下载 KubeSphere Core Helm Chart。 ++ +-- +[source,bash] +---- +VERSION=1.1.3 # Chart 版本 +helm fetch https://charts.kubesphere.io/main/ks-core-${VERSION}.tgz +---- + +此处为示例版本,请访问 link:https://get-images.kubesphere.io[] 或 link:https://github.com/kubesphere/kubesphere/releases[KubeSphere GitHub 仓库]查看最新 chart 版本。 +-- + +== 离线部署 + +=== 1. 准备工作 + +将联网主机 node1 上的三个文件同步至离线环境的 master 节点。 + +* `kk` +* `kubesphere.tar.gz` +* `ks-core-1.1.3.tgz` + +=== 2. 创建配置文件 + +. 创建离线集群配置文件。 ++ +[source,bash] +---- +./kk create config --with-kubernetes v1.26.12 +---- + +. 修改配置文件。 ++ +-- +[source,bash] +---- +vi config-sample.yaml +---- + +[.admon.note,cols="a"] +|=== +|说明 + +| +* 按照离线环境的实际配置修改节点信息。 +* 指定 `registry` 仓库的部署节点,用于 KubeKey 部署自建 Harbor 仓库。 +* `registry` 里可以指定 `type` 类型为 `harbor`,否则默认安装 docker registry。 +* 对于 Kubernetes v1.24+,建议将 `containerManager` 设置为 `containerd`。 +|=== + +以下为示例配置文件。如需了解各参数的配置方法,请参阅link:../02-install-kubernetes-and-kubesphere/[此文档]。 + +[source,yaml] +---- +apiVersion: kubekey.kubesphere.io/v1alpha2 +kind: Cluster +metadata: + name: sample +spec: + hosts: + - {name: master, address: 192.168.0.3, internalAddress: 192.168.0.3, user: root, password: ""} + - {name: node2, address: 192.168.0.4, internalAddress: 192.168.0.4, user: root, password: ""} + roleGroups: + etcd: + - master + control-plane: + - master + worker: + - node2 + # 如需使用 kk 自动部署镜像仓库,请设置该主机组 (建议仓库与集群分离部署,减少相互影响) + # 如果需要部署 harbor 并且 containerManager 为 containerd 时,由于部署 harbor 依赖 docker,建议单独节点部署 harbor + registry: + - node2 + controlPlaneEndpoint: + ## Internal loadbalancer for apiservers + # internalLoadbalancer: haproxy + + domain: lb.kubesphere.local + address: "" + port: 6443 + kubernetes: + version: v1.26.12 + containerManager: containerd + network: + plugin: calico + kubePodsCIDR: 10.233.64.0/18 + kubeServiceCIDR: 10.233.0.0/18 + ## multus support. https://github.com/k8snetworkplumbingwg/multus-cni + multusCNI: + enabled: false + registry: + # 如需使用 kk 部署 harbor, 可将该参数设置为 harbor,不设置该参数且需使用 kk 创建容器镜像仓库,将默认使用 docker registry。 + # type: harbor + # 如使用 kk 部署的 harbor 或其他需要登录的仓库,需设置对应仓库的 auths,如使用 kk 创建默认的 docker registry 仓库,则无需配置 auths 参数。 + auths: + "dockerhub.kubekey.local": + # 部署 harbor 时需指定 harbor 帐号密码 + # username: admin + # password: Harbor12345 + skipTLSVerify: true + # 设置集群部署时使用的私有仓库地址。如果您已有可用的镜像仓库,请替换为您的实际镜像仓库地址。 + # 如果离线包中为原始 dockerhub 镜像(即 manifest 文件中的镜像地址为 docker.io/***),可以将该参数设置为 dockerhub.kubekey.local/ks, 表示将镜像全部推送至名为 ks 的 harbor 项目中。 + privateRegistry: "dockerhub.kubekey.local" + # 如果构建离线包时 Kubernetes 镜像使用的是阿里云仓库镜像,需配置该参数。如果使用 dockerhub 镜像,则无需配置此参数。 + namespaceOverride: "kubesphereio" + registryMirrors: [] + insecureRegistries: [] + addons: [] +---- +-- + +=== 3. 创建镜像仓库 + +[.admon.note,cols="a"] +|=== +|说明 + +| +如果您已有可用的镜像仓库,可跳过此步骤。 +|=== + +执行以下命令创建镜像仓库。 + +[source,bash] +---- +./kk init registry -f config-sample.yaml -a kubesphere.tar.gz +---- + +* `config-sample.yaml` 为离线集群的配置文件。 + +* `kubesphere.tar.gz` 为包含 ks-core 及各扩展组件镜像的离线安装包。 + +如果显示如下信息,则表明镜像仓库创建成功。 + +[source,bash] +---- +Pipeline[InitRegistryPipeline] execute successfully +---- + +=== 4. 创建 harbor 项目(若镜像仓库为 Harbor) + +[.admon.note,cols="a"] +|=== +|说明 + +| +由于 Harbor 项目存在访问控制(RBAC)的限制,即只有指定角色的用户才能执行某些操作。如果您未创建项目,则镜像不能被推送到 Harbor。Harbor 中有两种类型的项目: + +* 公共项目(Public):任何用户都可以从这个项目中拉取镜像。 +* 私有项目(Private):只有作为项目成员的用户可以拉取镜像。 + +Harbor 管理员账号:**admin**,密码:**Harbor12345**。 + +harbor 安装文件在 `/opt/harbor` 目录下,可在该目录下对 harbor 进行运维。 +|=== + +执行以下命令创建 harbor 项目。 + +. 创建脚本配置文件。 ++ +-- +[source,bash] +---- +vi create_project_harbor.sh +---- + +[source,bash] +---- +#!/usr/bin/env bash + +# Copyright 2018 The KubeSphere Authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +url="https://dockerhub.kubekey.local" # 或修改为实际镜像仓库地址 +user="admin" +passwd="Harbor12345" + +harbor_projects=( + ks + kubesphere + kubesphereio + coredns + calico + flannel + cilium + hybridnetdev + kubeovn + openebs + library + plndr + jenkins + argoproj + dexidp + openpolicyagent + curlimages + grafana + kubeedge + nginxinc + prom + kiwigrid + minio + opensearchproject + istio + jaegertracing + timberio + prometheus-operator + jimmidyson + elastic + thanosio + brancz + prometheus +) + +for project in "${harbor_projects[@]}"; do + echo "creating $project" + curl -u "${user}:${passwd}" -X POST -H "Content-Type: application/json" "${url}/api/v2.0/projects" -d "{ \"project_name\": \"${project}\", \"public\": true}" -k # 注意在 curl 命令末尾加上 -k +done +---- +-- + +. 创建 Harbor 项目。 ++ +-- +[source,bash] +---- +chmod +x create_project_harbor.sh +---- + +[source,bash] +---- +./create_project_harbor.sh +---- +-- + + +=== 5. 安装 Kubernetes + +执行以下命令创建 Kubernetes 集群: + +[source,bash] +---- +./kk create cluster -f config-sample.yaml -a kubesphere.tar.gz --with-local-storage +---- + +[.admon.note,cols="a"] +|=== +|说明 + +| +指定 --with-local-storage 参数会默认部署 openebs localpv,如需对接其他存储,可在 Kubernetes 集群部署完成后自行安装。 +|=== + +如果显示如下信息,则表明 Kubernetes 集群创建成功。 + +[source,bash] +---- +Pipeline[CreateclusterPipeline] execute successfully +Installation is complete. +---- + +=== 6. 安装 KubeSphere + +. 安装 KubeSphere。 ++ +-- +[source,bash] +---- +helm upgrade --install -n kubesphere-system --create-namespace ks-core ks-core-1.1.3.tgz \ + --set global.imageRegistry=dockerhub.kubekey.local/ks \ + --set extension.imageRegistry=dockerhub.kubekey.local/ks \ + --set ksExtensionRepository.image.tag=v1.1.2 \ + --debug \ + --wait +---- +[.admon.note,cols="a"] +|=== +|说明 + +| +* `ksExtensionRepository.image.tag` 为之前获取到的 Extensions Museum 版本(即 https://get-images.kubesphere.io/ 上展示的最新扩展组件仓库版本)。 + +* 如需高可用部署 KubeSphere,可在命令中添加 `--set ha.enabled=true,redisHA.enabled=true`。 +|=== + +如果显示如下信息,则表明 KubeSphere 安装成功: + +[source,bash] +---- +NOTES: +Thank you for choosing KubeSphere Helm Chart. + +Please be patient and wait for several seconds for the KubeSphere deployment to complete. + +1. Wait for Deployment Completion + + Confirm that all KubeSphere components are running by executing the following command: + + kubectl get pods -n kubesphere-system +2. Access the KubeSphere Console + + Once the deployment is complete, you can access the KubeSphere console using the following URL: + + http://192.168.6.6:30880 + +3. Login to KubeSphere Console + + Use the following credentials to log in: + + Account: admin + Password: P@88w0rd + +NOTE: It is highly recommended to change the default password immediately after the first login. +For additional information and details, please visit https://kubesphere.io. +---- +-- + + +. 从成功信息中的 **Console**、**Account** 和 **Password** 参数分别获取{ks_product_left} Web 控制台的 IP 地址、管理员用户名和管理员密码,并使用网页浏览器登录{ks_product_left} Web 控制台。 ++ +[.admon.note,cols="a"] +|=== +|说明 + +|取决于您的硬件和网络环境,您可能需要配置流量转发规则并在防火墙中放行 30880 端口。 +|=== \ No newline at end of file diff --git a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/01-create-a-pipeline-using-graphical-editing-panel.adoc b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/01-create-a-pipeline-using-graphical-editing-panel.adoc index 407761872..d4bcb712e 100644 --- a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/01-create-a-pipeline-using-graphical-editing-panel.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/01-create-a-pipeline-using-graphical-editing-panel.adoc @@ -53,12 +53,12 @@ DevOps 中的图形编辑面板包含用于 Jenkins link:https://www.jenkins.io/ == 步骤 1:创建凭证 -. 以 **project-regular** 用户登录{ks_product_both} Web 控制台。 +. 以 **project-regular** 用户登录{ks_product_left} Web 控制台。 . 点击**企业空间管理**并进入您的 DevOps 项目,在 **DevOps 项目设置**下的**凭证**页面创建以下凭证。有关如何创建凭证的更多信息,请参阅link:../../05-devops-settings/01-credential-management/[凭证管理]。 + -- -//note + [.admon.note,cols="a"] |=== |说明 @@ -97,7 +97,7 @@ DevOps 中的图形编辑面板包含用于 Jenkins link:https://www.jenkins.io/ == 步骤 2:创建流水线 -. 以 **project-regular** 用户登录{ks_product_both} Web 控制台。 +. 以 **project-regular** 用户登录{ks_product_left} Web 控制台。 . 点击**企业空间管理**并进入您的 DevOps 项目,在**流水线**页面点击**创建**。 @@ -148,7 +148,7 @@ DevOps 中的图形编辑面板包含用于 Jenkins link:https://www.jenkins.io/ . 点击**下一步**,然后点击**创建**。 -//note + [.admon.note,cols="a"] |=== |说明 @@ -162,7 +162,7 @@ DevOps 中的图形编辑面板包含用于 Jenkins link:https://www.jenkins.io/ 图形编辑面板包括两个区域:左侧的**画布**和右侧的**内容**。它会根据您对不同阶段和步骤的配置自动生成一个 Jenkinsfile,为开发者提供更加用户友好的操作体验。 -//note + [.admon.note,cols="a"] |=== |说明 @@ -175,7 +175,7 @@ DevOps 中的图形编辑面板包含用于 Jenkins link:https://www.jenkins.io/ . 在图形编辑面板上,从**类型**下拉列表中选择 **node**,从 **Label** 下拉列表中选择 **maven**。 + -- -//note + [.admon.note,cols="a"] |=== |说明 @@ -221,7 +221,7 @@ image:/images/ks-qkcp/zh/devops-user-guide/use-devops/create-a-pipeline-using-gr ---- mvn clean test ---- -//note + [.admon.note,cols="a"] |=== |说明 @@ -315,7 +315,7 @@ image:/images/ks-qkcp/zh/devops-user-guide/use-devops/create-a-pipeline-using-gr image:/images/ks-qkcp/zh/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/docker_credential.png[,100%] -//note + [.admon.note,cols="a"] |=== |说明 @@ -367,7 +367,7 @@ image:/images/ks-qkcp/zh/devops-user-guide/use-devops/create-a-pipeline-using-gr // + // -- // image:/images/ks-qkcp/zh/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/input_message.png[,100%] -// //note +// // [.admon.note,cols="a"] // |=== // |说明 @@ -405,7 +405,7 @@ image:/images/ks-qkcp/zh/devops-user-guide/use-devops/create-a-pipeline-using-gr // . 如果想在流水线运行成功时接收电子邮件通知,请点击**添加步骤**,选择**邮件**,以添加电子邮件信息。注意,配置电子邮件服务器是可选操作,如果跳过该步骤,依然可以运行流水线。 // + // -- -// //note +// // [.admon.note,cols="a"] // |=== // |说明 @@ -421,7 +421,7 @@ image:/images/ks-qkcp/zh/devops-user-guide/use-devops/create-a-pipeline-using-gr // -- // 在用图形编辑面板定义流水线时,DevOps 会自动创建相应的 Jenkinsfile。点击**编辑 Jenkinsfile** 查看该 Jenkinsfile。 -// //note +// // [.admon.note,cols="a"] // |=== // |说明 @@ -443,9 +443,9 @@ image:/images/ks-qkcp/zh/devops-user-guide/use-devops/create-a-pipeline-using-gr . 流水线如果运行到 **Push with Tag** 阶段,会在此阶段暂停,需要具有审核权限的用户点击**继续**。 // . 稍等片刻,流水线如果运行成功,会在 **Deploy to Dev** 阶段停止。**project-admin** 作为流水线的审核员,需要进行审批,然后资源才会部署至开发环境。 -. 以 **project-admin** 用户登录{ks_product_both} Web 控制台,点击**企业空间管理**并进入您的 DevOps 项目,点击 **graphical-pipeline** 流水线。在**运行记录**页签下,点击要审核的记录,点击**继续**以批准流水线。 +. 以 **project-admin** 用户登录{ks_product_left} Web 控制台,点击**企业空间管理**并进入您的 DevOps 项目,点击 **graphical-pipeline** 流水线。在**运行记录**页签下,点击要审核的记录,点击**继续**以批准流水线。 + -//note [.admon.note,cols="a"] |=== |说明 @@ -456,7 +456,7 @@ image:/images/ks-qkcp/zh/devops-user-guide/use-devops/create-a-pipeline-using-gr == 步骤 5:查看流水线详情 -. 以 **project-regular** 用户登录 {ks_product_both} Web 控制台,点击**企业空间管理**并进入您的 DevOps 项目,点击 **graphical-pipeline** 流水线。 +. 以 **project-regular** 用户登录{ks_product_left} Web 控制台,点击**企业空间管理**并进入您的 DevOps 项目,点击 **graphical-pipeline** 流水线。 . 在**运行记录**页签下,点击**状态**下的记录,进入**运行记录**详情页。如果任务状态为**成功**,流水线所有阶段都会显示**成功**。 @@ -480,7 +480,7 @@ image:/images/ks-qkcp/zh/devops-user-guide/use-devops/create-a-pipeline-using-gr // . 点击**应用负载**下的**服务**,查看示例服务通过 NodePort 暴露的端口号。使用 **:** 访问该服务。 // + // -- -// //note +// // [.admon.note,cols="a"] // |=== // |说明 diff --git a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/02-create-a-pipeline-using-jenkinsfile.adoc b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/02-create-a-pipeline-using-jenkinsfile.adoc index 9de3eff4c..64a4fd9be 100644 --- a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/02-create-a-pipeline-using-jenkinsfile.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/02-create-a-pipeline-using-jenkinsfile.adoc @@ -10,7 +10,7 @@ Jenkinsfile 是一个文本文件,包含 Jenkins 流水线的定义,并被 本文档演示如何基于 GitHub 仓库中的 Jenkinsfile 创建流水线。 // 本文档演示如何基于 GitHub 仓库中的 Jenkinsfile 创建流水线,并使用该流水线将示例应用程序分别部署到可从外部访问的开发环境和生产环境。 -//note + [.admon.note,cols="a"] |=== |说明 @@ -39,7 +39,7 @@ Jenkinsfile in SCM 需要源代码管理 (SCM) 中有内置 Jenkinsfile,换句 本示例流水线包括以下阶段。 -//note + [.admon.note,cols="a"] |=== |说明 @@ -70,7 +70,7 @@ Jenkinsfile in SCM 需要源代码管理 (SCM) 中有内置 Jenkinsfile,换句 . 点击**企业空间管理**并进入您的 DevOps 项目,在 **DevOps 项目设置**下的**凭证**页面创建以下凭证。有关如何创建凭证的更多信息,请参阅link:../../05-devops-settings/01-credential-management/[凭证管理]。 + -- -//note + [.admon.note,cols="a"] |=== |说明 @@ -99,11 +99,11 @@ Jenkinsfile in SCM 需要源代码管理 (SCM) 中有内置 Jenkinsfile,换句 . 再为 SonarQube 创建一个凭证 (**sonar-token**),用于上述的阶段 3(代码分析)。凭证类型选择**访问令牌**,在**令牌**字段输入 SonarQube 令牌,请参阅link:../../../04-how-to-integrate/01-sonarqube/#_为新项目创建_sonarqube_token[为新项目创建 SonarQube Token]。点击**确定**完成操作。 -. 还需要创建具有如下图所示权限的 GitHub 个人访问令牌 (PAT),然后在 DevOps 项目中,使用生成的令牌创建用于 GitHub 认证的账户凭证(例如,**github-token**)。 +. 还需要创建具有如下图所示权限的 GitHub 个人访问令牌 (PAT),然后在 DevOps 项目中,使用生成的令牌创建用于 GitHub 认证的账户凭证(例如 **github-token**),凭证类型为**访问令牌**。 + -- image:/images/ks-qkcp/zh/devops-user-guide/use-devops/create-a-pipeline-using-a-jenkinsfile/github-token-scope.png[,100%] -//note + [.admon.note,cols="a"] |=== |说明 @@ -163,7 +163,7 @@ image:/images/ks-qkcp/zh/devops-user-guide/use-devops/create-a-pipeline-using-a- |您在{ks_product_both}中为 SonarQube 令牌设置的**名称**,用于代码质量检测。 |=== -//note + [.admon.note,cols="a"] |=== |说明 @@ -181,7 +181,7 @@ Jenkinsfile 中 **mvn** 命令的参数 **-o** 表示开启离线模式。本教 // 创建两个项目,例如 **kubesphere-sample-dev** 和 **kubesphere-sample-prod**,分别代表开发环境和生产环境。待流水线成功运行,将在这两个项目中自动创建应用程序的相关部署 (Deployment) 和服务 (Service)。 -// //note +// // [.admon.note,cols="a"] // |=== // |说明 @@ -242,7 +242,7 @@ Jenkinsfile 中 **mvn** 命令的参数 **-o** 表示开启离线模式。本教 * 分支最大数量:分支数量超过最大数量时,删除最旧的分支。 -//note + [.admon.note,cols="a"] |=== |说明 @@ -256,6 +256,14 @@ Jenkinsfile 中 **mvn** 命令的参数 **-o** 表示开启离线模式。本教 . 在**策略设置**中,DevOps 默认提供四种策略。本示例不会使用**从 Fork 仓库中发现 PR** 这条策略,因此您可以删除该策略。对于其他策略,无需修改设置,直接使用默认值即可。 + -- +[.admon.note,cols="a"] +|=== +|说明 + +| +选择 GitHub 作为代码仓库,才能启用此处的**策略设置**。 +|=== + Jenkins 流水线运行时,开发者提交的 Pull Request (PR) 也将被视为一个单独的分支。 **发现分支** @@ -269,23 +277,12 @@ Jenkins 流水线运行时,开发者提交的 Pull Request (PR) 也将被视 * **拉取 PR 合并后的代码**:PR 合并到目标分支后,基于源代码创建并运行流水线。 * **拉取 PR 提交时的代码**:根据 PR 本身的源代码创建并运行流水线。 * **分别创建两个流水线**:创建两个流水线,一个流水线使用 PR 与目标分支合并后的源代码版本,另一个使用 PR 本身的源代码版本。 - -//note -[.admon.note,cols="a"] -|=== -|说明 - -| -选择 GitHub 作为代码仓库,才能启用此处的**策略设置**设置。 - -|=== -- . 向下滚动到**脚本路径**,将其更改为 **Jenkinsfile-online**,这是示例仓库中位于根目录下的 Jenkinsfile 的文件名。该字段指定代码仓库中的 Jenkinsfile 路径。它表示仓库的根目录。如果文件位置变更,则脚本路径也需要更改。 . 在**扫描触发器**中,勾选**定时扫描**并设置时间间隔为 **5 分钟**。点击**创建**完成配置。 - -//note ++ [.admon.note,cols="a"] |=== |说明 @@ -301,7 +298,7 @@ Jenkins 流水线运行时,开发者提交的 Pull Request (PR) 也将被视 . 流水线创建后,会展示在列表中。点击流水线名称查看其详情页。 + -- -//note + [.admon.note,cols="a"] |=== |说明 @@ -317,7 +314,7 @@ Jenkins 流水线运行时,开发者提交的 Pull Request (PR) 也将被视 . 在**运行记录**页签下,正在扫描多个分支。点击右侧的**运行**,流水线将根据您设置的行为策略来运行。从下拉列表中选择 **v4.1.0-sonarqube** 分支,然后添加标签号,例如 **v0.0.2**。点击**确定**开始运行。 + -- -//note + [.admon.note,cols="a"] |=== |说明 @@ -332,13 +329,13 @@ Jenkins 流水线运行时,开发者提交的 Pull Request (PR) 也将被视 . 稍等片刻,点击运行记录查看详情。 + -- -//note + [.admon.note,cols="a"] |=== |说明 | -运行失败可能由不同因素所引起。本示例中,在上述步骤中编辑分支的环境变量时,仅更改了 v4.1.0-sonarqube 分支的 Jenkinsfile。而 v4.1.0 分支中的这些变量没有修改(使用了错误的 GitHub 和 Docker Hub 账户),从而导致失败。其他原因如网络问题、Jenkinsfile 中的编码不正确等也可能导致运行失败。 +运行失败可能由不同因素所引起。本示例中,在上述步骤中编辑分支的环境变量时,仅更改了 v4.1.0-sonarqube 分支的 Jenkinsfile,而 v4.1.0 分支中的这些变量没有修改(使用了错误的 GitHub 和 Docker Hub 账户),若选择 v4.1.0 分支,则会运行失败。其他原因如网络问题、Jenkinsfile 中的编码不正确等也可能导致运行失败。 在运行记录详情页的**运行日志**页签下,查看其日志的详细信息,根据日志排除故障和问题。 |=== @@ -359,8 +356,7 @@ input(id: 'release-image-with-tag', message: 'release image with tag?', submitte -- . 以具有流水线审核权限的用户登录{ks_product_left} Web 控制台,点击**企业空间管理**并进入您的 DevOps 项目,点击流水线名称进入详情页。在**运行记录**页签下,点击要审核的记录,点击**继续**以批准流水线。 - -//note ++ [.admon.note,cols="a"] |=== |说明 @@ -371,13 +367,14 @@ input(id: 'release-image-with-tag', message: 'release image with tag?', submitte == 步骤 5:检查流水线状态 -. 在运行记录的**流水线**页签下,查看流水线的运行状态。流水线在刚创建时会初始化几分钟。示例流水线有八个阶段,它们已在 link:https://github.com/kubesphere/devops-maven-sample/blob/sonarqube/Jenkinsfile-online[Jenkinsfile-online] 中单独定义。 +. 在运行记录的**流水线**页签下,查看流水线的运行状态。流水线在刚创建时会初始化几分钟。 +// 示例流水线有八个阶段,它们已在 link:https://github.com/kubesphere/devops-maven-sample/blob/sonarqube/Jenkinsfile-online[Jenkinsfile-online] 中单独定义。 . 点击**运行日志**页签查看流水线运行日志。点击每个阶段查看其详细日志。点击**查看完整日志**,根据日志排除故障和问题,也可以将日志下载到本地进行进一步分析。 == 步骤 6:验证结果 -. 流水线成功运行后,点击**代码检查**通过 SonarQube 查看结果。 +. 流水线成功运行后,点击**代码检查**通过 SonarQube 查看结果。如果没有事先配置 SonarQube,则该部分不可用。 . 按照 Jenkinsfile 中的定义,通过流水线构建的 Docker 镜像也已成功推送到 Docker Hub。在 Docker Hub 中,您会看到带有标签 **v0.0.2** 的镜像,该标签在流水线运行之前已指定。 @@ -403,7 +400,7 @@ input(id: 'release-image-with-tag', message: 'release image with tag?', submitte // |ks-sample // |=== -// //note +// // [.admon.note,cols="a"] // |=== // |说明 @@ -435,7 +432,7 @@ input(id: 'release-image-with-tag', message: 'release image with tag?', submitte // ---- // Really appreciate your star, that's the power of our life. // ---- -// //note +// // [.admon.note,cols="a"] // |=== // |说明 diff --git a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/03-use-pipeline-templates.adoc b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/03-use-pipeline-templates.adoc index bf0f100c5..e9416aa4c 100644 --- a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/03-use-pipeline-templates.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/03-use-pipeline-templates.adoc @@ -107,7 +107,7 @@ CI & CD 流水线模板包含六个阶段。有关每个阶段的更多信息, -- [%header,cols="1a,4a"] |=== -|代理类型|说明 +|代理类型 |说明 |any |调用默认的 base pod 模板创建 Jenkins agent 运行流水线。 diff --git a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/04-gitlab-multibranch-pipeline.adoc b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/04-gitlab-multibranch-pipeline.adoc index d031276ee..abf0631ed 100644 --- a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/04-gitlab-multibranch-pipeline.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/04-gitlab-multibranch-pipeline.adoc @@ -124,7 +124,7 @@ link:https://gitlab.com/users/sign_in[GitLab] 是一款基于 web 的 Git 仓库 .. 在**导入代码仓库**对话框,输入代码仓库名称(自定义),点击选择代码仓库。 -.. 在 **GitLab** 页签下的 **GitLab 服务器地址**中选择默认选项 link:https://gitlab.com[],在**项目组/所有者**中输入该 GitLab 项目所属组的名称,然后从**代码仓库**的下拉菜单中选择 **devops-maven-sample** 仓库。点击右下角的image:/images/ks-qkcp/zh/icons/check-dark.svg[check,18,18],然后点击**下一步**。 +.. 在 **GitLab** 页签下的 **GitLab 服务器地址**中选择默认选项 link:https://gitlab.com[],在**项目组/所有者**中输入该 GitLab 项目所属组的名称,然后从**代码仓库**的下拉菜单中选择 **devops-maven-sample** 仓库。点击右下角的image:/images/ks-qkcp/zh/icons/check-dark.svg[check,18,18],然后点击**确定**。 + -- //note @@ -137,7 +137,7 @@ link:https://gitlab.com/users/sign_in[GitLab] 是一款基于 web 的 Git 仓库 * 在 GitLab 上前往**用户设置 > 访问令牌**,创建拥有 API 和 read_repository 权限的个人访问令牌。 -* link:../../../04-how-to-integrate/01-sonarqube/[登录 Jenkins 面板],前往**系统管理 > Manage Credentials**,使用您的 GitLab 令牌创建 Jenkins 凭证,用于访问 GitLab。然后前往**系统管理 > 系统配置**,在 **GitLab 服务**中添加该凭证。 +* link:../07-access-jenkins-console[登录 Jenkins 仪表板],前往**系统管理 > Manage Credentials**,使用您的 GitLab 令牌创建 Jenkins 凭证,用于访问 GitLab。然后前往**系统管理 > 系统配置**,在 **GitLab 服务**中添加该凭证。 * 在 DevOps 项目中,选择 **DevOps 项目设置 > 凭证**,使用您的 GitLab 令牌创建一个凭证。创建流水线时,在 **GitLab** 页签的**凭证**中指定该凭证,以便流水线能够从您的 GitLab 私有仓库中拉取代码。 diff --git a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/05-pipeline-settings.adoc b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/05-pipeline-settings.adoc index be22090da..3b4cdfbaa 100644 --- a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/05-pipeline-settings.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/05-pipeline-settings.adoc @@ -22,7 +22,7 @@ weight: 05 == 基本信息 -在**基本信息**页签,您可以自定义以下信息: +创建流水线时,在**基本信息**页签,您可以自定义以下信息: * **名称**:流水线的名称,同一个 DevOps 项目内的流水线不能重名。 @@ -91,6 +91,14 @@ weight: 05 -- 在**策略设置**中,DevOps 默认提供四种策略。Jenkins 流水线运行时,开发者提交的 PR (Pull Request) 也将被视为一个单独的分支。 +[.admon.note,cols="a"] +|=== +|说明 + +| +选择 GitHub 作为代码仓库,才能启用此处的**策略设置**。 +|=== + **发现分支** * **排除已提交 PR 的分支**:已提交 PR 的分支将被排除。 diff --git a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/07-jenkins-setting.adoc b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/07-jenkins-setting.adoc index f2cd331eb..145d9199b 100644 --- a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/07-jenkins-setting.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/07-jenkins-setting.adoc @@ -39,8 +39,6 @@ DevOps 系统提供基于 Jenkins 的容器化 CI/CD 功能。Jenkins 作为 CI/ . 等待 1 ~ 2 分钟,会自动重新加载新的配置。 - - //note [.admon.note,cols="a"] |=== diff --git a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/11-customize-jenkins-agent.adoc b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/11-customize-jenkins-agent.adoc index 6feb44f32..831b58d5d 100644 --- a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/11-customize-jenkins-agent.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/11-customize-jenkins-agent.adoc @@ -61,7 +61,6 @@ weight: 11 [,json] ---- - pipeline { agent { node { diff --git a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/03-use-gitops-for-continous-deployment.adoc b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/03-use-gitops-for-continous-deployment.adoc index 745297d4c..2756e54ea 100644 --- a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/03-use-gitops-for-continous-deployment.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/03-use-gitops-for-continous-deployment.adoc @@ -97,16 +97,16 @@ weight: 03 // |=== // |参数 |描述 -// |清理资源 -// |如果勾选,同步会删除 Git 仓库中不存在的资源。不勾选时,同步不会删除集群中的资源,而是会显示 **out-of-sync**。 +// |清理 +// |如果勾选,同步时会删除 Git 仓库中不存在的资源。不勾选时,同步时不会删除集群中的资源,而是会显示 **out-of-sync**。 -// |模拟运行 +// |试运行 // |模拟同步,不影响最终部署资源。 -// |仅执行 Apply +// |仅应用 // |如果勾选,同步应用资源时会跳过 **pre/post** 钩子,仅执行 **kubectl apply**。 -// |强制 Apply +// |强制应用 // |如果勾选,同步时会执行 **kubectl apply --force**。 // |=== // ==== diff --git a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/04-import-code-repositories.adoc b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/04-import-code-repositories.adoc index 0ab217c6d..a649e390e 100644 --- a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/04-import-code-repositories.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/04-import-code-repositories.adoc @@ -71,8 +71,7 @@ weight: 04 + -- * **名称**:输入凭证名称,如 **github-id**。 -* **类型**:取值包括**用户名和密码**、**SSH 密钥**和**访问令牌**。在 DevOps 项目中,建议使用**用户名和密码**。 -// * **类型**:取值包括**用户名和密码**、**SSH 密钥**、**访问令牌**和 **kubeconfig**。在 DevOps 项目中,建议使用**用户名和密码**。 +* **类型**:取值包括**用户名和密码**、**SSH 密钥**、**访问令牌**和 **kubeconfig**。在 DevOps 项目中,建议使用**用户名和密码**。 * **用户名**:此处默认用户名为 **admin**。 * **密码/令牌**:输入您的 GitHub 令牌。 * **描述**:添加描述信息。 diff --git a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/01-credential-management.adoc b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/01-credential-management.adoc index 2a18b52f9..58ffaf2fa 100644 --- a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/01-credential-management.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/01-credential-management.adoc @@ -172,13 +172,13 @@ weight: 01 . 点击已创建的凭证,进入其详情页面,查看凭证详情和与此凭证相关的所有事件。 . 点击**编辑**修改凭证信息,点击**删除**删除凭证。 - ++ //note [.admon.note,cols="a"] |=== |说明 | -编辑凭证时,{ks_product_right}不会显示现有用户名或密码信息。如果输入新的用户名和密码,则前一个将被覆盖。 +编辑凭证时,KubeSphere 不会显示现有用户名或密码信息。如果输入新的用户名和密码,则前一个将被覆盖。 |=== diff --git a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/02-role-and-member-management.adoc b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/02-role-and-member-management.adoc index 4cc4b917e..0ce0abf40 100644 --- a/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/02-role-and-member-management.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/01-devops/03-how-to-use/05-devops-settings/02-role-and-member-management.adoc @@ -57,7 +57,7 @@ weight: 02 |说明 | -本文档使用 **devops-admin** 账户作为示例。只要账户被授予的角色包含 DevOps 项目级别**访问控制**中的**成员查看**、**角色管理**和**角色查看**的权限,此账户便可以创建 DevOps 项目角色。 +本文档使用 **devops-admin** 账户作为示例。只要账户被授予的角色包含 DevOps 项目中的**角色管理**权限,此账户便可以创建 DevOps 项目角色。 |=== -- diff --git a/content/zh/docs/v4.1/11-use-extensions/01-devops/04-how-to-integrate/01-sonarqube.adoc b/content/zh/docs/v4.1/11-use-extensions/01-devops/04-how-to-integrate/01-sonarqube.adoc index 8980badda..93fcc53d5 100644 --- a/content/zh/docs/v4.1/11-use-extensions/01-devops/04-how-to-integrate/01-sonarqube.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/01-devops/04-how-to-integrate/01-sonarqube.adoc @@ -110,8 +110,7 @@ http://10.77.1.201:31377 ---- $ kubectl get pod -n kubesphere-devops-system NAME READY STATUS RESTARTS AGE -devops-jenkins-68b8949bb-7zwg4 1/1 Running 0 84m -s2ioperator-0 1/1 Running 1 84m +devops-jenkins-68b8949bb-7zwg4 1/1 Running 0 84m sonarqube-postgresql-0 1/1 Running 0 5m31s sonarqube-sonarqube-bb595d88b-97594 1/1 Running 2 5m31s ---- diff --git a/content/zh/docs/v4.1/11-use-extensions/01-devops/04-how-to-integrate/02-harbor.adoc b/content/zh/docs/v4.1/11-use-extensions/01-devops/04-how-to-integrate/02-harbor.adoc index 6b1bf2df9..fe52118a3 100644 --- a/content/zh/docs/v4.1/11-use-extensions/01-devops/04-how-to-integrate/02-harbor.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/01-devops/04-how-to-integrate/02-harbor.adoc @@ -38,22 +38,20 @@ helm install harbor-release harbor/harbor --set expose.type=nodePort,externalURL . 点击刚刚创建的项目,在**机器人账户**页签下点击**添加机器人账户**。 -. 在弹出的对话框中,为机器人账户设置名称 **robot-test** 并点击**添加**。请确保在**权限**中勾选推送制品的权限选框。 +. 在弹出的对话框中,为机器人账户设置名称 **robot-test** 和**过期时间**。然后在**权限**中勾选制品(Artifact)和仓库的所有权限。点击**完成**。 -. 在弹出的对话框中,点击**导出到文件中**,保存该令牌。 +. 在弹出的对话框中,点击**导出到文件中**,保存该 Harbor 令牌。 == 启用 Insecure Registry 配置 Docker,使其忽略您 Harbor 仓库的安全性。 -. 在您的主机上运行 **vim /etc/docker/daemon.json** 命令以编辑 **daemon.json** 文件,输入以下内容并保存更改。 +. 在所有集群节点上运行 **vim /etc/docker/daemon.json** 命令以编辑 **daemon.json** 文件,添加以下内容并保存更改。 + -- [,json] ---- -{ "insecure-registries" : ["103.61.38.55:30002"] -} ---- //note @@ -62,8 +60,26 @@ helm install harbor-release harbor/harbor --set expose.type=nodePort,externalURL |说明 | -请将 **103.61.38.55:30002** 替换为您自己的 Harbor 仓库地址。对于 Linux,**daemon.json** 文件的路径为 **/etc/docker/daemon.json**;对于 Windows,该文件的路径为 **C:\ProgramData\docker\config\daemon.json**。 +* 请将 **103.61.38.55:30002** 替换为您自己的 Harbor 仓库地址。 + +* 对于 Linux,**daemon.json** 文件的路径为 **/etc/docker/daemon.json**;对于 Windows,该文件的路径为 **C:\ProgramData\docker\config\daemon.json**。 |=== + + +文件内容应如下所示: + +[source,json] +---- +{ + "log-opts": { + "max-size": "5m", + "max-file": "3" + }, + // 注意添加逗号 + "exec-opts": ["native.cgroupdriver=systemd"], + "insecure-registries": ["103.61.38.55:30002"] +} +---- -- . 运行以下命令重启 Docker,使更改生效。 @@ -72,7 +88,6 @@ helm install harbor-release harbor/harbor --set expose.type=nodePort,externalURL [,bash] ---- sudo systemctl daemon-reload - sudo systemctl restart docker ---- //note @@ -81,7 +96,9 @@ sudo systemctl restart docker |说明 | -建议您在隔离的测试环境或者严格控制的离线环境中使用该方案。有关更多信息,请参阅 link:https://docs.docker.com/registry/insecure/#deploy-a-plain-http-registry[Deploy a plain HTTP registry]。完成上述操作后,即可在项目中部署工作负载时使用您 Harbor 仓库中的镜像。您需要为自己的 Harbor 仓库创建一个镜像密钥,然后在**容器镜像**页签下的**容器设置**中,选择您的 Harbor 仓库并输入镜像的绝对路径以搜索您的镜像。 +建议您在隔离的测试环境或者严格控制的离线环境中使用该方案。有关更多信息,请参阅 link:https://docs.docker.com/registry/insecure/#deploy-a-plain-http-registry[Deploy a plain HTTP registry]。 + +完成上述操作后,即可在项目中部署工作负载时使用您 Harbor 仓库中的镜像。您需要为自己的 Harbor 仓库创建一个镜像密钥,然后在部署工作负载添加容器时,点击 **Docker Hub**,选择您的 Harbor 仓库并输入镜像的绝对路径以搜索您的镜像。 |=== -- @@ -91,7 +108,7 @@ sudo systemctl restart docker . 以 **project-regular** 用户登录{ks_product_left} Web 控制台。 . 点击**企业空间管理**并进入您的 DevOps 项目。 . 在 **DevOps 项目设置**下的**凭证**页面为 Harbor 创建凭证。 -. 在**创建凭证**页面,设置凭证 ID (**robot-test**),**类型**选择**用户名和密码**,**用户名**字段必须和您刚刚下载的 JSON 文件中 **name** 的值相同,并在**密码/令牌**中输入 Harbor 令牌文件中 **token** 的值。 +. 在**创建凭证**页面,设置名称 (**robot-test**),**类型**选择**用户名和密码**,在**用户名**中输入刚刚导出的 Harbor 令牌文件中 **name** 的值,并在**密码/令牌**中输入 Harbor 令牌文件中 **secret** 的值。 . 点击**确定**以保存。 @@ -110,7 +127,7 @@ sudo systemctl restart docker . 将以下内容复制粘贴至 Jenkinsfile。注意,必须将 **REGISTRY**、**HARBOR_NAMESPACE**、**APP_NAME** 和 **HARBOR_CREDENTIAL** 替换为您自己的值。 + -- -[,json] +[,yaml] ---- pipeline { @@ -128,7 +145,7 @@ pipeline { HARBOR_NAMESPACE = 'ks-devops-harbor' // Docker 镜像名称。 APP_NAME = 'docker-example' - // ‘robot-test’是您在{ks_product_left} Web 控制台上创建的凭证 ID。 + // ‘robot-test’ 是您在 KubeSphere Web 控制台上创建的凭证 ID。 HARBOR_CREDENTIAL = credentials('robot-test') } @@ -136,7 +153,7 @@ pipeline { stage('docker login') { steps{ container ('maven') { - // 请替换 -u 后面的 Docker Hub 用户名,不要忘记加上 ''。您也可以使用 Docker Hub 令牌。 + // 请将 -u 后面的参数替换为 Harbor 令牌文件中 name 的值,不要忘记加上 '' sh '''echo $HARBOR_CREDENTIAL_PSW|docker login $REGISTRY -u 'robot$robot-test' --password-stdin''' } } @@ -162,7 +179,7 @@ pipeline { |说明 | -您可以通过带有环境变量的 Jenkins 凭证来传送参数至 **docker login -u**。但是,每个 Harbor 机器人账户的用户名都包含一个 **$** 字符,当用于环境变量时,Jenkins 会将其转换为 **$$**。(Harbor v2.2以后可以自定义机器人后缀,避免此类问题)link:https://number1.co.za/rancher-cannot-use-harbor-robot-account-imagepullbackoff-pull-access-denied/[了解更多]。 +您可以通过带有环境变量的 Jenkins 凭证来传送参数至 **docker login -u**。但是,每个 Harbor 机器人账户的用户名都包含一个 **$** 字符,当用于环境变量时,Jenkins 会将其转换为 **$$**(Harbor v2.2 以后可以自定义机器人后缀,避免此类问题)。link:https://number1.co.za/rancher-cannot-use-harbor-robot-account-imagepullbackoff-pull-access-denied/[了解更多]。 |=== -- diff --git a/content/zh/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/09-delete-an-app-version.adoc b/content/zh/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/09-delete-an-app-version.adoc index 6badbc1cc..aa9bb455e 100644 --- a/content/zh/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/09-delete-an-app-version.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/01-apps/09-delete-an-app-version.adoc @@ -1,7 +1,7 @@ --- title: "删除应用版本" description: "介绍如何删除应用版本。" -weight: 08 +weight: 09 --- :ks_permission: **应用商店管理** diff --git a/content/zh/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/03-app-review/_index.adoc b/content/zh/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/03-app-review/_index.adoc index 248ad5272..47a253d64 100644 --- a/content/zh/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/03-app-review/_index.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/02-app-store/03-app-store-management/03-app-review/_index.adoc @@ -10,4 +10,4 @@ layout: "second" 本节介绍如何对企业空间成员提交的应用模板进行审核。 -企业空间成员可以在创建应用模板后将应用模板提交到应用商店,由平台级别具有**应用管理**权限的用户对应用模板进行审核。应用模板审核通过后可以上架到应用商店。 +企业空间成员可以在创建应用模板后将应用模板提交到应用商店,由平台级别具有**应用商店管理**权限的用户对应用模板进行审核。应用模板审核通过后可以上架到应用商店。 diff --git a/content/zh/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/01-create-a-grayscale-release-task.adoc b/content/zh/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/01-create-a-grayscale-release-task.adoc index e9ffd443f..8e9d87b28 100644 --- a/content/zh/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/01-create-a-grayscale-release-task.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/03-service-mesh/02-grayscale-release/01-create-a-grayscale-release-task.adoc @@ -22,7 +22,7 @@ include::../../../../_custom/projectManagement/projectManagement-prer-requiredPe * {ks_product_right}平台需要安装并启用 **KubeSphere 服务网格**扩展组件。 -* 提前准备新版本的容器镜像并上传到容器镜像服务,同时确保存容器镜像服务与{ks_product_both}网络连接正常。 +* 提前准备新版本的容器镜像并上传到容器镜像服务,同时确保容器镜像服务与{ks_product_both}网络连接正常。 == 操作步骤 @@ -37,7 +37,7 @@ include::../../../../../_ks_components/oper-navigate.adoc[] + -. 根据需要创建灰度发布任务类型,将光标悬停在**蓝绿部署**、**金丝雀发布**或**流量镜像**区域,然后点击**创建**。 +. 根据需要选择灰度发布任务的类型,将光标悬停在**蓝绿部署**、**金丝雀发布**或**流量镜像**区域,然后点击**创建**。 . 在**基本信息**页签,设置灰度发布任务的名称,然后点击**下一步**。 diff --git a/content/zh/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/01-create-a-project.adoc b/content/zh/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/01-create-a-project.adoc index 9d650644f..ea11ef0e1 100644 --- a/content/zh/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/01-create-a-project.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/04-kubefed/01-manage-multi-project/01-create-a-project.adoc @@ -52,6 +52,21 @@ include::../../../../_custom/clusterManagement/projects/projects-para-aliasDescr |可供项目使用的集群。项目中的资源运行在此处选择的集群中。创建联邦项目时,可点击**添加**选择多个集群从而使项目中的资源运行不同的集群中。 |=== +[.admon.note,cols="a"] +|=== +|说明 + +| +ifeval::["{file_output_type}" == "html"] +若要联邦项目运行在多个集群上,联邦项目所属的企业空间必须获得多个集群的授权。有关更多信息,请参阅link:../../../../08-workspace-management/02-workspaces/01-create-a-workspace[创建企业空间]。 + +endif::[] + +ifeval::["{file_output_type}" == "pdf"] +若要联邦项目运行在多个集群上,联邦项目所属的企业空间必须获得多个集群的授权。有关更多信息,请参阅《{ks_product_right}企业空间管理指南》的“创建企业空间”章节。 + +endif::[] +|=== 项目创建完成后,您可以邀请用户加入项目并在项目中部署业务。 -- diff --git a/content/zh/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/01-create-a-workload.adoc b/content/zh/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/01-create-a-workload.adoc index be52f122e..671def2c6 100644 --- a/content/zh/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/01-create-a-workload.adoc +++ b/content/zh/docs/v4.1/11-use-extensions/04-kubefed/03-application-workloads/03-workloads/01-create-a-workload.adoc @@ -7,7 +7,6 @@ weight: 01 :ks_permission: **联邦项目管理** :ks_navigation: **应用负载 > 工作负载** - :kubefed: include::../../../../../_custom/clusterManagement/workloads/workloads-desc-createAWorkload.adoc[] diff --git a/static/images/ks-qkcp/en/devops-user-guide/examples/build-and-deploy-a-maven-project/maven-project-jenkins.png b/static/images/ks-qkcp/en/devops-user-guide/examples/build-and-deploy-a-maven-project/maven-project-jenkins.png new file mode 100644 index 000000000..e09713bf7 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/examples/build-and-deploy-a-maven-project/maven-project-jenkins.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/examples/create-multi-cluster-pipeline/use-case-for-multi-cluster.png b/static/images/ks-qkcp/en/devops-user-guide/examples/create-multi-cluster-pipeline/use-case-for-multi-cluster.png new file mode 100644 index 000000000..512d1d5dd Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/examples/create-multi-cluster-pipeline/use-case-for-multi-cluster.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/enter-mirror-code.png b/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/enter-mirror-code.png new file mode 100644 index 000000000..89aff6bd0 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/enter-mirror-code.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/enter-server-code.png b/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/enter-server-code.png new file mode 100644 index 000000000..94b33f810 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/enter-server-code.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/gear.png b/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/gear.png new file mode 100644 index 000000000..f951ea547 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/gear.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/github-edit-icon.png b/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/github-edit-icon.png new file mode 100644 index 000000000..483ea7025 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/github-edit-icon.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/maven-public.png b/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/maven-public.png new file mode 100644 index 000000000..bea449afe Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/maven-public.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/maven-snapshots.png b/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/maven-snapshots.png new file mode 100644 index 000000000..d039f1278 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/maven-snapshots.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/modify-pom.png b/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/modify-pom.png new file mode 100644 index 000000000..565285724 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/examples/use-nexus-in-pipeline/modify-pom.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/add-credentials.png b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/add-credentials.png new file mode 100644 index 000000000..fc9ba234a Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/add-credentials.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/generate-a-token.png b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/generate-a-token.png new file mode 100644 index 000000000..faba7d0f3 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/generate-a-token.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/jenkins-projet-key.png b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/jenkins-projet-key.png new file mode 100644 index 000000000..51f668785 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/jenkins-projet-key.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-config-1.png b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-config-1.png new file mode 100644 index 000000000..7e2eb0cd0 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-config-1.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-config-2.png b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-config-2.png new file mode 100644 index 000000000..817eae1a8 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-config-2.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-config-3.png b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-config-3.png new file mode 100644 index 000000000..81b8de1cb Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-config-3.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-create-project.png b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-create-project.png new file mode 100644 index 000000000..b2e9b985b Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-create-project.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-example.png b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-example.png new file mode 100644 index 000000000..7abcc3889 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-example.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-install.png b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-install.png new file mode 100644 index 000000000..db77c0a79 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-install.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-jenkins-settings.png b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-jenkins-settings.png new file mode 100644 index 000000000..2351dff2d Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-jenkins-settings.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-webhook-1.png b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-webhook-1.png new file mode 100644 index 000000000..68c5ee2af Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-webhook-1.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-webhook-2.png b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-webhook-2.png new file mode 100644 index 000000000..2fa13d324 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/sonarqube-webhook-2.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/token-created.png b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/token-created.png new file mode 100644 index 000000000..f859707d7 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/token-created.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/webhook-page-info.png b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/webhook-page-info.png new file mode 100644 index 000000000..cb5460098 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/tool-integration/integrate-sonarqube-into-pipelines/webhook-page-info.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-a-jenkinsfile/github-token-scope.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-a-jenkinsfile/github-token-scope.png new file mode 100644 index 000000000..e2e06a666 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-a-jenkinsfile/github-token-scope.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-a-jenkinsfile/jenkins-edit--2.jpg b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-a-jenkinsfile/jenkins-edit--2.jpg new file mode 100644 index 000000000..e7a63a396 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-a-jenkinsfile/jenkins-edit--2.jpg differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/add_artifact_stage.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/add_artifact_stage.png new file mode 100644 index 000000000..d5692f66b Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/add_artifact_stage.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/add_nested_step.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/add_nested_step.png new file mode 100644 index 000000000..001d9c4e1 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/add_nested_step.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/add_nested_step_2.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/add_nested_step_2.png new file mode 100644 index 000000000..dda253071 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/add_nested_step_2.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/add_parameter.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/add_parameter.png new file mode 100644 index 000000000..b41a70ff0 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/add_parameter.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/advanced_settings.jpg b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/advanced_settings.jpg new file mode 100644 index 000000000..2b3df1152 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/advanced_settings.jpg differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/artifact_info.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/artifact_info.png new file mode 100644 index 000000000..96ce68fa3 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/artifact_info.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/basic_info.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/basic_info.png new file mode 100644 index 000000000..eccfd7de0 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/basic_info.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/build_and_push_image.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/build_and_push_image.png new file mode 100644 index 000000000..b483ca140 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/build_and_push_image.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/click-custom-pipeline.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/click-custom-pipeline.png new file mode 100644 index 000000000..b7b1f8056 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/click-custom-pipeline.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/code_analysis_stage.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/code_analysis_stage.png new file mode 100644 index 000000000..15a415336 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/code_analysis_stage.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/container_maven.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/container_maven.png new file mode 100644 index 000000000..2cb0d7b08 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/container_maven.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/create_pipeline.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/create_pipeline.png new file mode 100644 index 000000000..50d895adf Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/create_pipeline.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/credential_list.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/credential_list.png new file mode 100644 index 000000000..cb66e12ac Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/credential_list.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/develop_to_dev.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/develop_to_dev.png new file mode 100644 index 000000000..9555fcce6 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/develop_to_dev.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/docker_credential.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/docker_credential.png new file mode 100644 index 000000000..9754c9706 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/docker_credential.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/dockerhub_image.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/dockerhub_image.png new file mode 100644 index 000000000..50bbfd37b Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/dockerhub_image.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/download_artifact.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/download_artifact.png new file mode 100644 index 000000000..099505c26 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/download_artifact.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/edit_panel.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/edit_panel.png new file mode 100644 index 000000000..c37e62126 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/edit_panel.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/edit_pipeline.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/edit_pipeline.png new file mode 100644 index 000000000..9e84cbb80 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/edit_pipeline.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/enter_repo_url.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/enter_repo_url.png new file mode 100644 index 000000000..e22549ba0 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/enter_repo_url.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/first_stage_set.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/first_stage_set.png new file mode 100644 index 000000000..a90dc4b5c Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/first_stage_set.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/graphical_panel.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/graphical_panel.png new file mode 100644 index 000000000..4474ffb04 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/graphical_panel.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/input_message.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/input_message.png new file mode 100644 index 000000000..39629d684 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/input_message.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/login_docker_command.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/login_docker_command.png new file mode 100644 index 000000000..4078c790a Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/login_docker_command.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/maven_container.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/maven_container.png new file mode 100644 index 000000000..ea5235601 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/maven_container.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/maven_set_2.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/maven_set_2.png new file mode 100644 index 000000000..ebc7ba616 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/maven_set_2.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/nested_step.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/nested_step.png new file mode 100644 index 000000000..3e684fdcb Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/nested_step.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/nested_step_maven.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/nested_step_maven.png new file mode 100644 index 000000000..a4a481a66 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/nested_step_maven.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/pipeline_list.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/pipeline_list.png new file mode 100644 index 000000000..61b203945 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/pipeline_list.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/pipeline_successful.jpg b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/pipeline_successful.jpg new file mode 100644 index 000000000..5e95c8745 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/pipeline_successful.jpg differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/push_to_docker.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/push_to_docker.png new file mode 100644 index 000000000..f183ecb4a Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/push_to_docker.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/run_pipeline.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/run_pipeline.png new file mode 100644 index 000000000..78378050d Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/run_pipeline.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/shell_command.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/shell_command.png new file mode 100644 index 000000000..467820ce2 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/shell_command.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonar_env.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonar_env.png new file mode 100644 index 000000000..2bff549f3 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonar_env.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonar_ready.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonar_ready.png new file mode 100644 index 000000000..2e4dec76e Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonar_ready.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonar_token.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonar_token.png new file mode 100644 index 000000000..7623c74c1 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonar_token.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonarqube_credentials.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonarqube_credentials.png new file mode 100644 index 000000000..f71fef815 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonarqube_credentials.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonarqube_result_detail.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonarqube_result_detail.png new file mode 100644 index 000000000..080b832fe Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonarqube_result_detail.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonarqube_shell_new.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonarqube_shell_new.png new file mode 100644 index 000000000..25856d297 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/sonarqube_shell_new.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/timeout_nested_step.jpg b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/timeout_nested_step.jpg new file mode 100644 index 000000000..d84ae73f4 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/timeout_nested_step.jpg differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/timeout_set.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/timeout_set.png new file mode 100644 index 000000000..9013f85ad Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/timeout_set.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/unit_test.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/unit_test.png new file mode 100644 index 000000000..ebd8c91bc Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/unit_test.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/waitforqualitygate_set.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/waitforqualitygate_set.png new file mode 100644 index 000000000..89ecbd067 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/create-a-pipeline-using-graphical-editing-panel/waitforqualitygate_set.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/jenkins-agent/jenkins-agent.jpg b/static/images/ks-qkcp/en/devops-user-guide/use-devops/jenkins-agent/jenkins-agent.jpg new file mode 100644 index 000000000..14d643796 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/jenkins-agent/jenkins-agent.jpg differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/jenkins-email/set-jenkins-email.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/jenkins-email/set-jenkins-email.png new file mode 100644 index 000000000..76fe42f52 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/jenkins-email/set-jenkins-email.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/jenkins-system-settings/plugin-version.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/jenkins-system-settings/plugin-version.png new file mode 100644 index 000000000..9a81852e4 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/jenkins-system-settings/plugin-version.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/pipeline-webhook/edit-btn.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/pipeline-webhook/edit-btn.png new file mode 100644 index 000000000..1692443b3 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/pipeline-webhook/edit-btn.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-pipeline-templates/ci-stages.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-pipeline-templates/ci-stages.png new file mode 100644 index 000000000..3622106f0 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-pipeline-templates/ci-stages.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-pipeline-templates/ci-template.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-pipeline-templates/ci-template.png new file mode 100644 index 000000000..af6e64f2c Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-pipeline-templates/ci-template.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-pipeline-templates/cicd-stages.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-pipeline-templates/cicd-stages.png new file mode 100644 index 000000000..77d7be31a Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-pipeline-templates/cicd-stages.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-pipeline-templates/cicd-template.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-pipeline-templates/cicd-template.png new file mode 100644 index 000000000..937e3a4b7 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-pipeline-templates/cicd-template.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-step-templates/create-pipeline-1.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-step-templates/create-pipeline-1.png new file mode 100644 index 000000000..1ceb4a492 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-step-templates/create-pipeline-1.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-step-templates/create-pipeline-2.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-step-templates/create-pipeline-2.png new file mode 100644 index 000000000..4d19ddf22 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-step-templates/create-pipeline-2.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-step-templates/create-step-1.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-step-templates/create-step-1.png new file mode 100644 index 000000000..92d915613 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-step-templates/create-step-1.png differ diff --git a/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-step-templates/use-step-1.png b/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-step-templates/use-step-1.png new file mode 100644 index 000000000..861bde322 Binary files /dev/null and b/static/images/ks-qkcp/en/devops-user-guide/use-devops/use-step-templates/use-step-1.png differ