improve extension docs and add docs in quickstart

Signed-off-by: zhuxiujuan28 <562873187@qq.com>
This commit is contained in:
zhuxiujuan28 2024-11-07 14:19:42 +08:00
parent 88050809ac
commit ca8c3e7408
29 changed files with 720 additions and 113 deletions

View File

@ -15,8 +15,11 @@ This section explains how to install applications from the App Store.
== Prerequisites
// * {empty}
include::../../../../_custom-en/projectManagement/projectManagement-prer-requiredPermission_new.adoc[]
// * At least one application have been listed in the App Store. For more information, please refer to link:../../../../11-use-extensions/02-app-store/03-app-store-management/01-apps/06-publish-an-app-template/[Publish Application Templates].
== Steps
include::../../../../_custom-en/projectManagement/projectManagement-oper-openProjectPage.adoc[]

View File

@ -0,0 +1,106 @@
[.admon.note,cols="a"]
|===
|说明
|可在{ks_product_left} Web 控制台的扩展市场中查看各个扩展组件的更多信息。
|===
[%header,cols="1a,1a,3a"]
|===
|类别 |名称 |功能
.10+|WhizardTelemetry 可观测平台
|WhizardTelemetry 平台服务
|它是 WhizardTelemetry 可观测平台各扩展组件的公共服务。是各个可观测性扩展组件通用的 APIServer为所有可观测性扩展组件提供公共的后端平台服务。
|WhizardTelemetry 数据流水线
|提供可观测性数据的收集、转换和路由能力。
|OpenSearch 分布式检索与分析引擎
|KubeSphere 内置的日志存储扩展组件,用于存储日志、审计、事件、通知历史等可观测数据。
|WhizardTelemetry 日志
|提供多租户视角的云原生应用实时及历史日志收集、查询、导出、存储等功能,可对接如 ElasticSearch、OpenSearch、Kafka 等日志接收器。
|WhizardTelemetry 事件
|可长期保存 Kubernetes 相关对象产生的事件,并提供多租户视角的事件检索和查看功能。
// |WhizardTelemetry 审计
// |实时记录{ks_product_both}平台上的用户相关操作行为,并提供多租户视角的审计历史的检索及查看功能,可快速回溯相关用户的操作行为。
|WhizardTelemetry 监控
|提供多租户视角的云原生资源监控能力包括针对集群节点工作负载、GPU、K8s 控制面等对象的核心监控指标进行实时和历史数据展示等功能。其中包含了 Whizard 可观测中心。
|WhizardTelemetry 告警
|基于 KubeSphere 采集的监控数据,可针对不同资源类型和监控指标,提供平台及租户视角的告警及告警规则管理功能。
// |WhizardTelemetry 事件告警
// |为 Kubernetes/KubeSphere 审计事件、Kubernetes 原生事件、以及 Kubernetes 日志定义告警规则,对传入的事件数据和日志数据进行评估,并将告警发送到指定的接收器如 HTTP 端点等。
|WhizardTelemetry 通知
|管理多租户 Kubernetes 环境中的通知。它能够接收来自不同发送者的告警、云事件以及其他类型的事件(例如审计和 Kubernetes 事件),并根据租户标签(如命名空间或用户)将通知发送给相应的租户接收器。
|Grafana for WhizardTelemetry
|一个开放且可组合的数据可视化和监控分析平台内置众多仪表盘Dashboard来增强 WhizardTelemetry 可观测平台的可视化能力。
|Grafana Loki for WhizardTelemetry
|支持在 Grafana 控制台查看存储到 Loki 的 KubeSphere 日志、审计、事件及通知历史数据。
.6+|平台管理
|KubeSphere 应用商店管理
|基于 OpenPitrix 的多云应用管理平台,用于上传、审核并管理多云环境中不同类型的应用。它可作为企业不同团队间数据、中间件和办公应用的共享与分发管理工具。
|KubeSphere 服务网格
|一款强大的微服务治理与微服务可视化管理工具。它提供包括蓝绿部署、金丝雀发布与流量镜像三种灰度发布策略,与流量监控、链路追踪两项可观测能力。
|KubeSphere 多集群代理连接
|它是一种通过代理在集群间建立网络连接的工具。如果主集群无法直接访问成员集群,您可以暴露主集群的代理服务地址,这样可以让成员集群通过代理连接到主集群。
|联邦集群应用管理
|一个旨在简化跨多个联邦 Kubernetes 集群管理应用程序的扩展组件,用户可以轻松地在多个联邦集群中部署、更新和管理应用程序。
|KubeEdge 边缘计算框架
|为集群添加边缘节点并在这些节点上运行工作负载,以便将本机容器化应用编排和管理扩展到边缘端设备。
|Metrics Server
|根据设定指标对 Pod 数量进行动态伸缩,使运行在上面的服务对指标的变化有一定的自适应能力。
// |Spring Cloud
// |提供微服务、微服务配置和微服务网关功能。
// |数据库与中间件
// |RadonDB DMP
// |一款面向 Kubernetes 多云场景的企业级云原生数据库管理平台。能轻松实现多类型主流数据库的跨云部署、多云管理、智能观测与统一运维等,并完整构建围绕高性能、高可用、业务追踪、数据流转等场景下的生态闭环,助力客户真正实现数据库即服务。
|CI/CD
|DevOps
|基于 Jenkins 提供开箱即用的 CI/CD 功能,提供一站式 DevOps 方案、支持使用图形编辑面板或 Jenkinsfile 创建流水线。
.2+|网络
|KubeSphere 网关
|KubeSphere 网关是聚合服务、管理 KubeSphere 平台外部访问的扩展组件,现已形成“集群、项目、企业空间”三类资源管理维度的网关体系,支持管理集群网关、企业空间网关与项目网关。
|KubeSphere 网络
|管理集群的网络策略和容器组 IP 池。控制集群和项目中容器组的访问和被访问权限;创建容器组 IP 池并从 IP 池中分配 IP 地址到 Pod。
// |应用路由工具
// |为应用路由提供多项实用扩展能力,如域名重用校验,添加后,租户侧在创建应用路由无法将同一个域名应用在不同的项目中。
|安全
|Gatekeeper
|Gatekeeper 是一个用于 Kubernetes 可灵活配置策略的准入控制器,利用 link:https://www.openpolicyagent.org/[Open Policy Agent (OPA)] 验证在 Kubernetes 集群上创建和更新资源的请求。
// |OAuth2-Proxy
// |提供统一认证接口确保所有应用通过相同流程保护,简化多应用环境下的身份验证管理,提高安全性和用户体验,适用于需要对多个后端应用进行统一认证管理的企业环境,以及需要通过第三方认证服务进行用户身份验证的应用。
// |证书管理
// |为 Kubernetes 中的工作负载创建 TLS 证书,并在证书过期前续订。
|存储
|KubeSphere 存储
|管理卷快照、卷快照类、为存储类设置授权规则、设置存储卷自动扩展。
// |人工智能
// |NVIDIA GPU Operator
// |基于 link:https://github.com/NVIDIA/gpu-operator[GPU Operator] 改造的扩展组件,支持在 Kubernetes 上创建、配置和管理 GPU。
|===

