cônsul backup restaurar importação e exportação

texto


Durante o trabalho, devemos garantir que o cluster cônsul implantado no ambiente de produção possa fornecer serviços externos de forma segura e estável, e possa se recuperar rapidamente mesmo se ocorrer uma falha do sistema.Aqui descreveremos algumas operações de backup e restauração e operações de importação e exportação de KV.

 

 

Faça backup e restaure arquivos de configuração, status do servidor


Existem dois tipos principais de dados que precisam de backup: arquivos de configuração relacionados ao cônsul e status do servidor cônsul. Basta usar o seguinte script para fazer backup:

ts=$(date +%Y%m%d%H%M%S)
 
# 备份配置文件
tar -czpf consul_config_$ts.tar.gz /etc/consul/config.json /etc/consul/consul.d
 
# 备份consul的服务器状态,注意由于该consul开启了ACL,执行consul snapshot save时必须带Management Token,关于consul ACL token的说明见上一篇"consul安全加固"
consul snapshot save --http-addr=http://10.12.142.216:8500 -token=b3a9bca3-6e8e-9678-ea35-ccb8fb272d42 consul_state_$ts.snap
 
# 查看一下生成的consul服务器状态文件
consul snapshot inspect consul_state_$ts.snap

consul_config_xxx.tar.gzPor fim , os dados gerados serão consul_state_xxx.snapcopiados para outros servidores para armazenamento adequado.

A restauração também é relativamente simples, basta usar o seguinte script:

# 还原配置文件
tar -xzpf consul_config_20180521145032.tar.gz -C /
 
# 还原consul服务器状态
consul snapshot restore --http-addr=http://10.12.142.216:8500 -token=b3a9bca3-6e8e-9678-ea35-ccb8fb272d42 consul_state_20180521145032.snap

 

Importação e exportação de armazenamento KV


Consul fornece comandos diretamente para importar e exportar os dados armazenados no KV, como segue:

$ ts=$(date +%Y%m%d%H%M%S)
 
# 导出所有kv键值对,注意最后一个参数是导出键值对的前缀,为空字符串说明要导出所有
$ consul kv export --http-addr=http://10.12.142.216:8500 -token=b3a9bca3-6e8e-9678-ea35-ccb8fb272d42 '' > consul_kv_$ts.json
 
# 查看下导出的json文件格式
$ cat consul_kv_$ts.json
[
{
"key": "xxxxxx",
"flags": 0,
"value": "yyyyyy"
},
{
"key": "xxxxxx2",
"flags": 0,
"value": "eyJ2ZXJzaW9uX3RpbWVzdGFtcCI6IC0xfQ=="
},
]

Verifica-se que cada par de valores-chave é um dos valores json, onde chave é o nome do par de valores-chave e valor é a codificação base64 do par de valores-chave Valor. Você pode ver o valor original usando o base64 -dcomando codificação, como:

$ echo 'eyJ2ZXJzaW9uX3RpbWVzdGFtcCI6IC0xfQ==' | base64 -d
{"version_timestamp": -1}

 A importação é ainda mais simples:

consul kv import --http-addr=http://10.12.142.216:8500 -token=b3a9bca3-6e8e-9678-ea35-ccb8fb272d42 @consul_kv_20180521150322.json

SOBRE................................................. ....... ........................................... ......final espalhar flores

Acho que você gosta

Origin blog.csdn.net/qq_34556414/article/details/132804947
Recomendado
Clasificación