【问题标题】:Is it not possible to create a postgres cloudsql via deployment manager?不能通过部署管理器创建 postgres cloudsql 吗?
【发布时间】:2018-12-08 08:43:04
【问题描述】:

我已经检查了supported-gcp-typessupported-resource-types,但我根本看不到任何可能性

【问题讨论】:

    标签: google-cloud-platform google-cloud-sql google-deployment-manager


    【解决方案1】:

    部署管理器支持 PostgreSQL。

    您需要将backendType 指定为SECOND_GEN,将databaseVersion 指定为POSTGRES_9_6,将tier 指定为db-custom-1-3840

    Documentation

    示例(create-postgresql-instance.jinja):

    {% set deployment_name = env['deployment']  %}
    {% set instance_name = deployment_name + '-instance'  %}
    {% set database_name = deployment_name + '-db'  %}
    {% set region = 'us-central1'  %}
    {% set tier = 'db-custom-1-3840'  %}
    
    resources:
    - name: {{ instance_name }}
      type: gcp-types/sqladmin-v1beta4:instances
      properties:
        region: {{ region }}
        backendType: SECOND_GEN
        databaseVersion: POSTGRES_9_6
        settings:
          tier: {{ tier }}
          backupConfiguration:
            enabled: true
    
    - name: {{ database_name }}
      type: gcp-types/sqladmin-v1beta4:databases
      properties:
        name: {{ database_name }}
        instance: $(ref.{{ instance_name }}.name)
        charset: utf8
    

    部署:

    gcloud deployment-manager deployments create mydb --template create-postgresql-instance.jinja
    

    【讨论】:

    • 你知道如何设置默认postgres用户的密码吗?
    • @NikhilGupta - 创建一个包含详细信息的新问题。
    • @NikhilGupta 这很简单 - 您使用 rootPassword 属性设置 root 密码。将其放在databaseVersion 之后:rootPassword: {{ postgres_root_passwd }}` 并在顶部添加一个从 env 读取的变量以获取密码。
    【解决方案2】:

    PostgresSQL 的部署管理器 Jinja 模板

    {% set deployment_name = env['deployment']  %}
    {% set instance_name = deployment_name + '-instance'  %}
    {% set database_name = deployment_name + '-db'  %}
    {% set region = 'us-central1'  %}
    {% set tier = 'db-n1-standard-1'  %}
    {% set databaseVersion = 'POSTGRES_11' %}
    resources:
    - name: {{ instance_name }}
      type: gcp-types/sqladmin-v1beta4:instances
      properties:
          region: us-central1
          databaseVersion: POSTGRES_9_6
          instanceType: CLOUD_SQL_INSTANCE
          settings:
            tier: db-f1-micro
            backupConfiguration:
              startTime: '02:00'
              enabled: true
            locationPreference:
              zone: us-central1-c
    
    - name: {{ database_name }}
      type: gcp-types/sqladmin-v1beta4:databases
      properties:
        name: {{ database_name }}
        databaseVersion: POSTGRES_12
        instance: $(ref.{{ instance_name }}.name)
        charset: utf8
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-15
      • 2013-11-13
      相关资源
      最近更新 更多