View File

@ -0,0 +1,38 @@
. 以具有 **platform-admin** 角色的用户登录{ks_product_left} Web 控制台。
. 点击**扩展中心**,搜索您要安装的扩展组件。
. 点击扩展组件名称,然后点击**安装**,进入组件安装页面。
. 在组件安装对话框的**版本选择**页签,选择扩展组件的版本号,并安装好所有必装组件(若有),点击**下一步**。
+
[.admon.note,cols="a"]
|===
|说明
|
安装检测时,会识别扩展组件是否有依赖组件。依赖组件分为必装组件和选装组件。
若必装组件的状态为**未就绪**,您需要先行安装正确版本的必装组件,以确保扩展组件的正常使用。而选装组件不会影响扩展组件的安装。
|===
. 在**扩展组件安装**页签,修改扩展组件的配置后(可选),点击**开始安装**,开始安装扩展组件。
+
image:/images/ks-qkcp/zh/v4.0/install-extensions.png[,100%]
. 待安装完成后,点击**下一步**,配置集群 Agent。
. 在**集群选择**页签,根据名称、标识选择集群(可选择多个集群),以便在目标集群中开启扩展组件。
. 在**差异化配置**页签,分别编辑选中集群的 YAML 配置,也可不修改,使用初始默认配置。点击**确定**,开始安装集群 Agent等待完成即可。
+
--
安装完成后,默认启用扩展组件。
[.admon.note,cols="a"]
|===
|说明
|部分扩展组件不需要安装集群 Agent即没有**集群选择**和**差异化配置**页签),请以实际页面为准。
|===
--

View File

@ -1,44 +0,0 @@
---
title: "安装示例组件"
linkTitle: "安装示例组件"
keywords: "Kubernetes, KubeSphere, 快速入门, 安装组件, 示例, DevOps"
description: "以 DevOps 安装为例,演示如何安装扩展组件。"
weight: 02
---
KubeSphere 扩展组件,运行在 KubeSphere Core 之上,用来扩展并增强 KubeSphere 产品能力,以进一步满足企业各类型的业务需求。
本节以安装 DevOps 为例,演示如何在{ks_product_left} Web 控制台安装扩展组件。DevOps 安装完成后,即可在企业空间中创建 DevOps 项目。有关组件使用的更多信息请参阅link:../../11-use-extensions/[扩展组件使用]章节。
== 前提条件
您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息请参阅link:../../05-users-and-roles/01-users/[用户]和link:../../05-users-and-roles/02-platform-roles/[平台角色]。
== 安装步骤
. 以具有 **platform-admin** 角色的用户登录{ks_product_left} Web 控制台。
. 点击**扩展中心**,查看扩展组件列表。
. 点击 DevOps 名称,进入组件安装页面。
. 在组件安装对话框的**版本选择**页签,选择 DevOps 的版本号,并安装好所有必装组件(若有),点击**下一步**。
+
[.admon.note,cols="a"]
|===
|说明
|
安装检测时,会识别扩展组件是否有依赖组件。依赖组件分为必装组件和选装组件。
若必装组件的状态为**未就绪**,您需要先行安装正确版本的必装组件,以确保扩展组件的正常使用。而选装组件不会影响扩展组件的安装。
|===
. 在**扩展组件安装**页签,修改 DevOps 的配置后(可选),点击**开始安装**即开始安装 DevOps。
+
image:/images/ks-qkcp/zh/v4.0/install-extensions.png[,100%]
. 在**集群选择**页签,根据名称、标识选择集群,可选择多个集群。
. 在**差异化配置**页签,分别编辑选中集群的 YAML 配置,也可不修改,使用初始默认配置。点击**确定**,开始配置集群 Agent。
安装完成后,默认启用该组件。您可以在扩展中心配置、升级、禁用、卸载扩展组件。

View File

