@@ -10,7 +10,9 @@ ServerlessInsight的YAML配置文件是一个描述Serverless应用的资源的
10
10
11
11
``` yaml
12
12
version : 0.1
13
- provider : aliyun
13
+ provider :
14
+ name : aliyun
15
+ region : cn-chengdu
14
16
15
17
vars :
16
18
region : cn-hangzhou
@@ -64,11 +66,20 @@ version: 0.1
64
66
65
67
## provider
66
68
67
- ` provider`字段指定了ServerlessInsight的提供商,包括`aliyun`、`huawei`、`tencent`等,目前只支持`aliyun`,其他提供商的支持正在开发中。
68
69
70
+ ` provider`字段指定了ServerlessInsight的提供商信息。
69
71
` ` ` yaml
70
- provider: aliyun
72
+ provider:
73
+ name: aliyun
74
+ region: cn-chengdu
71
75
` ` `
76
+ `provider`支持的字段有 :
77
+ - **name**: 云提供商的名称,包括`aliyun`、`huawei`、`tencent`等,目前只支持`aliyun`,其他提供商的支持正在开发中
78
+ > 支持的云提供商的名称: aliyun, huawei, tencent
79
+ > required: true
80
+ - **region**: 云提供商服务部署目标地域
81
+ > 支持的运行时: 请参考云厂商所支持的地域
82
+ > required: true
72
83
73
84
# # vars
74
85
@@ -125,26 +136,31 @@ service: insight-poc-${stage}
125
136
126
137
# # functions
127
138
128
- ` functions` 字段是一个对象,用于定义serverless方法 。functions下的每一个子项都是一个方法的定义。function支持的字段有:
139
+ ` functions` 字段是一个对象,用于定义serverless函数 。functions下的每一个子项都是一个方法的定义。function支持的字段有:
129
140
130
- - **name**: serverless方法的名称
141
+ - **name**: serverless函数的名称
131
142
> 支持的字符集为`a-zA-Z0-9-_`,长度为1-64个字符
132
143
> required: true
133
- - **runtime**: serverless方法的运行时
144
+ - **runtime**: serverless函数的运行时
134
145
> 支持的运行时:
135
146
nodejs20,nodejs18,nodejs16,nodejs14,nodejs12,nodejs10,nodejs8,python3.10,python3.9,python3,PHP7.2,Java11,.NETCore3.1,Go1.x
136
- - **handler**: serverless方法的处理程序
147
+ - **handler**: serverless函数的处理程序
137
148
> required: true
138
- - **code**: serverless方法的代码包相对项根目录的路径
149
+ - **code**: serverless函数的代码包相对项根目录的路径
139
150
> 当前仅支持zip格式的代码包
140
151
> required: true
141
- - **timeout**: serverless方法的超时时间
152
+ - **timeout**: serverless函数的超时时间
142
153
> 默认值: 15分钟
143
- - **memory**: serverless方法的内存大小
154
+ - **memory**: serverless函数的内存大小
144
155
> 默认值: 128MB
145
- - **environment**: serverless方法的环境变量
156
+ - **environment**: serverless函数的环境变量
146
157
> 支持的字符集为`a-zA-Z0-9-_`,长度为1-64个字符
147
158
> required: false
159
+ - **log**: serverless函数是否开启日志
160
+ > required: false
161
+ > default: false
162
+ > 注意: 由于阿里sls创建延迟问题,无法在创建时开启日志,需要stack第一次创建时关闭,等待1~2分钟后开启日志并重新部署。
163
+
148
164
149
165
# # events
150
166
@@ -176,3 +192,93 @@ service: insight-poc-${stage}
176
192
- **certificate_body**: 证书内容
177
193
> required: true
178
194
195
+
196
+ # # databases
197
+ ` databases` 字段是一个对象,用于定义数据库。`databases`下的每一个子项都是一个数据库资源的定义。
198
+
199
+ ` ` ` yaml
200
+ version: 0.0.1
201
+
202
+ provider:
203
+ name: aliyun
204
+ region: cn-chengdu
205
+
206
+ service: insight-es-poc
207
+
208
+ tags:
209
+ owner: geek-fun
210
+
211
+ databases:
212
+ insight_es_db:
213
+ name: insight-poc-es
214
+ type: ELASTICSEARCH_SERVERLESS
215
+ version: ES_SEARCH_7.10
216
+ cu:
217
+ min: 1
218
+ max: 6
219
+ storage:
220
+ min: 20
221
+ security:
222
+ basic_auth:
223
+ master_user: 'test-username'
224
+ password: 'U34I6InQ8elseTgqTWT2t2oFXpoqFg'
225
+
226
+ ` ` `
227
+
228
+ database支持的字段有 :
229
+
230
+ - **name**: 数据库的名称
231
+ > 类型: `string`
232
+ > required: true
233
+
234
+ - **type**: 数据库的类型
235
+ > 类型: `string`
236
+ > 支持的类型: `ELASTICSEARCH_SERVERLESS`, `RDS_MYSQL_SERVERLESS`, `RDS_PGSQL_SERVERLESS`, `RDS_MSSQL_SERVERLESS`
237
+ > required: true
238
+
239
+ - **version**: 数据库的版本
240
+ > 类型: `string`
241
+ > 支持的版本: `MYSQL_5.7`, `MYSQL_8.0`, `MYSQL_HA_5.7`, `MYSQL_HA_8.0`, `PGSQL_14`, `PGSQL_15`, `PGSQL_16`, `PGSQL_HA_14`, `PGSQL_HA_15`, `PGSQL_HA_16`, `MSSQL_HA_2016`, `MSSQL_HA_2017`, `MSSQL_HA_2019`, `ES_SEARCH_7.10`, `ES_TIME_SERIES_7.10`
242
+ > required: true
243
+
244
+ - **cu**: 计算单元配置
245
+ > 类型: `object`
246
+ - **min**: 最小计算单元
247
+ > 类型: `integer`
248
+ > 最小值: 0
249
+ > 最大值: 32
250
+ - **max**: 最大计算单元
251
+ > 类型: `integer`
252
+ > 最小值: 1
253
+ > 最大值: 32
254
+
255
+ - **storage**: 存储配置
256
+ > 类型: `object`
257
+ - **min**: 最小存储空间
258
+ > 类型: `integer`
259
+ > 最小值: 20
260
+ > required: true
261
+
262
+ - **security**: 安全配置
263
+ > 类型: `object`
264
+ > required: true
265
+ - **basic_auth**: 基本认证
266
+ - **master_user**: 主用户
267
+ > 类型: `string`
268
+ > required: true
269
+ - **password**: 密码
270
+ > 类型: `string`
271
+ > required: true
272
+
273
+ - **network**: 网络配置
274
+ > 类型: `object`
275
+ - **type**: 网络类型
276
+ > 类型: `string`
277
+ > 支持的类型: `PUBLIC`, `PRIVATE`
278
+ - **ingress_rules**: 入站规则
279
+ > 类型: `array`
280
+ > 项目类型: `string`
281
+ - **public**: 是否公开
282
+ > 类型: `boolean`
283
+
284
+ 每个数据库定义必须包含`name`、`type`、`version`和`security`字段。
0 commit comments