0

我需要在下面添加数据库、root 或用户、密码:

- name: deployed-database-instance
  type: sqladmin.v1beta4.instance
  properties:
    backendType: SECOND_GEN
    databaseVersion: MYSQL_5_7
    settings:
      tier: db-f1-micro
4

2 回答 2

1

我相信这个github repo中的这个例子,将是一个开始测试的好地方。从我的测试中,我能够创建一个实例、数据库和一个用户。请参阅下面的修改版本,在我提供的示例中,我主要只是删除了故障转移副本并将删除用户块修改为插入而不是删除:

{% set deployment_name = env['deployment']  %}
{% set instance_name = deployment_name + '-instance'  %}
{% set database_name = deployment_name + '-db'  %}

resources:
- name: {{ instance_name }}
  type: gcp-types/sqladmin-v1beta4:instances
  properties:
    region: {{ properties['region'] }}  
    settings:
      tier: {{ properties['tier'] }}
      backupConfiguration:
        binaryLogEnabled: true
        enabled: true

- name: {{ database_name }}
  type: gcp-types/sqladmin-v1beta4:databases
  properties:
    name: {{ database_name }}
    instance: $(ref.{{ instance_name }}.name)
    charset: utf8

- name: insert-user-root
  action: gcp-types/sqladmin-v1beta4:sql.users.insert
  metadata:
    runtimePolicy:
    - CREATE
    dependsOn:
    - {{ database_name }}
  properties:
    project: {{ env['project'] }}
    instance: $(ref.{{ env['deployment'] }}-instance.name)
    name: testuser
    host: "%"
    password: testpass    

所以我所做的是:

1)克隆回购;

2)进入目录.\examples\v2\sqladmin\jinja;

3)如上修改sqladmin.jinja文件;

4)打开gcloud命令提示符并进入#2中的目录;

5) 使用“gcloud deployment-manager deployments create my-database --config sqladmin.yaml”部署

您需要做的就是使用资源的名称。

于 2018-07-12T21:21:07.713 回答
0

我从 Python 生成了这个,但我认为在 jinja 中它会是:

properties:
    region: {{ properties['region'] }}  
    rootPassword: '12345'
    settings:
      tier: {{ properties['tier'] }}
      backupConfiguration:
        binaryLogEnabled: true
        enabled: true

我今天才发现这个,抱歉回复晚了。

于 2020-10-29T14:55:05.867 回答