@ -0,0 +1,42 @@
---
title: "安装并使用扩展组件"
keywords: "Kubernetes, KubeSphere, 快速入门, 安装组件, 示例, DevOps, 扩展组件功能"
description: "介绍所有扩展组件,并演示如何安装扩展组件。"
weight: 02
---
自 v4.1 开始KubeSphere 解耦了一些核心功能组件,它们以扩展组件的方式无缝融入到 KubeSphere 控制台中,并独立维护版本,真正实现即插即用的应用级云原生操作系统。
原有的功能模块,如 DevOps服务网格可观测包括监控、告警、日志、事件、通知应用商店边缘计算网络与存储管理等现由扩展组件提供。因此为了充分利用这些功能建议您根据实际需求选择要安装的扩展组件定制您专属的 KubeSphere 容器管理平台。
== 了解扩展组件
请参照下表了解扩展组件的功能,以便选择合适的扩展组件进行安装。
include::../../_custom/extension-intro-ks.adoc[]
== 安装扩展组件
include::../../_custom/install-all-extensions.adoc[]
== 管理扩展组件
ifeval::["{file_output_type}" == "html"]
您可以在扩展中心link:../../06-extension-user-guide/03-manage-components[配置、升级、禁用、卸载扩展组件]。
endif::[]
ifeval::["{file_output_type}" == "pdf"]
您可以在扩展中心配置、升级、禁用、卸载扩展组件,请参阅《{ks_product_right}扩展组件管理指南》。
endif::[]
== 使用扩展组件
ifeval::["{file_output_type}" == "html"]
扩展组件的使用方法各不相同请参阅link:../../11-use-extensions/[扩展组件使用指南],了解各个扩展组件的功能入口、配置及使用方法。
endif::[]
ifeval::["{file_output_type}" == "pdf"]
扩展组件的使用方法各不相同,请参阅《{ks_product_right}扩展组件使用指南》,了解各个扩展组件的功能入口、配置及使用方法。
endif::[]

View File

@ -1,6 +1,6 @@
---
title: "控制用户权限"
linkTitle: "创建企业空间、项目、用户和平台角色"
linkTitle: "创建企业空间、项目、用户和角色"
keywords: "Kubernetes, KubeSphere, 快速入门, 用户, 权限"
description: "介绍如何创建用户,并使用企业空间、项目和角色控制用户的访问权限。"
weight: 03

View File

