98 lines
2.9 KiB
Markdown
98 lines
2.9 KiB
Markdown
## 参数模板
|
||
PolarDB-X Operator从1.3.0版本开始支持参数模板功能
|
||
|
||
在实例初始化时,可以指定参数模板文件,对CN和DN指定一系列需要的模板参数。
|
||
|
||
参数模板需要通过yaml文件的形式进行配置。
|
||
|
||
```shell
|
||
kubectl apply -f {参数模板文件名称}.yaml
|
||
```
|
||
|
||
### 参数模板说明
|
||
|
||
注:在参数列表中,每个参数需要指定7个不同的属性,包括:
|
||
- name(名称)
|
||
- 参数名称
|
||
- defaultValue(默认值)
|
||
- 参数的默认值,格式为字符串
|
||
- mode(修改模式)
|
||
- 参数的模式,包含 read-only 和 read-write
|
||
- restart(是否重启)
|
||
- 参数修改后是否需要重启实例
|
||
- unit(单位)
|
||
- 参数的单位,包含 INT, DOUBLE, STRING, TZ(Time Zone), HOUR_RANGE
|
||
- divisibilityFactor(整除因子)
|
||
- 单位为INT的参数需要设置整除因子,其他单位默认为0
|
||
- optional(取值范围)
|
||
- 单位为INT, DOUBLE, HOUR_RANGE的参数,取值范围是一段范围,如:"[1000-60000]"
|
||
- 单位为STRING或TZ的参数,取值范围是一些可选项,如:"[ON|OFF]"
|
||
|
||
参数模板的样例如下:
|
||
|
||
```yaml
|
||
## 参数模板示例
|
||
apiVersion: polardbx.aliyun.com/v1
|
||
kind: PolarDBXParameterTemplate
|
||
metadata:
|
||
name: parameterTemplate
|
||
spec:
|
||
nodeType:
|
||
cn:
|
||
# 参数列表
|
||
paramList:
|
||
- name: CONN_POOL_BLOCK_TIMEOUT
|
||
defaultValue: "5000"
|
||
mode: read-write
|
||
restart: false
|
||
unit: INT
|
||
divisibilityFactor: 1
|
||
optional: "[1000-60000]"
|
||
- ...
|
||
dn:
|
||
name: dnTemplate
|
||
paramList:
|
||
- name: innodb_use_native_aio
|
||
defaultValue: "OFF"
|
||
mode: readonly
|
||
restart: false
|
||
unit: STRING
|
||
divisibilityFactor: 0
|
||
optional: "[ON|OFF]"
|
||
- ...
|
||
gms: ...
|
||
```
|
||
|
||
### 查看参数模板
|
||
|
||
实例会默认在default namespace中应用[8.0版本的参数模板](./3-parameter-template8.0.yaml),如果想在其他namespace创建实例,需要在相应的的namespace中创建参数模板对象。
|
||
|
||
可以通过如下命令查看已配置的所有参数模板。
|
||
|
||
```shell
|
||
kubectl get PolarDBXParameterTemplate
|
||
# 或者可用简称
|
||
kubectl get pxpt
|
||
```
|
||
|
||
### PolarDBXCluster配置
|
||
|
||
配置好参数模板后,就可以在启动PolarDBXCluster的yaml文件中指定需要的参数模板
|
||
|
||
```yaml
|
||
# 添加参数模板
|
||
apiVersion: polardbx.aliyun.com/v1
|
||
kind: PolarDBXCluster
|
||
metadata:
|
||
name: pxc
|
||
spec:
|
||
...
|
||
...
|
||
# 需要配置的参数模板
|
||
parameterTemplate:
|
||
name: product
|
||
```
|
||
|
||
注:
|
||
- 实例在应用参数模板后,会对CN或DN中默认的参数根据参数模板中的默认值进行调整。此外,configmap中my.cnf.overwrite字段的参数具有更高优先级,不会被参数模板修改。
|
||
- 目前不支持对配置了参数模板的实例修改参数模板,也不支持对运行的实例添加参数模板。若想修改运行中实例的参数,需使用动态参数功能。 |