快速开始

准备工具

师成师成· 更新于 2026-09-29· 阅读 5 分钟· 0 次阅读

登录后可跨设备保存划线和私人笔记登录

配置工具

本指南介绍如何使用 setup 命令,以基础设施即代码(infrastructure-as-code)的方式管理 Apache Polaris 配置。只需在一个 YAML 文件中定义 Polaris 配置,再通过一条命令即可应用。

可以从 PyPI 安装 Polaris CLI:

pip install apache-polaris

此命令支持引导创建新环境,以及导出现有配置以便复用或纳入版本控制。

导出你的配置

如果你已经拥有一个 Apache Polaris 环境,可以使用 export 子命令将其当前状态导出为 YAML 文件:

polaris setup export --client-id ${CLIENT_ID} --client-secret ${CLIENT_SECRET} > polaris_bootstrap.yaml

这将生成一个可读的 YAML 文件,其中包含主体、主体角色、目录以及它们关联的命名空间和目录角色。

应用配置

使用 apply 子命令来初始化新环境或扩展现有环境。该命令会读取你的 YAML 文件,并按正确的顺序执行必要的创建与授权操作。

配置示例

以下示例 simple-setup-config.yaml 展示了配置文件的结构。有关所有支持选项的完整说明,请参阅 reference-setup-config.yaml。

# ==================================
#        Global Entities
# ==================================
principals:
  quickstart_user:
    roles:
      - quickstart_user_role

principal_roles:
  - quickstart_user_role

# ==================================
#     Catalog-Specific Entities
# ==================================
catalogs:
  - name: "quickstart_catalog"
    storage_type: "file"
    default_base_location: "file:///var/tmp/quickstart_catalog/"
    allowed_locations:
      - "file:///var/tmp/quickstart_catalog/"
    roles:
      quickstart_catalog_role:
        assign_to:
          - quickstart_user_role
        privileges:
          catalog:
            - CATALOG_MANAGE_CONTENT
    namespaces:
      - dev_namespace

应用配置

在进行任何更改之前,可以使用 --dry-run 标志预览将要执行的操作:

polaris setup apply --client-id ${CLIENT_ID} --client-secret ${CLIENT_SECRET} --dry-run site/content/guides/assets/polaris/simple-setup-config.yaml

确认无误后,运行以下命令以应用更改:

polaris setup apply --client-id ${CLIENT_ID} --client-secret ${CLIENT_SECRET} site/content/guides/assets/polaris/simple-setup-config.yaml

已知限制

当前实现侧重于简化初始设置,有几点限制需要了解:

  • 非声明式更新:该命令仅用于创建。如果实体已存在,则会被跳过,而不会被更新。目前尚无状态调和(reconciliation)机制。
  • 策略关联的导出:出于性能方面的考虑,策略关联不会包含在 setup export 中。不过,它们仍可以在 YAML 中定义,并在执行 setup apply 时应用。
  • 外部 catalog 的测试:对 Hive Metastore 等外部 catalog 的支持已经具备,但尚未完成完整的端到端测试。建议先在非生产环境中验证配置。

评论

登录后参与评论

正在加载评论…