@ -0,0 +1,190 @@
---
title: "创建并部署 WordPress"
keywords: "Kubernetes, {ks_product}, 快速入门, 安装, 示例, 应用"
description: "以安装 WordPress 为例,演示如何在 KubeSphere Web 控制台部署应用程序。"
weight: 05
---
ifeval::["{file_output_type}" == "html"]
本节以安装 WordPress 为例,演示如何在{ks_product_left} Web 控制台部署应用程序并在集群外进行访问。有关应用资源管理的更多信息请参阅link:../../09-project-management/[项目管理]。
endif::[]
ifeval::["{file_output_type}" == "pdf"]
本节以安装 WordPress 为例,演示如何在{ks_product_left} Web 控制台部署应用程序,并在集群外进行访问。有关应用资源管理的更多信息,请参阅《{ks_product_right}项目管理指南》。
endif::[]
== WordPress 简介
WordPress 是一款基于 PHP 的免费、开源内容管理系统,您可以使用 WordPress 搭建自己的网站。完整的 WordPress 应用程序包括以下 Kubernetes 对象,由 MySQL 作为后端数据库。
image:/images/ks-qkcp/en/v4.1/WordPress.png[]
== 前提条件
* 准备一个项目(例如 **demo-project**)和一个已邀请到该项目的用户(例如 **project-regular**)。该用户在项目中应具有 **operator** 角色。有关更多信息请参阅link:../03-control-user-permissions/[控制用户权限]。
* {ks_product_right}平台需要安装并启用 **KubeSphere 服务网格**扩展组件。
== 操作步骤
=== 1. 创建保密字典
创建两个保密字典,分别用于设置 MySQL 和 WordPress 的 root 密码。
. 使用 **project-regular** 用户登录{ks_product_left} Web 控制台,点击**企业空间管理**并进入项目所在的企业空间,在项目列表中点击 **demo-project**。
. 在左侧导航栏,选择**配置** > **保密字典**,在页面右侧点击**创建**。
. 在**基本信息**页签,输入保密字典的基本信息(例如,将**名称**设置为 **mysql-secret**),点击**下一步**。
. 在**数据配置**页签,点击**添加数据**添加键值对。
. 将**键**和**值**分别设置为 **MYSQL_ROOT_PASSWORD** 和 **123456**在页面右下角点击image:/images/ks-qkcp/zh/icons/check-dark.svg[check,18,18]保存设置。
. 点击**创建**以创建保密字典,用于为 MySQL 提供 root 密码。
. 重复以上步骤创建一个名为 **wordpress-secret** 的保密字典,将**键**和**值**分别设置为 **WORDPRESS_DB_PASSWORD** 和 **123456**,用于为 WordPress 提供 root 密码。
=== 2. 创建持久卷声明
创建持久卷声明用于存储 WordPress 应用数据。
. 在左侧导航栏,选择**存储** > **持久卷声明**,在页面右侧点击**创建**。
. 在**基本信息**页签,输入持久卷声明的基本信息(例如,将**名称**设置为 **wordpress-pvc**),点击**下一步**。
. 在**存储设置**页签,点击**下一步**。
. 在**高级设置**页签,点击**创建**即可。
=== 3. 创建 MySQL 应用
创建 MySQL 应用为 WordPress 提供数据库服务。
. 在左侧导航栏,选择**服务网格** > **自制应用**,在页面右侧点击**创建**。
. 在**基本信息**页面,输入应用基本信息(例如,将**名称**设置为 **wordpress**),点击**下一步**。
. 在**服务设置**页面,点击**创建服务**为自制应用创建一个服务。
. 在**创建服务**对话框,点击**有状态服务**。
. 在弹出的**创建有状态服务**对话框,输入有状态服务的名称(例如 **mysql**)并点击**下一步**。
. 在**容器组设置**页签,点击**添加容器**。
. 在搜索框中输入 **mysql:5.6**,按下回车键,向下滚动鼠标,点击**使用默认镜像端口**。
+
--
// Note
include::../../../_ks_components/admonitions/note.adoc[]
此时配置还未完成请不要在页面右下角点击image:/images/ks-qkcp/zh/icons/check-dark.svg[check,18,18]。
include::../../../_ks_components/admonitions/admonEnd.adoc[]
--
+
. 在**容器组设置**页签的**高级设置**区域,将内存上限设置为 1000 Mi 或以上,否则 MySQL 可能因内存不足而无法启动。
. 向下滚动鼠标到**环境变量**区域,选择**环境变量**,在下拉框中选择**来自保密字典**。参数设置如下:
** **键**:设置为 **MYSQL_ROOT_PASSWORD**。
** **资源**:设置为 **mysql-secret**。
** **资源中的键**:设置为 **MYSQL_ROOT_PASSWORD**。
. 点击image:/images/ks-qkcp/zh/icons/check-dark.svg[check,18,18]保存配置,然后点击**下一步**。
. 在**存储设置**页签,点击**添加持久卷声明模板**。
. 输入 PVC 名称前缀(例如,**mysql**),并指定挂载路径(模式:**读写**,路径:**/var/lib/mysql**)。
. 点击image:/images/ks-qkcp/zh/icons/check-dark.svg[check,18,18]保存配置,然后点击**下一步**。
. 在**高级设置**页签,点击**创建**以创建 MySQL 应用。
=== 4. 创建 WordPress 应用
. 再次点击**创建服务**。在弹出的**创建服务**对话框,点击**无状态服务**。
. 在弹出的**创建无状态服务**对话框,输入无状态服务的名称(例如,**wordpress**)并点击**下一步**。
. 在**容器组设置**页签,点击**添加容器**。
. 在搜索框中输入 **wordpress:4.8-apache**,按下回车键,向下滚动鼠标,点击**使用默认镜像端口**。
+
--
// Note
include::../../../_ks_components/admonitions/note.adoc[]
此时配置还未完成请不要在页面右下角点击image:/images/ks-qkcp/zh/icons/check-dark.svg[check,18,18]。
include::../../../_ks_components/admonitions/admonEnd.adoc[]
--
. 向下滚动鼠标到**环境变量**区域,选择**环境变量**。此处需要添加两个环境变量,请按如下信息设置:
** 在下拉框中选择**来自保密字典**,输入键名称 **WORDPRESS_DB_PASSWORD**,选择资源 **wordpress-secret** 和资源值 **WORDPRESS_DB_PASSWORD**。
** 点击**添加环境变量**,分别输入键名称 **WORDPRESS_DB_HOST** 和值 **mysql**。
+
--
// Note
include::../../../_ks_components/admonitions/note.adoc[]
**WORDPRESS_DB_HOST** 环境变量的值必须与link:#_3_创建_mysql_应用[创建 MySQL 应用]中创建的 MySQL 有状态服务的名称完全相同。否则WordPress 将无法连接到 MySQL 数据库。
include::../../../_ks_components/admonitions/admonEnd.adoc[]
--
. 点击image:/images/ks-qkcp/zh/icons/check-dark.svg[check,18,18]保存配置,然后点击**下一步**。
. 在**存储设置**页签,点击**挂载卷**。
. 在**持久卷**页签,点击**选择持久卷声明**。
. 选择已创建的 **wordpress-pvc**,将模式设置为**读写**,并输入挂载路径 **/var/www/html**。
. 点击image:/images/ks-qkcp/zh/icons/check-dark.svg[check,18,18]保存配置,再点击**下一步**。
. 在**高级设置**页签,点击**创建**。
. 在**服务**页面,点击**下一步**。
. 在**路由设置**页面,点击**创建**以创建 WordPress。您可以在**自制应用**页面查看已创建的应用。
=== 5. 验证 WordPress 是否创建成功
. 在左侧导航栏,选择**应用负载** > **工作负载**。
. 分别检查**部署**页签和**有状态副本集**页签 **wordpress-v1** 和 **mysql-v1** 的运行状态,若两者状态都为**运行中**,则表明 WordPress 创建成功。
=== 6. 通过 NodePort 访问 WordPress
. 在左侧导航栏,选择**应用负载** > **服务**。
. 点击 `wordpress` 右侧的 image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],选择**编辑外部访问**。
. 在**访问模式**中选择 **NodePort**,点击**确定**。
. 点击 **wordpress** 进入详情页,在**资源状态**页签下的**端口**区域,您可以查看暴露的节点端口。
. 在浏览器中输入 `<节点 IP>:<节点端口>`,即可从集群的外部访问 WordPress如下图所示。
+
--
image::/images/ks-qkcp/zh/v4.1/wordpress-page.png[]
// Note
include::../../../_ks_components/admonitions/note.adoc[]
取决于您的 Kubernetes 集群的部署环境,您可能需要在安全组中放行端口并配置相关的端口转发规则。
include::../../../_ks_components/admonitions/admonEnd.adoc[]
--

View File

