Skip to content

Commit 95010ae

Browse files
en version.
Signed-off-by: 抒情熊 <2669184984@qq.com>
1 parent a320a67 commit 95010ae

File tree

1 file changed

+114
-0
lines changed

1 file changed

+114
-0
lines changed

content/zh/docs/architecture.md

Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -275,3 +275,117 @@ Admission 支持多种资源的准入控制,包括 Jobs、PodGroups、Pods 和
275275

276276
- Vcctl
277277
Volcano vcctl是Volcano的命令行客户端工具。
278+
##### TLS 证书参数
279+
280+
| 参数名 | 描述 | 默认值 | 示例 |
281+
| ---------------------- | ------------------------------------------- | ------ | --------------------------------------------- |
282+
| `tls-cert-file` | HTTPS 服务的 x509 证书文件路径 || `--tls-cert-file=/etc/volcano/tls.crt` |
283+
| `tls-private-key-file` |`tls-cert-file` 匹配的 x509 私钥文件路径 || `--tls-private-key-file=/etc/volcano/tls.key` |
284+
| `ca-cert-file` | HTTPS 服务的 CA 证书文件路径 || `--ca-cert-file=/etc/volcano/ca.crt` |
285+
286+
##### 服务配置参数
287+
288+
| 参数名 | 描述 | 默认值 | 示例 |
289+
| ---------------- | ------------------------------------- | ------ | -------------------------- |
290+
| `listen-address` | Admission Controller 服务器监听的地址 || `--listen-address=0.0.0.0` |
291+
| `port` | Admission Controller 服务器使用的端口 | 8443 | `--port=8443` |
292+
| `version` | 显示版本信息并退出 | false | `--version` |
293+
294+
##### Webhook 配置参数
295+
296+
| 参数名 | 描述 | 默认值 | 示例 |
297+
| ---------------------- | ---------------------- | ------ | ------------------------------------------------------------ |
298+
| `webhook-namespace` | Webhook 所在的命名空间 || `--webhook-namespace=volcano-system` |
299+
| `webhook-service-name` | Webhook 服务的名称 || `--webhook-service-name=volcano-admission` |
300+
| `webhook-url` | Webhook 的 URL || `--webhook-url=https://volcano-admission.volcano-system:8443` |
301+
| `admission-conf` | Webhook 的配置文件路径 || `--admission-conf=/etc/volcano/admission.conf` |
302+
303+
##### 准入控制参数
304+
305+
| 参数名 | 描述 | 默认值 | 示例 |
306+
| ------------------- | ------------------------------------------------------- | ------------------------------------------------------------ | ------------------------------------------------- |
307+
| `enabled-admission` | 启用的准入 Webhook 路径,多个路径用逗号分隔 | "/jobs/mutate,/jobs/validate,/podgroups/mutate,/pods/validate,/pods/mutate,/queues/mutate,/queues/validate" | `--enabled-admission=/jobs/mutate,/pods/validate` |
308+
| `scheduler-name` | Volcano 将处理 `.spec.SchedulerName` 与此参数匹配的 Pod | ["volcano"] | `--scheduler-name=volcano,custom-scheduler` |
309+
310+
##### 健康检查参数
311+
312+
| 参数名 | 描述 | 默认值 | 示例 |
313+
| ----------------- | ------------------------------ | -------- | -------------------------- |
314+
| `enable-healthz` | 是否启用健康检查 | false | `--enable-healthz=true` |
315+
| `healthz-address` | 健康检查服务器监听的地址和端口 | ":11251" | `--healthz-address=:11252` |
316+
317+
### Vcctl
318+
319+
#### 介绍
320+
321+
`vcctl` 是 Volcano 提供的命令行工具,用于管理和操作 Volcano 集群中的资源。它提供了一组直观的命令,使用户能够轻松地查询、创建、修改和删除 Volcano 资源,如作业(Job)、队列(Queue)和 PodGroup 等。
322+
323+
该工具支持多种操作,包括列出、创建、删除和管理 Volcano 作业,控制作业的生命周期(挂起、恢复、运行),查询和管理队列资源,查看 PodGroup 状态和详情,以及与 Volcano 调度器交互。通过命令行界面,用户可以快速执行常见的管理任务,而无需直接操作 Kubernetes API 或 YAML 文件。这使得 Volcano 资源管理变得更加简单和高效,特别适合于批处理作业和高性能计算场景。
324+
325+
`vcctl` 工具采用了类似于 `kubectl` 的命令结构,使 Kubernetes 用户能够快速上手。它支持详细的帮助信息,用户可以通过 `vcctl -h``vcctl [command] -h` 获取各命令的详细用法和选项说明。作为 Volcano 生态系统的重要组成部分,`vcctl` 为用户提供了一个便捷的接口,简化了复杂批处理工作负载的管理和操作流程。
326+
327+
#### 参数
328+
329+
vcctl不需要其他额外参数,直接启动即可。
330+
331+
### Agent
332+
333+
#### 介绍
334+
335+
Agent 是运行在 Kubernetes 节点上的组件,主要负责资源监控和过度订阅管理。它通过识别节点上的闲置资源并允许合理超卖,显著提高集群资源利用率。
336+
337+
Agent 持续监控节点资源使用情况,为 Volcano 调度系统提供准确的资源信息,支持更智能的调度决策。在资源紧张时,它能够执行资源回收操作,确保关键工作负载的性能不受影响。
338+
339+
通过与 Kubernetes CGroup 系统的深度集成,Agent 实现了精细化的资源控制,是 Volcano 高效批处理调度的重要支撑组件,特别适合高性能计算和机器学习等场景。
340+
341+
#### 参数
342+
343+
##### Kubernetes 参数
344+
345+
| 参数名 | 类型 | 默认值 | 描述 |
346+
| ---------------------- | ------ | ----------------------------- | ------------------------------------------------------------ |
347+
| `--kube-cgroup-root` | string | `""` | Kubernetes 的 cgroup 根路径。如果启用了 CgroupsPerQOS,这是 QOS cgroup 层次结构的根 |
348+
| `--kube-node-name` | string | 环境变量 `KUBE_NODE_NAME` | Agent 运行所在的节点名称 |
349+
| `--kube-pod-name` | string | 环境变量 `KUBE_POD_NAME` | Agent 所在 Pod 的名称 |
350+
| `--kube-pod-namespace` | string | 环境变量 `KUBE_POD_NAMESPACE` | Agent 所在 Pod 的命名空间 |
351+
352+
##### 健康检查参数
353+
354+
| 参数名 | 类型 | 默认值 | 描述 |
355+
| ------------------- | ------ | ------ | ------------------------ |
356+
| `--healthz-address` | string | `""` | 健康检查服务器监听的地址 |
357+
| `--healthz-port` | int | `3300` | 健康检查服务器监听的端口 |
358+
359+
##### 资源过度订阅参数
360+
361+
| 参数名 | 类型 | 默认值 | 描述 |
362+
| --------------------------- | ------ | ---------- | ------------------------------------------------------------ |
363+
| `--oversubscription-policy` | string | `"extend"` | 过度订阅策略,决定过度订阅资源的报告和使用方式。默认为 `extend`,表示报告为扩展资源 |
364+
| `--oversubscription-ratio` | int | `60` | 过度订阅比率,决定有多少闲置资源可以被超卖,单位为百分比 |
365+
| `--include-system-usage` | bool | `false` | 是否在计算过度订阅资源和执行驱逐时考虑系统资源使用情况 |
366+
367+
##### 功能特性参数
368+
369+
| 参数名 | 类型 | 默认值 | 描述 |
370+
| ---------------------- | -------- | ------- | ------------------------------------------------------------ |
371+
| `--supported-features` | []string | `["*"]` | 支持的特性列表。`*` 表示支持所有默认启用的特性,`foo` 表示支持名为 `foo` 的特性,`-foo` 表示不支持名为 `foo` 的特性 |
372+
373+
### Network-qos
374+
375+
#### 介绍
376+
377+
Network插件是一个专为 Kubernetes 集群设计的网络带宽管理解决方案,旨在智能调节不同类型工作负载之间的网络资源分配。该插件通过 CNI 机制与现有网络插件链式组合,实现对容器网络流量的精细控制。
378+
379+
它的核心功能是区分在线和离线工作负载,并根据在线服务的实时带宽需求动态调整离线作业的带宽上限。当在线服务的带宽使用超过预设水位线时,系统会自动降低离线作业的可用带宽,确保关键业务服务质量;当在线服务带宽需求较低时,系统则允许离线作业使用更多带宽资源,提高集群整体资源利用率。
380+
381+
该插件基于 Linux TC(Traffic Control)和 eBPF 技术实现,提供高效、低开销的网络流量管理能力,是混合部署环境中保障服务质量的重要工具。
382+
383+
#### 参数
384+
385+
| 参数名称 | 说明 | 默认值 | 类型 |
386+
| -------------------------- | ------------------------------------------------------------ | ------ | ------ |
387+
| `CheckoutInterval` | 检查和更新离线作业带宽限制的时间间隔 || string |
388+
| `OnlineBandwidthWatermark` | 在线作业的带宽阈值,是所有在线 Pod 带宽使用的总和上限 || string |
389+
| `OfflineLowBandwidth` | 当在线作业带宽使用超过水位线时,离线作业可使用的最大网络带宽 || string |
390+
| `OfflineHighBandwidth` | 当在线作业带宽使用未达到水位线时,离线作业可使用的最大网络带宽 || string |
391+
| `EnableNetworkQoS` | 是否启用网络 QoS 功能 | false | bool |

0 commit comments

Comments
 (0)