卡巴斯基容器安全

为外部 PostgreSQL 数据库创建用户

对于卡巴斯基容器安全,您可以使用解决方案中包含的 PostgreSQL 数据库或您自己的 PostgreSQL 数据库。要安装不适用于卡巴斯基容器安全模式的外部 PostgreSQL 数据库,您必须创建单独的用户。您可以通过安装带有为外部 PostgreSQL 数据库指定的模式参数的 Helm Chart 包来执行此操作。

要为外部 PostgreSQL 数据库创建具有自定义模式的用户:

  1. 运行以下命令为外部 PostgreSQL 数据库创建单独的命名空间:

    kubectl create ns kcspg

    其中kcspg是外部 PostgreSQL 数据库的命名空间。

  2. 要部署外部 PostgreSQL 数据库:
    1. 在 pg.yaml 配置文件中指定部署外部 PostgreSQL 数据库的参数。

      用于部署外部 PostgreSQL 数据库的参数

      该参数指定数据库的密码。然后,您必须在 values.yaml 配置文件的infraconfig部分中指定此密码,该文件是解决方案分发套件中包含的Helm Chart 包的一部分。

    2. 运行以下命令:

      kubectl apply -f pg.yaml -n kcspg

    该外部数据库的名称格式如下:

    pod_name >.命名空间名称>.服务>.cluster.local

    例如,postgres.kcspg.svc.cluster.local

  3. 要在集群中部署服务对象:
    1. 在 svc.yaml 配置文件中指定服务对象部署参数。

      用于在集群中部署服务对象的参数

    2. 运行以下命令:

      kubectl apply -f svc.yaml -n kcspg

  4. 要创建用户、模式和用户-模式关系:
    1. 使用步骤 2b 中展开的 postgres 元素,登录到Pod。
    2. 启动 psql 交互式终端:

      psql -h localhost -U postgres -d api

    3. 运行以下命令:

      CREATE ROLE kks LOGIN PASSWORD 'kks' NOINHERIT CREATEDB;

      CREATE SCHEMA kks AUTHORIZATION kks;

      GRANT USAGE ON SCHEMA kks TO PUBLIC;

  5. 在 values.yaml 配置文件中,指定使用外部 PostgreSQL 数据库所需的参数。

    values.yaml 文件中的参数

    values.yaml中指定的参数值必须与 pg.yaml 和svc.yaml 配置文件中对应参数的值匹配。

  6. 开始解决方案更新

    使用外部 PostgreSQL 数据库创建用户的命令示例