@ -0,0 +1,115 @@
---
title: "部署并访问 Bookinfo"
keywords: "KubeSphere, Kubernetes, Bookinfo, Istio"
description: "通过部署示例应用程序 Bookinfo 来探索 KubeSphere 服务网格的基本功能。"
weight: 06
---
作为开源的服务网格解决方案link:https://istio.io/[Istio] 为微服务提供了强大的流量管理功能。**KubeSphere 服务网格**扩展组件集成了 Istio为用户提供一致的微服务管理体验。
本节演示了如何部署由四个独立的微服务组成的示例应用程序 Bookinfo以及如何通过 NodePort 访问该应用。
== Bookinfo 简介
Bookinfo 应用会显示一本书的信息页面,类似于在线书店的一个品类。 此页面上会显示一本书的描述、书籍的细节ISBN、页数等以及这本书相关的几条评论。
Bookinfo 应用由以下四个独立的微服务组成。
- **productpage** 微服务会调用 **details** 和 **reviews** 用来生成页面。
- **details** 微服务中包含了书籍的信息。
- **reviews** 微服务中包含了书籍相关的评论,它还会调用 **ratings** 微服务。
- **ratings** 微服务中包含了由书籍评价组成的评级信息。
reviews 微服务有 3 个版本:
- v1 版本不会调用 ratings 服务。
- v2 版本会调用 ratings 服务,并使用 1 到 5 个黑色星形图标来显示评分信息。
- v3 版本会调用 ratings 服务,并使用 1 到 5 个红色星形图标来显示评分信息。
下图展示了这个应用的端到端架构。有关更多详细信息,请参见 link:https://istio.io/latest/zh/docs/examples/bookinfo/[Bookinfo 应用]。
image:/images/ks-qkcp/zh/v4.1/bookinfo.png[]
== 前提条件
* 准备一个项目(例如 **demo-project**)和一个已邀请到该项目的用户(例如 **project-regular**)。该用户在项目中应具有 **operator** 角色。有关更多信息请参阅link:../03-control-user-permissions/[控制用户权限]。
* {ks_product_right}平台需要安装并启用 **KubeSphere 服务网格**和 **KubeSphere 网关**扩展组件。
ifeval::["{file_output_type}" == "html"]
* 启用项目网关,并为项目网关启用**链路追踪**功能。有关更多信息请参阅link:../../11-use-extensions/12-gateway/01-project-gateway/01-enable-a-project-gateway[启用项目网关]。
endif::[]
ifeval::["{file_output_type}" == "pdf"]
* 启用项目网关,并为项目网关启用**链路追踪**功能。有关更多信息,请参阅《{ks_product_right}扩展组件使用指南》的“启用项目网关”章节。
endif::[]
+
[.admon.note,cols="a"]
|===
|说明
|
如果启用链路追踪后无法访问路由(Ingress),请在路由中添加注解 `nginx.ingress.kubernetes.io/service-upstream: true`。
|===
== 操作步骤
=== 1. 部署 Bookinfo
. 使用 **project-regular** 用户登录{ks_product_left} Web 控制台,点击**企业空间管理**并进入项目所在的企业空间,在项目列表中点击 **demo-project**。
. 在左侧导航栏,选择**服务网格** > **自制应用**,点击右侧的**部署示例应用**。
. 在出现的对话框中点击**下一步**。**服务设置**页签已经预先填好四个部署productpage、reviews、details、ratings的必填字段您无需修改设置只需在**路由设置**页签中点击**创建**。
=== 2. 验证 Bookinfo 是否部署成功
在左侧导航栏,选择**应用负载** >**工作负载**,检查**部署**页签中这四个部署的运行状态,若状态都为**运行中**,则表明 Bookinfo 应用部署成功。
=== 3. 通过 NodePort 访问 Bookinfo
. 在左侧导航栏,选择**应用负载** > **服务**。
. 点击 `productpage` 右侧的image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],选择**编辑外部访问**。
. 在**访问模式**中选择 **NodePort**,点击**确定**。
. 点击 **productpage** 进入详情页,在**资源状态**页签下的**端口**区域,您可以查看暴露的节点端口。
. 在浏览器中输入 `<节点 IP>:<节点端口>`,即可从集群的外部访问 Bookinfo如下图所示。
+
--
image:/images/ks-qkcp/zh/v4.1/bookinfo-display.png[]
// Note
include::../../../_ks_components/admonitions/note.adoc[]
取决于您的 Kubernetes 集群的部署环境,您可能需要在安全组中放行端口并配置相关的端口转发规则。
include::../../../_ks_components/admonitions/admonEnd.adoc[]
--
. 点击页面左下角的 **Normal user**,查看 Bookinfo 的完整页面。
+
--
左侧 Book Details 是由 `details` 微服务提供的内容,右侧 Book Reviews 是由 `reviews` 微服务提供的内容,仅出现 Reviewer1 和 Reviewer2并没有任何评级内容`ratings`),因为 `reviews` 微服务的 v1 版本不会调用 `ratings` 服务。
若想调用 `ratings` 服务并探索更多流量管理相关的功能您可以为该应用执行link:../07-canary-release-example/[金丝雀发布]。
image:/images/ks-qkcp/zh/v4.1/ratings-page.png[]
[.admon.note,cols="a"]
|===
|说明
|
ifeval::["{file_output_type}" == "html"]
KubeSphere 基于 Istio 提供了三种灰度策略包括蓝绿部署、金丝雀发布和流量镜像。有关更多信息请参阅link:../../11-use-extensions/03-service-mesh/02-grayscale-release/[灰度发布]。
endif::[]
ifeval::["{file_output_type}" == "pdf"]
KubeSphere 基于 Istio 提供了三种灰度策略,包括蓝绿部署、金丝雀发布和流量镜像。有关更多信息,请参阅《{ks_product_right}扩展组件使用指南》的“灰度发布”章节。
endif::[]
|===
--

View File

