Экспорт конфигурации
Contents
Экспорт конфигурации#
Скрипт configmgr.sh
в составе nscli предоставляет возможность экспорта и импорта конфигурации в yaml-файл на jump-хосте, что может быть полезно, если по какой-либо причине кластер потребовалось установить заново.
Такой файл содержит лишь значения, указанные пользователем при помощи nsctl, например, объемы вычислительных мощностей, настройки мониторинга и базы данных. Секреты, комплект приложений, постоянные тома не копируются, однако названия используемых секретов и постоянных томов экспортируются.
Экспорт#
Команда:
cd ~/nscli
./configmgr.sh export \
--namespace gs-k8s \
--group gs-cluster \
--file config.yaml
Вывод:
Конфигурация сохранена
Пример файла:
name: gs-cluster-1
spec:
appkit:
path: |-
appkits/v1
applib_sha1: |-
a4078dd40eb0f2a3a227049518b919ea86cf2522
globalserver_sha1: |-
3d981e8dc5a45861af06c30dc14b0a0660206b58
profile_sha1: |-
0fdb74ca8cab0e5f26488586c80492707b3e99a6
globalserver_instance: |-
5
state: |-
started
values:
pod_timezone: |-
Europe/Moscow
database_url: |-
jdbc:postgresql://dbms:5432/db
database_alias: |-
pgtest
db_user_secret_name: |-
db-user-secret
app_volume:
type: |-
nfs
spec:
server: |-
nfs
path: |-
/srv/nfs
resbooks:
global-scheduler:
class_name: global_scheduler
spec:
is_metric_enabled: |-
true
send_metrics_to_external_system: |-
false
globalscheduler_xmx: |-
800M
containers:
globalscheduler:
resources:
requests:
memory: |-
1G
cpu: |-
1
limits:
memory: |-
1G
cpu: |-
1
systemagent:
resources:
requests:
memory: |-
250M
cpu: |-
1
limits:
memory: |-
500M
cpu: |-
1
values:
prometheus_endpoint: |-
gs-cluster-1-grafana-internal:9090
loki_endpoint: |-
gs-cluster-1-grafana-internal:3100
tempo_endpoint: |-
gs-cluster-1-grafana-internal:3201
scheduler_token_secret: |-
scheduler-token-secret
is_deploy_templ_overridden: 'false'
global-server-excl:
class_name: global_server_excl
spec:
is_metric_enabled: |-
true
send_metrics_to_external_system: |-
false
globalserver_xmx: |-
3500M
containers:
globalserver:
resources:
requests:
memory: |-
4G
cpu: |-
2
limits:
memory: |-
4G
cpu: |-
2
systemagent:
resources:
requests:
memory: |-
250M
cpu: |-
1
limits:
memory: |-
500M
cpu: |-
1
is_debug_enabled: |-
true
values:
prometheus_endpoint: |-
gs-cluster-1-grafana-internal:9090
loki_endpoint: |-
gs-cluster-1-grafana-internal:3100
tempo_endpoint: |-
gs-cluster-1-grafana-internal:3201
external_ip: |-
10.40.1.100
admin_user_secret: |-
gs-admin-auth
admin_user_secret_type: |-
kubernetes.io/basic-auth
is_deploy_templ_overridden: 'false'
global-server-share:
class_name: global_server_share
spec:
is_metric_enabled: |-
true
send_metrics_to_external_system: |-
false
globalserver_xmx: |-
3500M
containers:
globalserver:
resources:
requests:
memory: |-
4G
cpu: |-
2
limits:
memory: |-
4G
cpu: |-
2
systemagent:
resources:
requests:
memory: |-
250M
cpu: |-
1
limits:
memory: |-
500M
cpu: |-
1
values:
replicas: |-
1
prometheus_endpoint: |-
gs-cluster-1-grafana-internal:9090
loki_endpoint: |-
gs-cluster-1-grafana-internal:3100
tempo_endpoint: |-
gs-cluster-1-grafana-internal:3201
admin_user_secret: |-
gs-admin-auth
admin_user_secret_type: |-
kubernetes.io/basic-auth
is_deploy_templ_overridden: 'false'
grafana:
class_name: grafana
spec:
containers:
grafana:
resources:
requests:
memory: |-
500M
cpu: |-
1
limits:
memory: |-
1Gi
cpu: |-
2
values:
external_ip: |-
10.40.1.100
storage_class: |-
nfs-storage
storage_size: |-
1Gi
cadvisor_service_account: |-
prometheus-cadvisor
is_deploy_templ_overridden: 'false'
haproxy:
class_name: haproxy
spec:
containers:
haproxy:
resources:
requests:
memory: |-
500M
cpu: |-
1
limits:
memory: |-
1G
cpu: |-
2
values:
external_ip: |-
10.40.1.100
external_port: |-
8080
stat_secret: |-
secret-haproxy-auth
tls_secret: |
is_deploy_templ_overridden: 'false'
Импорт#
Команда:
./namespace.sh create_install_scripts
chmod +x ~/nscli/workspace/install_scripts/gs-cluster-k8s/install.sh
~/nscli/workspace/install_scripts/gs-cluster-k8s/install.sh
Вывод:
Конфигурация импортирована