如何配置环境变量
本指南描述了每个 Katib 组件的环境变量。如果您想更改您的 Katib 安装,可以修改其中一些变量。
在下面的表格中,您可以找到每个Katib组件中所有环境变量的描述、默认值和必需属性。如果一个变量具有必需属性,您需要在相应的Katib组件的清单中设置相关的环境变量。
Katib 控制器
以下是Katib Controller部署的环境变量:
| 变量 | 描述 | 默认值 | 是否必需 |
|---|---|---|---|
KATIB_CORE_NAMESPACE | Base Namespace for all Katib components and default Experiment | metadata.namespace | Yes |
KATIB_SUGGESTION_COMPOSER | Composer for the Katib Suggestions. You can use your own Composer | general | No |
KATIB_DB_MANAGER_SERVICE_NAMESPACE | Katib DB Manager Namespace | KATIB_CORE_NAMESPACE env variable | No |
KATIB_DB_MANAGER_SERVICE_IP | Katib DB Manager IP | katib-db-manager | No |
KATIB_DB_MANAGER_SERVICE_PORT | Katib DB Manager Port | 6789 | No |
Katib 控制器使用这个地址表达式调用 Katib 数据库管理器:
KATIB_DB_MANAGER_SERVICE_IP.KATIB_DB_MANAGER_SERVICE_NAMESPACE:KATIB_DB_MANAGER_SERVICE_PORT
如果您设置 KATIB_DB_MANAGER_SERVICE_NAMESPACE="",Katib Controller 将使用此地址调用 Katib DB Manager:
KATIB_DB_MANAGER_SERVICE_IP:KATIB_DB_MANAGER_SERVICE_PORT
如果您想使用自己的数据库管理器来报告Katib指标,您可以更改 KATIB_DB_MANAGER_SERVICE_NAMESPACE、 KATIB_DB_MANAGER_SERVICE_IP 和 KATIB_DB_MANAGER_SERVICE_PORT 变量。
Katib 用户界面
以下是Katib UI部署的环境变量:
| 变量 | 描述 | 默认值 | 必需 |
|---|---|---|---|
KATIB_CORE_NAMESPACE | Base Namespace for all Katib components and default Experiment | metadata.namespace | Yes |
KATIB_DB_MANAGER_SERVICE_NAMESPACE | Katib DB Manager Namespace | KATIB_CORE_NAMESPACE env variable | No |
KATIB_DB_MANAGER_SERVICE_IP | Katib DB Manager IP | katib-db-manager | No |
KATIB_DB_MANAGER_SERVICE_PORT | Katib DB Manager Port | 6789 | No |
Katib UI 以与 Katib Controller 相同的地址表达式调用 Katib DB Manager。
Katib 数据库管理器
以下是Katib DB Manager部署的环境变量:
| 变量 | 描述 | 默认值 | 是否必填 |
|---|---|---|---|
DB_NAME | Katib DB Name: 'mysql' or 'postgres' | Yes | |
DB_PASSWORD | Katib DB Password | test (MySQL) katib (Postgres) | Yes |
DB_USER | Katib DB User | root (MySQL) katib (Postgres) | No |
KATIB_MYSQL_DB_HOST | Katib MySQL Host | katib-mysql | No |
KATIB_MYSQL_DB_PORT | Katib MySQL Port | 3306 | No |
KATIB_MYSQL_DB_DATABASE | Katib MySQL Database name | katib | No |
KATIB_POSTGRESQL_DB_HOST | Katib Postgres Host | katib-postgres | No |
KATIB_POSTGRESQL_DB_PORT | Katib Postgres Port | 5432 | No |
KATIB_POSTGRESQL_DB_DATABASE | Katib Postgres Database name | katib | No |
KATIB_POSTGRESQL_SSL_MODE | Katib Postgres SSL mode | disable | No |
SKIP_DB_INITIALIZATION | Option to skip DB table initialization | false | No |
目前,Katib DB 管理器仅支持 MySQL 和 Postgres 数据库。(DB_NAME 环境变量必须填写为 mysql 或 postgres 之一)。但是,您可以使用自己的 DB 管理器和数据库通过实现 katib db 接口 来报告指标。
对于Katib DB Manager,您可以将DB_PASSWORD更改为您自己的数据库密码。
Katib DB Manager 根据数据库类型创建数据库连接。
如果 DB_NAME=mysql,它使用 mysql 驱动程序和以下数据源名称:DB_USER:DB_PASSWORD@tcp(KATIB_MYSQL_DB_HOST:KATIB_MYSQL_DB_PORT)/KATIB_MYSQL_DB_DATABASE?timeout=5s
如果 DB_NAME=postgres,它使用 pq 驱动程序和这个数据源名称:postgresql://[DB_USER[:DB_PASSWORD]@][KATIB_POSTGRESQL_DB_HOST][:KATIB_POSTGRESQL_DB_PORT][/KATIB_POSTGRESQL_DB_DATABASE]
Katib 数据库
Katib DB 组件支持 MySQL 和 Postgres。
Katib MySQL
对于Katib MySQL,您需要设置以下环境变量:
MYSQL_ROOT_PASSWORD设置为来自 katib-mysql-secrets 的一个值,该值等于“test”。MYSQL_ALLOW_EMPTY_PASSWORD作为trueMYSQL_DATABASE作为katib。
您可以参考所有环境变量的列表,用于MySQL Docker镜像。
Katib MySQL 环境变量必须与 Katib DB Manager 环境变量匹配,这意味着:
MYSQL_ROOT_PASSWORD=DB_PASSWORDMYSQL_DATABASE=KATIB_MYSQL_DB_DATABASE
Katib Postgres
对于Katib Postgres,您需要设置这些环境变量:
POSTGRES_USER、POSTGRES_PASSWORD和POSTGRES_DB的值来自 katib-postgres-secrets,其值等于“katib”。
您可以参考所有环境变量的列表,用于Postgres Docker镜像。
Katib Postgres 环境变量必须与 Katib DB 管理器环境变量匹配,这意味着:
POSTGRES_USER=DB_USERPOSTGRES_PASSWORD=DB_PASSWORDPOSTGRES_DB=KATIB_POSTGRESQL_DB_DATABASE
下一步
- 了解不同的 安装 Katib 的选项。