@ -0,0 +1,156 @@
---
title: "金丝雀发布实践"
keywords: "KubeSphere, Kubernetes, Bookinfo, Istio, 金丝雀发布, 服务网格"
description: "了解如何在 KubeSphere 中部署金丝雀服务。"
weight: 07
---
在金丝雀发布中,您可以引入应用的新版本,并向其发送一小部分流量来进行测试。同时,旧版本负责处理其余的流量。如果一切顺利,您就可以逐渐增加向新版本发送的流量,同时逐步停用旧版本。如果出现任何问题,您可以更改流量比例,回滚至先前版本。
该方法能够高效地测试服务性能和可靠性,有助于在实际环境中发现潜在问题,同时不影响系统整体稳定性。
== 前提条件
* 准备一个项目(例如 **demo-project**)和一个已邀请到该项目的用户(例如 **project-regular**)。该用户在项目中应具有 **operator** 角色。有关更多信息请参阅link:../03-control-user-permissions/[控制用户权限]。
* {ks_product_right}平台需要安装并启用 **KubeSphere 服务网格**和 **KubeSphere 网关**扩展组件。
ifeval::["{file_output_type}" == "html"]
* 启用项目网关,并为项目网关启用**链路追踪**功能。有关更多信息请参阅link:../../11-use-extensions/12-gateway/01-project-gateway/01-enable-a-project-gateway[启用项目网关]。
endif::[]
ifeval::["{file_output_type}" == "pdf"]
* 启用项目网关,并为项目网关启用**链路追踪**功能。有关更多信息,请参阅《{ks_product_right}扩展组件使用指南》的“启用项目网关”章节。
endif::[]
+
[.admon.note,cols="a"]
|===
|说明
|
如果启用链路追踪后无法访问路由(Ingress),请在路由中添加注解 `nginx.ingress.kubernetes.io/service-upstream: true`。
|===
* 已创建一个可用的自制应用,并且在创建时开启了**应用治理**,以便实现该应用的金丝雀发布。本教程中使用的示例应用是 Bookinfo。有关更多信息请参见link:../06-deploy-bookinfo/[部署并访问 Bookinfo]。
== 操作步骤
=== 1. 创建金丝雀发布任务
. 使用 **project-regular** 用户登录{ks_product_left} Web 控制台,点击**企业空间管理**并进入项目所在的企业空间,在项目列表中点击 **demo-project**。
. 在左侧导航栏,选择**服务网格** > **灰度发布**,在**发布模式**页签下,点击**金丝雀发布**右侧的**创建**。
. 设置任务名称,点击**下一步**。
. 在**服务设置**页签,从下拉列表中选择您的应用和要实现金丝雀发布的服务。如果您同样使用示例应用 Bookinfo请选择 **reviews** 并点击**下一步**。
. 在**新版本设置**页签,设置新版本号 `v2`,并修改 `reviews` 的容器镜像地址(例如 `kubesphere/examples-bookinfo-reviews-v2:1.16.2`;将 `v1` 改为 `v2`),点击**下一步**。
. 您可以使用具体比例或者使用请求内容(例如 `Http Header`、`Cookie` 和 `URI`)分别向这两个版本(`v1` 和 `v2`)发送流量。选择**指定流量分配**,并拖动中间的滑块来更改向这两个版本分别发送的流量比例(例如设置为各 50%)。操作完成后,点击**创建**。
+
该发布任务也会同时创建新的部署,可在**应用负载 > 工作负载**页面查看新版本对应的部署。
=== 2. 验证金丝雀发布
现在您有两个可用的应用版本,请访问该应用以验证金丝雀发布。
. link:../06-deploy-bookinfo//#_3_通过_nodeport_访问_bookinfo[访问 Bookinfo 网站],重复刷新浏览器。您会看到 **Book Reviews** 板块以 50% 的比例在 v1 版本和 v2 版本之间切换,即不展示或展示 5 个黑色星标的评级。
. 金丝雀发布任务创建后会显示在**发布任务**页签下。点击该任务查看详情。
. 您可以看到每个版本分别收到一半流量。
. 也可以在运行 KubeSphere 的机器上执行以下命令,直接获取虚拟服务来识别权重:
+
--
[source,bash]
----
kubectl -n demo-project get virtualservice -o yaml
----
[.admon.note,cols="a"]
|===
|说明
|
- 当您执行上述命令时,请将 `demo-project` 替换为您自己的项目名称。
- 如果您想在{ks_product_left} Web 控制台使用 kubectl 工具执行命令,则需要使用 `admin` 帐户登录。
|===
预期输出:
[source,bash]
----
...
spec:
hosts:
- reviews
http:
- route:
- destination:
host: reviews
port:
number: 9080
subset: v1
weight: 50
- destination:
host: reviews
port:
number: 9080
subset: v2
weight: 50
...
----
--
=== 3. 查看网络拓扑
. 在运行 KubeSphere 的机器上执行以下命令引入真实流量,模拟每 0.5 秒访问一次 Bookinfo。
+
--
[source,bash]
----
watch -n 0.5 "curl http://productpage.demo-project.192.168.0.2.nip.io:32277/productpage?u=normal"
----
[.admon.note,cols="a"]
|===
|说明
|
请确保将 `demo-project`、`192.168.0.2` 和 `32277` 替换为您自己环境的实际值。
|===
--
. 在**自制应用**页面,点击 **Bookinfo** 进入详情页,点击**流量监控**页签,您可以看到不同服务之间的通信、依赖关系、运行状态及性能。
. 点击组件(例如 **reviews**),在右侧可以看到流量监控信息,显示**流量**、**成功率**和**持续时间**的实时数据。
=== 4. 查看链路追踪详情
KubeSphere 提供基于 link:https://www.jaegertracing.io/[Jaeger] 的分布式追踪功能,用来对基于微服务的分布式应用程序进行监控及故障排查。
. 在**链路追踪**页签,可以清楚地看到请求的所有阶段及内部调用,以及每个阶段的调用耗时。
. 点击任意条目,可以深入查看请求的详细信息及该请求被处理的位置(在哪个机器或者容器)。
=== 5. 接管所有流量
如果一切运行顺利,则可以将所有流量引入新版本。
. 回到**灰度发布**页面,在**发布任务**页签,点击金丝雀发布任务。
. 在弹出的对话框中,点击 **reviews v2** 右侧的image:/images/ks-qkcp/zh/icons/more.svg[more,18,18],选择**接管**。这代表 100% 的流量将会被发送到新版本 (v2)。
+
[.admon.note,cols="a"]
|===
|说明
|
如果新版本出现任何问题,选择 v1 版本接管,即可回滚到之前的 v1 版本。
|===
. 再次访问 Bookinfo多刷新几次浏览器您会发现页面只显示 **reviews v2** 的结果(即带有黑色星标的评级)。

View File

@ -3,7 +3,7 @@ title: "修改界面语言"
linkTitle: "修改界面语言"
keywords: "Kubernetes, KubeSphere, 集群管理, Web 控制台, 修改语言"
description: "介绍如何修改当前用户的界面语言。"
weight: 04
weight: 10
---
本节介绍如何修改{ks_product_left} Web 控制台的界面语言。

View File

@ -1,51 +0,0 @@
---
title: "安装扩展组件"
linkTitle: "安装扩展组件"
keywords: "Kubernetes, KubeSphere,安装,组件,多集群"
description: "介绍如何安装扩展组件。"
weight: 01
---
// 导出说明:此文档用于离线交付 pdf 版本,不可与 02-subscribe-and-install-components 同时存在。
本节介绍如何安装扩展组件。
== 前提条件
您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息请参阅link:../../05-users-and-roles/01-users/[用户]和link:../../05-users-and-roles/02-platform-roles/[平台角色]。
== 安装步骤
. 以具有 **platform-admin** 角色的用户登录{ks_product_left} Web 控制台。
. 点击**扩展中心**,查看扩展组件列表。
. 点击未安装的扩展组件名称,然后点击**管理 > 安装**,进入组件安装页面。
. 在组件安装对话框的**版本选择**页签,选择扩展组件的版本号,并安装好所有必装组件,点击**下一步**。
+
include::../../../_ks_components/admonitions/note.adoc[]
安装检测时,会识别扩展组件是否有依赖组件。依赖组件分为必装组件和选装组件。
若必装组件的状态为**未就绪**,您需要先行安装正确版本的必装组件,以确保扩展组件的正常使用。而选装组件不会影响扩展组件的安装。
include::../../../_ks_components/admonitions/admonEnd.adoc[]
. 在**扩展组件安装**页签,修改扩展组件的配置后(可选),点击**开始安装**,开始安装扩展组件。
+
image:/images/ks-qkcp/zh/v4.0/install-extensions.png[,100%]
. 在**集群选择**页签,根据名称、标识选择集群,可选择多个集群。
. 在**差异化配置**页签,分别编辑选中集群的 YAML 配置,也可不修改,使用初始默认配置。点击**确定**,开始配置集群 Agent。
+
include::../../../_ks_components/admonitions/note.adoc[]
部分扩展组件可能需要安装集群 Agent以便能正常使用扩展组件的功能。
include::../../../_ks_components/admonitions/admonEnd.adoc[]
安装完成后,默认启用该组件。您可以在扩展中心配置、升级、禁用、卸载扩展组件。

View File

@ -0,0 +1,30 @@
---
title: "安装扩展组件"
keywords: "Kubernetes, KubeSphere,安装,组件,多集群"
description: "介绍如何安装扩展组件。"
weight: 01
---
本节介绍如何安装扩展组件。
ifeval::["{file_output_type}" == "html"]
有关如何访问、配置及使用各个扩展组件请参阅link:../../11-use-extensions/[扩展组件使用指南]。
endif::[]
ifeval::["{file_output_type}" == "pdf"]
有关如何访问、配置及使用各个扩展组件,请参阅《{ks_product_right}扩展组件使用指南》。
endif::[]
== 前提条件
ifeval::["{file_output_type}" == "html"]
您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息请参阅link:../../05-users-and-roles/01-users/[用户]和link:../../05-users-and-roles/02-platform-roles/[平台角色]。
endif::[]
ifeval::["{file_output_type}" == "pdf"]
您需要在{ks_product_both}平台具有 **platform-admin** 角色。有关更多信息,请参阅《{ks_product_right}用户和角色管理指南》。
endif::[]
== 安装步骤
include::../../_custom/install-all-extensions.adoc[]

View File

@ -16,8 +16,10 @@ weight: 01
== 前提条件
// * {empty}
include::../../../../_custom/projectManagement/projectManagement-prer-requiredPermission_new.adoc[]
// * 应用商店需已上架应用模板。有关更多信息请参阅link:../../../../11-use-extensions/02-app-store/03-app-store-management/01-apps/06-publish-an-app-template/[上架应用模板]。
== 操作步骤

View File

@ -0,0 +1,19 @@
---
title: "概述"
keywords: "Kubernetes, {ks_product}, 扩展组件, 功能入口, 配置, 使用方法"
description: "介绍 KubeSphere 扩展组件。"
weight: 01
---
KubeSphere 扩展组件,是构建在 KubeSphere LuBan 之上,用来扩展并增强 KubeSphere 产品能力,以进一步满足企业各类型的业务需求。{ks_product_right}安装完成后,仅包含系统运行的必备基础功能,建议您安装扩展组件以充分利用{ks_product_both}的功能特性。
了解并安装扩展组件后,请参阅本章节中的扩展组件教程了解如何访问、配置及使用各个扩展组件。
== 扩展组件介绍
include::../../_custom/extension-intro-ks.adoc[]
== 安装扩展组件
include::../../_custom/install-all-extensions.adoc[]

View File

@ -2,7 +2,7 @@
title: "DevOps"
keywords: "Kubernetes, {ks_product}, DevOps"
description: "如何在 DevOps 项目中进行管理和操作,包括运行流水线、创建凭证和集成工具等。"
weight: 01
weight: 02
layout: "second"
---

View File

@ -1,6 +1,6 @@
---
title: "KubeSphere 应用商店管理"
weight: 02
weight: 03
layout: "second"
---

View File

@ -2,7 +2,7 @@
title: "KubeSphere 服务网格"
keywords: "Kubernetes, {ks_product}, 服务网格"
description: "介绍如何使用 KubeSphere 服务网格组件。"
weight: 03
weight: 04
layout: "second"
---

View File

@ -2,7 +2,7 @@
title: "联邦集群应用管理"
keywords: "Kubernetes, {ks_product}, 联邦项目"
description: "介绍如何管理联邦项目,以及如何在联邦项目中管理应用负载、卷、配置资源和项目设置。"
weight: 04
weight: 05
layout: "second"
---

View File

@ -2,7 +2,7 @@
title: "WhizardTelemetry 可观测平台"
keywords: "Kubernetes, {ks_product}, 可观测中心, 监控, 告警, 事件, 通知, 日志, 审计, 事件, 数据流水线, OpenSearch"
description: "介绍如何使用 WhizardTelemetry 可观测平台。"
weight: 05
weight: 06
layout: "second"
---
@ -12,24 +12,24 @@ WhizardTelemetry 可观测平台由以下扩展组件构成:
- **WhizardTelemetry 平台服务**:是 WhizardTelemetry 可观测平台各扩展组件的公共服务。它是各个可观测性扩展组件通用的 APIServer为所有可观测性扩展组件提供公共的后端平台服务。
- **WhizardTelemetry 数据流水线**:提供可观测性数据的收集、转换和路由能力。
- **OpenSearch 分布式检索与分析引擎**:支持使用外置或内置的 OpenSearch 集群来存储、检索与分析日志、审计、事件、通知历史等可观测数据。
- **WhizardTelemetry 日志**:提供多租户视角的云原生应用实时及历史日志收集、查询、导出、存储等功能,可对接如 ElasticSearch、OpenSearch、Kafka 等日志接收器。
- **WhizardTelemetry 事件**:可长期保存 Kubernetes 相关对象产生的事件,并提供多租户视角的事件检索和查看功能。
- **WhizardTelemetry 审计**:实时记录{ks_product_both}平台上的用户相关操作行为,并提供多租户视角的审计历史的检索及查看功能,可快速回溯相关用户的操作行为。
// - **WhizardTelemetry 审计**:实时记录{ks_product_both}平台上的用户相关操作行为,并提供多租户视角的审计历史的检索及查看功能,可快速回溯相关用户的操作行为。
- **WhizardTelemetry 监控**提供多租户视角的云原生资源监控能力包括针对集群节点工作负载、GPU、K8s 控制面等对象的核心监控指标进行实时和历史数据展示等功能。
- **WhizardTelemetry 告警**:基于 KubeSphere 采集的监控数据,可针对不同资源类型和监控指标,提供平台及租户视角的告警及告警规则管理功能。
- **WhizardTelemetry 事件告警**:为 Kubernetes 原生事件和 Kubernetes/KubeSphere 审计事件定义告警规则,对传入的事件数据进行评估,并将告警发送到指定的接收器如 HTTP 端点等。
// - **WhizardTelemetry 事件告警**:为 Kubernetes/KubeSphere 审计事件、Kubernetes 原生事件、以及 Kubernetes 日志定义告警规则,对传入的事件数据和日志数据进行评估,并将告警发送到指定的接收器如 HTTP 端点等。
- **WhizardTelemetry 通知**:管理多租户 Kubernetes 环境中的通知。它能够接收来自不同发送者的告警、云事件以及其他类型的事件(例如审计和 Kubernetes 事件并根据租户标签如命名空间或用户将通知发送给相应的租户接收器。支持邮件、飞书、钉钉、企业微信、Slack、Webhook 等多种通知渠道。
- **WhizardTelemetry 数据流水线**:提供可观测性数据的收集、转换和路由能力。
- **OpenSearch 分布式检索与分析引擎**:支持使用外置或内置的 OpenSearch 集群来存储、检索与分析日志、审计、事件、通知历史等可观测数据。
- **Grafana for WhizardTelemetry**一个开放且可组合的数据可视化和监控分析平台内置众多仪表盘Dashboard来增强 WhizardTelemetry 可观测平台的可视化能力。
- **Grafana Loki for WhizardTelemetry**:支持在 Grafana 控制台查看存储到 Loki 的 KubeSphere 日志、审计、事件及通知历史数据。

View File

@ -4,7 +4,6 @@ keywords: "Kubernetes, {ks_product}, 集群管理, 边缘节点"
description: "介绍如何使用 KubeEdge 管理集群的边缘节点。"
weight: 17
layout: "second"
draft: true
---

View File

@ -1,10 +1,9 @@
---
title: "扩展组件使用"
keywords: "Kubernetes, {ks_product}, 扩展组件, 使用指南, DevOps, DMP, whizard, 可观测组件"
keywords: "Kubernetes, {ks_product}, 扩展组件, 使用指南, 访问入口, 配置, 使用方法, whizard, 可观测"
description: "介绍如何使用各个扩展组件。"
weight: 11
layout: "second"
icon: "/images/docs/common/docs.svg"
---
本节介绍如何使用{ks_product_both}的各个扩展组件。使用前请先link:../06-extension-user-guide/01-install-components-pdf/[安装扩展组件]。

View File

@ -18,13 +18,16 @@ sectionLink:
- /docs/v4.1/02-quickstart/01-install-kubesphere.adoc
- /docs/v4.1/03-installation-and-upgrade/02-install-kubesphere/02-install-kubernetes-and-kubesphere.adoc
- /docs/v4.1/02-quickstart/03-control-user-permissions.adoc
- docs/v4.1/03-installation-and-upgrade/02-install-kubesphere/04-offline-installation.adoc
- /docs/v4.1/03-installation-and-upgrade/05-add-and-delete-cluster-nodes/01-add-cluster-nodes.adoc
- /docs/v4.1/07-cluster-management/10-multi-cluster-management
- /docs/v4.1/09-project-management/06-project-settings/02-project-roles/01-create-a-project-role.adoc
- /docs/v4.1/06-extension-user-guide/01-install-components-pdf.adoc
- /docs/v4.1/06-extension-user-guide/01-install-components.adoc
- /docs/v4.1/10-toolbox/01-use-kubectl-tool.adoc
- docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/01-create-a-pipeline-using-graphical-editing-panel.adoc
- docs/v4.1/11-use-extensions/01-devops/03-how-to-use/02-pipelines/02-create-a-pipeline-using-jenkinsfile.adoc
- docs/v4.1/09-project-management/03-application-workloads/01-apps/01-install-an-app-from-the-app-store.adoc
- docs/v4.1/09-project-management/03-application-workloads/01-apps/02-install-an-app-using-an-app-template.adoc
section3:
title: 在云服务上运行 KubeSphere 与 Kubernetes 技术栈

Binary file not shown.

After

Width:  |  Height:  |  Size: 112 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 112 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 135 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB