From f0c1e3a618fc8ad9692fcd984777c96e8839e954 Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Wed, 25 Oct 2023 20:04:06 +0530 Subject: [PATCH 01/24] changes from older backup-production --- .../backup-production/app-processes.yml | 55 +++ .../backup-production/aws-resources.yml | 82 +++++ environments/backup-production/aws.yml | 6 + .../backup-production/fab-settings.yml | 7 + environments/backup-production/inventory.ini | 312 ++++++++++++++++++ .../backup-production/inventory.ini.j2 | 223 +++++++++++++ environments/backup-production/known_hosts | 93 ++++++ environments/backup-production/meta.yml | 7 + environments/backup-production/postgresql.yml | 113 +++++++ environments/backup-production/proxy.yml | 25 ++ environments/backup-production/public.yml | 226 +++++++++++++ environments/backup-production/terraform.yml | 295 +++++++++++++++++ 12 files changed, 1444 insertions(+) create mode 100644 environments/backup-production/app-processes.yml create mode 100644 environments/backup-production/aws-resources.yml create mode 100644 environments/backup-production/aws.yml create mode 100644 environments/backup-production/fab-settings.yml create mode 100644 environments/backup-production/inventory.ini create mode 100644 environments/backup-production/inventory.ini.j2 create mode 100644 environments/backup-production/known_hosts create mode 100644 environments/backup-production/meta.yml create mode 100644 environments/backup-production/postgresql.yml create mode 100644 environments/backup-production/proxy.yml create mode 100644 environments/backup-production/public.yml create mode 100644 environments/backup-production/terraform.yml diff --git a/environments/backup-production/app-processes.yml b/environments/backup-production/app-processes.yml new file mode 100644 index 0000000000..6bbd725858 --- /dev/null +++ b/environments/backup-production/app-processes.yml @@ -0,0 +1,55 @@ +datadog_pythonagent: True +django_command_prefix: '' +celery_command_prefix: '' +gunicorn_workers_static_factor: 0 +gunicorn_workers_factor: 2 +formplayer_memory: "1g" +formplayer_g1heapregionsize: "2m" +management_commands: + celery_a000: + pillow_a000: +celery_processes: + celery_a000: + background_queue: + concurrency: 1 + email_queue,repeat_record_queue,analytics_queue,reminder_case_update_queue: + pooling: gevent + concurrency: 1 + saved_exports_queue: + concurrency: 1 + celery,export_download_queue,reminder_rule_queue,case_import_queue,case_rule_queue: + concurrency: 1 + flower: {} + +pillows: + pillow_a000: + case-pillow: + num_processes: 1 + dedicated_migration_process: True + user-pillow: + num_processes: 1 + group-pillow: + num_processes: 1 + AppDbChangeFeedPillow: + num_processes: 1 + ApplicationToElasticsearchPillow: + num_processes: 1 + CacheInvalidatePillow: + num_processes: 1 + DefaultChangeFeedPillow: + num_processes: 1 + DomainDbKafkaPillow: + num_processes: 1 + KafkaDomainPillow: + num_processes: 1 + LedgerToElasticsearchPillow: + num_processes: 1 + UpdateUserSyncHistoryPillow: + num_processes: 1 + UserCacheInvalidatePillow: + num_processes: 1 + UserGroupsDbKafkaPillow: + num_processes: 1 + xform-pillow: + num_processes: 1 + dedicated_migration_process: True diff --git a/environments/backup-production/aws-resources.yml b/environments/backup-production/aws-resources.yml new file mode 100644 index 0000000000..f9f61782ff --- /dev/null +++ b/environments/backup-production/aws-resources.yml @@ -0,0 +1,82 @@ +celery_a000-bk-production: 10.212.11.91 +celery_a000-bk-production.instance_id: i-07c97f80ee9e33c17 +control_a0-bk-production: 10.212.11.140 +control_a0-bk-production.instance_id: i-07a00581fbdc8db25 +couch_a0-bk-production: 10.212.41.177 +couch_a0-bk-production.instance_id: i-03512491f4cf96829 +couch_alb-bk-production: internal-couch-alb-bk-production-1743768862.us-west-1.elb.amazonaws.com +djangomanage_a0-bk-production: 10.212.11.144 +djangomanage_a0-bk-production.instance_id: i-0234c0c30da41a83e +efs_bk-production-efs: fs-0f73c7bbf4c2e3bff.efs.us-west-1.amazonaws.com +es_a1000-bk-production: 10.212.41.145 +es_a1000-bk-production.instance_id: i-09067f28237cd067f +es_a1001-bk-production: 10.212.41.136 +es_a1001-bk-production.instance_id: i-0738eaa715933f3f6 +es_a1002-bk-production: 10.212.41.47 +es_a1002-bk-production.instance_id: i-00242779baebe6937 +es_a1003-bk-production: 10.212.41.7 +es_a1003-bk-production.instance_id: i-00718d2228c1559df +es_a1004-bk-production: 10.212.41.86 +es_a1004-bk-production.instance_id: i-060785cd33304659d +es_a1005-bk-production: 10.212.41.254 +es_a1005-bk-production.instance_id: i-0dc33fec88310a775 +es_a1006-bk-production: 10.212.41.194 +es_a1006-bk-production.instance_id: i-0542ceec697a753a7 +es_b1000-bk-production: 10.212.40.93 +es_b1000-bk-production.instance_id: i-01e8592673ff22cc5 +es_b1001-bk-production: 10.212.40.177 +es_b1001-bk-production.instance_id: i-0db9777476b240aea +es_b1002-bk-production: 10.212.40.220 +es_b1002-bk-production.instance_id: i-0db460fbd2c692696 +es_b1003-bk-production: 10.212.40.181 +es_b1003-bk-production.instance_id: i-00fee3d995921a293 +es_b1004-bk-production: 10.212.40.253 +es_b1004-bk-production.instance_id: i-0b1f45d6d07d80e74 +es_b1005-bk-production: 10.212.40.228 +es_b1005-bk-production.instance_id: i-0ac0fb9549279c42e +es_b1006-bk-production: 10.212.40.68 +es_b1006-bk-production.instance_id: i-031446cda71d239ab +esmaster_a0-bk-production: 10.212.41.118 +esmaster_a0-bk-production.instance_id: i-0a42357d69363671f +esmaster_b0-bk-production: 10.212.40.162 +esmaster_b0-bk-production.instance_id: i-00258f79edc01798b +esmaster_c0-bk-production: 10.212.41.170 +esmaster_c0-bk-production.instance_id: i-0949dc4cc7faf9670 +formplayer-efs: fs-0328bdaad37639dcf.efs.us-west-1.amazonaws.com +formplayer_a000-bk-production: 10.212.11.40 +formplayer_a000-bk-production.instance_id: i-07e869020802e17ce +frontend_alb-bk-production: internal-frontend-alb-bk-production-2099219371.us-west-1.elb.amazonaws.com +kafka_a0-bk-production: 10.212.41.21 +kafka_a0-bk-production.instance_id: i-035f64b1fdd5777a8 +pgauditcare0-bk-production: pgauditcare0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgbouncer_a0-bk-production: 10.212.41.111 +pgbouncer_a0-bk-production.instance_id: i-0bb3a4d4eb539c86e +pgformplayer0-bk-production: pgformplayer0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgformplayer_nlb-bk-production: pgformplayer-nlb-bk-production-0564368cae6f3a6f.elb.us-west-1.amazonaws.com +pgmain0-bk-production: pgmain0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgmain_nlb-bk-production: pgmain-nlb-bk-production-a8225d9923521f9d.elb.us-west-1.amazonaws.com +pgshard1-bk-production: pgshard1-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgshard2-bk-production: pgshard2-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgshard3-bk-production: pgshard3-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgshard4-bk-production: pgshard4-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgshard5-bk-production: pgshard5-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgshard_nlb-bk-production: pgshard-nlb-bk-production-ff33a8d7fc7a4c2a.elb.us-west-1.amazonaws.com +pgsynclog0-bk-production: pgsynclog0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgsynclogs_nlb-bk-production: pgsynclogs-nlb-bk-production-7158341afa0269b2.elb.us-west-1.amazonaws.com +pgucr0-bk-production: pgucr0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgucr_nlb-bk-production: pgucr-nlb-bk-production-4ea5b9bba4e9f8d5.elb.us-west-1.amazonaws.com +pillow_a000-bk-production: 10.212.11.24 +pillow_a000-bk-production.instance_id: i-07cb1ad00eff0a07c +proxy_a0-bk-production: 10.212.21.6 +proxy_a0-bk-production.instance_id: i-0801717ff2244aa9e +proxy_a0-bk-production.public_ip: 13.57.194.84 +rabbit_a0-bk-production: 10.212.41.32 +rabbit_a0-bk-production.instance_id: i-0f6d3c27cf59e92a0 +web_a000-bk-production: 10.212.11.196 +web_a000-bk-production.instance_id: i-02a25b423cce814ee +web_a001-bk-production: 10.212.11.159 +web_a001-bk-production.instance_id: i-0830723f088ba502e +web_b000-bk-production: 10.212.10.132 +web_b000-bk-production.instance_id: i-01e22d2b31ca7850c +web_b001-bk-production: 10.212.10.121 +web_b001-bk-production.instance_id: i-0a61eef0ad48497fc diff --git a/environments/backup-production/aws.yml b/environments/backup-production/aws.yml new file mode 100644 index 0000000000..118e2bbf2a --- /dev/null +++ b/environments/backup-production/aws.yml @@ -0,0 +1,6 @@ +credential_style: sso +sso_config: + sso_start_url: https://dimagi.awsapps.com/start/ + sso_region: us-east-1 + sso_account_id: '213307118311' + region: us-west-1 diff --git a/environments/backup-production/fab-settings.yml b/environments/backup-production/fab-settings.yml new file mode 100644 index 0000000000..56717d3e87 --- /dev/null +++ b/environments/backup-production/fab-settings.yml @@ -0,0 +1,7 @@ +tag_deploy_commits: True +use_shared_dir_for_staticfiles: True +shared_dir_for_staticfiles: /mnt/shared/temp +acceptable_maintenance_window: + hour_start: 1 + hour_end: 3 + timezone: US/Eastern diff --git a/environments/backup-production/inventory.ini b/environments/backup-production/inventory.ini new file mode 100644 index 0000000000..b62c8d49d8 --- /dev/null +++ b/environments/backup-production/inventory.ini @@ -0,0 +1,312 @@ +[proxy_a0] +10.212.21.6 hostname=proxy-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0801717ff2244aa9e root_encryption_mode=aws + +[proxy:children] +proxy_a0 + +[web_a000] +10.212.11.196 hostname=web-a000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-02a25b423cce814ee root_encryption_mode=aws +[web_a001] +10.212.11.159 hostname=web-a001-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0830723f088ba502e root_encryption_mode=aws +[web_a:children] +web_a000 +web_a001 + +[web_b000] +10.212.10.132 hostname=web-b000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-01e22d2b31ca7850c root_encryption_mode=aws +[web_b001] +10.212.10.121 hostname=web-b001-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0a61eef0ad48497fc root_encryption_mode=aws +[web_b:children] +web_b000 +web_b001 + +[logproxy:children] +proxy + +[logproxy:vars] +swap_size=2G + +[hq_webworkers:children] +web_a + +[mobile_webworkers:children] +web_b + +[webworkers:children] +hq_webworkers +mobile_webworkers + +[webworkers:vars] +swap_size=2G + +[pgbouncer_a0] +10.212.41.111 hostname=pgbouncer-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0bb3a4d4eb539c86e root_encryption_mode=aws pgbouncer_processes=2 swap_size=2G + +[rds_pgmain0] +pgmain0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com + +[rds_pgformplayer0] +pgformplayer0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com + +[rds_pgucr0] +pgucr0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com + +[rds_pgshard1] +pgshard1-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com + +[rds_pgshard2] +pgshard2-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com + +[rds_pgshard3] +pgshard3-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com + +[rds_pgshard4] +pgshard4-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com + +[rds_pgshard5] +pgshard5-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com + +[rds_pgsynclog0] +pgsynclog0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com + +[rds_pgauditcare0] +pgauditcare0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com + +[pgformplayer_nlb] +pgformplayer-nlb-bk-production-0564368cae6f3a6f.elb.us-west-1.amazonaws.com + +[pgmain_nlb] +pgmain-nlb-bk-production-a8225d9923521f9d.elb.us-west-1.amazonaws.com + +[pgucr_nlb] +pgucr-nlb-bk-production-4ea5b9bba4e9f8d5.elb.us-west-1.amazonaws.com + +[pgsynclogs_nlb] +pgsynclogs-nlb-bk-production-7158341afa0269b2.elb.us-west-1.amazonaws.com + +[pgshard_nlb] +pgshard-nlb-bk-production-ff33a8d7fc7a4c2a.elb.us-west-1.amazonaws.com + +[couch_alb] +internal-couch-alb-bk-production-1743768862.us-west-1.elb.amazonaws.com + +[remote_postgresql:children] +rds_pgmain0 +rds_pgformplayer0 +rds_pgucr0 +rds_pgshard1 +rds_pgshard2 +rds_pgshard3 +rds_pgshard4 +rds_pgshard5 +rds_pgsynclog0 +rds_pgauditcare0 + +[postgresql:children] +pgbouncer_a0 +remote_postgresql + +[pgbouncer:children] +pgbouncer_a0 +pgformplayer_nlb +pgmain_nlb +pgucr_nlb +pgsynclogs_nlb +pgshard_nlb + +[ansible_skip:children] +remote_postgresql +pgformplayer_nlb +pgmain_nlb +pgucr_nlb +pgsynclogs_nlb +pgshard_nlb +couch_alb + +[rabbit_a0] +10.212.41.32 hostname=rabbit-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0f6d3c27cf59e92a0 root_encryption_mode=aws + +[rabbitmq:children] +rabbit_a0 + +[rabbitmq:vars] +swap_size=2G + +[kafka_a0] +10.212.41.21 hostname=kafka-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-035f64b1fdd5777a8 kafka_broker_id=1 zookeeper_server_id=2 + +[zookeeper:children] +kafka_a0 + +[kafka:children] +kafka_a0 + +[kafka:vars] +swap_size=2G + +[celery_a000] +10.212.11.91 hostname=celery-a000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-07c97f80ee9e33c17 root_encryption_mode=aws +[celery_a:children] +celery_a000 + +[celery:children] +celery_a + +[celery:vars] +swap_size=8G + +[pillow_a000] +10.212.11.24 hostname=pillow-a000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-07cb1ad00eff0a07c root_encryption_mode=aws +[pillow_a:children] +pillow_a000 + +[pillowtop:children] +pillow_a + +[pillowtop:vars] +swap_size=2G + +[formplayer_a000] +10.212.11.40 hostname=formplayer-a000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-07e869020802e17ce root_encryption_mode=aws +[formplayer_a:children] +formplayer_a000 + +[formplayer:children] +formplayer_a + +[formplayer:vars] +formplayer_efs_dns=fs-0328bdaad37639dcf.efs.us-west-1.amazonaws.com:/ +cchq_uid=3002 +cchq_gid=3002 +swap_size=2G + +[formplayer_debug:vars] +use_formplayer_debug_options=true + +[formplayer_debug:children] + +[formplayer_with_monit:vars] +use_monit_for_formplayer=true + +[formplayer_with_monit:children] + +[shared_efs_client_host:children] +celery +django_manage +proxy +pillowtop +webworkers + +[es_a1000] +10.212.41.145 hostname=es-a1000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-09067f28237cd067f datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +[es_a1001] +10.212.41.136 hostname=es-a1001-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0738eaa715933f3f6 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +[es_a1002] +10.212.41.47 hostname=es-a1002-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-00242779baebe6937 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +[es_a1003] +10.212.41.7 hostname=es-a1003-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-00718d2228c1559df datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +[es_a1004] +10.212.41.86 hostname=es-a1004-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-060785cd33304659d datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +[es_a1005] +10.212.41.254 hostname=es-a1005-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0dc33fec88310a775 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +[es_a1006] +10.212.41.194 hostname=es-a1006-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0542ceec697a753a7 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +[es_a1:children] +es_a1000 +es_a1001 +es_a1002 +es_a1003 +es_a1004 +es_a1005 +es_a1006 + +[es_b1000] +10.212.40.93 hostname=es-b1000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-01e8592673ff22cc5 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +[es_b1001] +10.212.40.177 hostname=es-b1001-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0db9777476b240aea datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +[es_b1002] +10.212.40.220 hostname=es-b1002-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0db460fbd2c692696 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +[es_b1003] +10.212.40.181 hostname=es-b1003-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-00fee3d995921a293 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +[es_b1004] +10.212.40.253 hostname=es-b1004-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0b1f45d6d07d80e74 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +[es_b1005] +10.212.40.228 hostname=es-b1005-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0ac0fb9549279c42e datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +[es_b1006] +10.212.40.68 hostname=es-b1006-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-031446cda71d239ab datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +[es_b1:children] +es_b1000 +es_b1001 +es_b1002 +es_b1003 +es_b1004 +es_b1005 +es_b1006 + +[esmaster_a0] +10.212.41.118 hostname=esmaster-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0a42357d69363671f root_encryption_mode=aws elasticsearch_node_name=esmaster_a0 + +[esmaster_b0] +10.212.40.162 hostname=esmaster-b0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-00258f79edc01798b root_encryption_mode=aws elasticsearch_node_name=esmaster_b0 + +[esmaster_c0] +10.212.41.170 hostname=esmaster-c0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0949dc4cc7faf9670 root_encryption_mode=aws elasticsearch_node_name=esmaster_c0 + +[es_master:children] +esmaster_a0 +esmaster_b0 +esmaster_c0 + +[es_master:vars] +elasticsearch_master=true +elasticsearch_data=false + +[es_data:children] +es_a1 +es_b1 + +[es_a1:vars] +elasticsearch_node_zone=us-west-1c + +[es_b1:vars] +elasticsearch_node_zone=us-west-1b + +[elasticsearch:children] +es_master +es_data + +[elasticsearch:vars] +swap_size=2G + +[couch_a0] +10.212.41.177 hostname=couch-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-03512491f4cf96829 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws + +[couchdb2:children] +couch_a0 + +[couchdb2:vars] +swap_size=8G + +[couchdb2_proxy:children] +couch_alb + +[couchdb2_alb:children] +couch_alb + +[control_a0] +10.212.11.140 hostname=control-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-07a00581fbdc8db25 root_encryption_mode=aws + +[control:children] +control_a0 + +[control:vars] +swap_size=2G + +[djangomanage_a0] +10.212.11.144 hostname=djangomanage-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0234c0c30da41a83e root_encryption_mode=aws + +[django_manage:children] +djangomanage_a0 + +[django_manage:vars] +swap_size=2G diff --git a/environments/backup-production/inventory.ini.j2 b/environments/backup-production/inventory.ini.j2 new file mode 100644 index 0000000000..c4431eb7b2 --- /dev/null +++ b/environments/backup-production/inventory.ini.j2 @@ -0,0 +1,223 @@ +{{ __proxy_a0__ }} + +[proxy:children] +proxy_a0 + +{{ __web_a__ }} + +{{ __web_b__ }} + +[logproxy:children] +proxy + +[logproxy:vars] +swap_size=2G + +[hq_webworkers:children] +web_a + +[mobile_webworkers:children] +web_b + +[webworkers:children] +hq_webworkers +mobile_webworkers + +[webworkers:vars] +swap_size=2G + +{{ __pgbouncer_a0__ }} pgbouncer_processes=2 swap_size=2G + +{{ __rds_pgmain0__ }} + +{{ __rds_pgformplayer0__ }} + +{{ __rds_pgucr0__ }} + +{{ __rds_pgshard1__ }} + +{{ __rds_pgshard2__ }} + +{{ __rds_pgshard3__ }} + +{{ __rds_pgshard4__ }} + +{{ __rds_pgshard5__ }} + +{{ __rds_pgsynclog0__ }} + +{{ __rds_pgauditcare0__ }} + +{{ __pgformplayer_nlb__ }} + +{{ __pgmain_nlb__ }} + +{{ __pgucr_nlb__ }} + +{{ __pgsynclogs_nlb__ }} + +{{ __pgshard_nlb__ }} + +{{ __couch_alb__ }} + +[remote_postgresql:children] +rds_pgmain0 +rds_pgformplayer0 +rds_pgucr0 +rds_pgshard1 +rds_pgshard2 +rds_pgshard3 +rds_pgshard4 +rds_pgshard5 +rds_pgsynclog0 +rds_pgauditcare0 + +[postgresql:children] +pgbouncer_a0 +remote_postgresql + +[pgbouncer:children] +pgbouncer_a0 +pgformplayer_nlb +pgmain_nlb +pgucr_nlb +pgsynclogs_nlb +pgshard_nlb + +[ansible_skip:children] +remote_postgresql +pgformplayer_nlb +pgmain_nlb +pgucr_nlb +pgsynclogs_nlb +pgshard_nlb +couch_alb + +{{ __rabbit_a0__ }} + +[rabbitmq:children] +rabbit_a0 + +[rabbitmq:vars] +swap_size=2G + +{{ __kafka_a0__ }} kafka_broker_id=1 zookeeper_server_id=2 + +[zookeeper:children] +kafka_a0 + +[kafka:children] +kafka_a0 + +[kafka:vars] +swap_size=2G + +{{ __celery_a__ }} + +[celery:children] +celery_a + +[celery:vars] +swap_size=8G + +{{ __pillow_a__ }} + +[pillowtop:children] +pillow_a + +[pillowtop:vars] +swap_size=2G + +{{ __formplayer_a__ }} + +[formplayer:children] +formplayer_a + +[formplayer:vars] +formplayer_efs_dns={{ aws_resources['formplayer-efs'] }}:/ +cchq_uid=3002 +cchq_gid=3002 +swap_size=2G + +[formplayer_debug:vars] +use_formplayer_debug_options=true + +[formplayer_debug:children] + +[formplayer_with_monit:vars] +use_monit_for_formplayer=true + +[formplayer_with_monit:children] + +[shared_efs_client_host:children] +celery +django_manage +proxy +pillowtop +webworkers + +{{ __es_a1__ }} + +{{ __es_b1__ }} + +{{ __esmaster_a0__ }} elasticsearch_node_name=esmaster_a0 + +{{ __esmaster_b0__ }} elasticsearch_node_name=esmaster_b0 + +{{ __esmaster_c0__ }} elasticsearch_node_name=esmaster_c0 + +[es_master:children] +esmaster_a0 +esmaster_b0 +esmaster_c0 + +[es_master:vars] +elasticsearch_master=true +elasticsearch_data=false + +[es_data:children] +es_a1 +es_b1 + +[es_a1:vars] +elasticsearch_node_zone=us-west-1c + +[es_b1:vars] +elasticsearch_node_zone=us-west-1b + +[elasticsearch:children] +es_master +es_data + +[elasticsearch:vars] +swap_size=2G + +{{ __couch_a0__ }} + +[couchdb2:children] +couch_a0 + +[couchdb2:vars] +swap_size=8G + +[couchdb2_proxy:children] +couch_alb + +[couchdb2_alb:children] +couch_alb + +{{ __control_a0__ }} + +[control:children] +control_a0 + +[control:vars] +swap_size=2G + +{{ __djangomanage_a0__ }} + +[django_manage:children] +djangomanage_a0 + +[django_manage:vars] +swap_size=2G diff --git a/environments/backup-production/known_hosts b/environments/backup-production/known_hosts new file mode 100644 index 0000000000..e02572d0d3 --- /dev/null +++ b/environments/backup-production/known_hosts @@ -0,0 +1,93 @@ +10.212.10.121 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPE7X02zITQ93h97+sT0LIhjEaKGhDdxySriCzcNvrzZtyTn+Q1dJdV97YiKSugEdIJkT5izgbp9Ipp3xoVSZLs= +10.212.10.121 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIvCaGMHRM91LTlkEWmrpxkILDvCME1VFZZq+KWg8WLX +10.212.10.121 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC7XskrheyxkEVyF0cGD4MJDsyNS68bDTxEyMs45nYOhMDeidstOYX//hPfZNsTX8+uxBIeZaX8/eod+lGqI8ml4fQQGjWaUdYstLU9hrbHUXNWDfaim5mytkxKaq3xsyGGQgkaw/T/nu581vBL9s3btiIqc+t44iofYzu/TwLWEL0UYRNSqw3A4S7Sd1oRsocxTaq5u7gmC+DlMyyh+MmoqvfMQGzB9QQN7qcXSiXp0qaOnHFAjtjY1yRm9KukIyjoW/pjQEcWF3XyHIvxDPtEfDkvyROBwvPQfWpJVo20z7aB3ggNgeEFPVBrAP92pN9zF+HfyZcPdtJ/nxQ+7Jsd +10.212.10.132 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBN9pFM++wPDcO7CwLiPF1y+Jp1FDzni+cdZDG9FOTYvTiE0rPtO4bvgrXN8fcjOWYpjrPnAMLADGlMMuh0QmXh0= +10.212.10.132 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAID/c9kpTakabNBxHQAGRrQ0Pbu+k/DW/ydAO5S3DKcfp +10.212.10.132 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC2OlkdQmfPF3/fw/+G1pNdy20siOJGwe80RYlX3Il6dR/crQ5JL8yLy+1owpZPEW+xHbbzbZwJG26FT1rb0MnakRGN+CrYLpVcUgu/vRxmw6C9efsvWmqHQv8H1C3e+fNf4AbPVb7+eu7mw3wDi5vgV8ztjUSWNuKbONGkw48zMLRXIzvi2GCQPImG3qkDJsqId5230ZFDD8y1rKgHQJLzxFNgGLS2ni2xV+IG8cUhv6Z6tlNyhK8CvvwGy8MOaSIlCYsgtQaBiz1y3ZaZOpG9IYfVS/OAsrCwd+l9wcqVyDLXu0LLbbkQIagVozaYcI39vj0M15Qv6ZU64IowVEbT +10.212.11.140 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBI89QHIovYArbJoha7Cw0Bi5O3dpbPzBoZIlz+TK2+CKAsFG9wgX+aSyl+u8ArLOkc99SKc8WvVTId+Ahv7odqo= +10.212.11.140 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILJq3Yj2TEuD0EEIbrPiZc8GEKP3qZXlZN41aNYxMtPI +10.212.11.140 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCfTOjURDgozGRLw2D3gYn102YBQ7ogNHFgNQC10V/imTdMOHsCFG+Cez3p+jw2xqlHm9kuQI476prTTdWStYIJMKS2k+dtBeJitXGkOGExzt32ODzlFrewvzcUflbwpv0KPoW4UKs9gDp3vZ2jSWXl6bt3llLuz5mn56CxVLaAG5Eq9A5nhXC2NquRFVvOXW4fAlGCUmxmjujPbIVdlL2tXf8jtcoDU8+K1o6PMtC6gaZHkcPrCF7mLqiH+NUZN6wSX+zFMaankUncwPXS/m4O6VgYajQSNcp6TwYsl3080+MNQbS0O9bsIj/5My3xXnOHgMYVuA+vzv58FpntmH1t +10.212.11.144 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBA01SJiXsVYJcDWZiZJue+bVO47PAp9jNNvGq4hjvIU1SkalZGLLrug6FpvvN7WX4AFIyCMJnXjp2mPP0FPckhI= +10.212.11.144 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKMqjwplCX9CJXdUHt+t0d5f0lFCrPsAJZa3mLTwc1cT +10.212.11.144 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDiXRaf2Bs8eCKPsCB707dhcfLzjjzA7T9LPSkzGF89B3qASFGeqPnyeqh+/SmsMRfRIWEgRXdhu/S5TSNyi5wRovGdVhKELOgyEbjFM8nZw8Y+L6gVtk/G5VXb0VnPWnD+onrsj2xafgVy9lVcddKnfXENTPRYpHCzDI4XXC8ehn6si6+yX442JX66NYrG9qidYN1TSIJkG7TqdinIW3bo3wbmT3Wglvmaj5+4xLj5vtYVlQFOo9l5gSeWbtVhVm+jtiv1dWkq63ShJSK6sNX6y5MDe8WoAPkxebg3nwBek+cs70/+iDUHj4bBHGZnetji/EBI1A6LmZV410UL0Ocv +10.212.11.159 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBFodDa8+QOm/JuQGZ5loEho4TGcEVFdzskq8Q8rMgfkaQJ43sVbzE/gbKDAMWcyUsi3Uc5rMMu4RtssRQ6CDKN4= +10.212.11.159 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPhhZ+053GrR0ieIYUaueFcheOupC54GLhNoYR1xE2w5 +10.212.11.159 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDGidj34y2UB3j/ZcByAOYktZwo6uUzp5J2X+WMQ7ea2YFCBt0BJ2AdSvdbhHcaZqTZYWB+Wswdke3R/1BJWT5//+kuZgVIS1pIJIZPtTcAWNi4vfdmN1tK6PfLFxrkG2noUYLHYK8zZkLbTPA8WAglJEJ1YtVUrpL9Ttx2JEsFAiKL0YDXuZUbTExzJl1xSmBrMqd+fEM1wgPXcGh75BgO6sDpZLi+4Ghv4oeX1iMOYn4MIElOgnG7vKllJm+sOWfrU+g/b1T7zUlKP9hX1dpJPYVKra+frl1abkAHC4pYRdXc6G3Vlhsy4JX9NQCuiQCjbf46YOVSdc/bngfMxA/l +10.212.11.196 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBOUE7AinVQ3g3yvg+YDzxXasbGl6Nw5+F5yPsIXsaAMccEmHp2cGtKiIBuOqw618hqCeGK0m+L+/RHxM2kVjmqI= +10.212.11.196 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICIEiSmnRTsZO6uPzWRQCVazXz9/tVZ6/OLN1a/uLEEB +10.212.11.196 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC9Np7o1xvePW7YlybtQw4J8Bg8R0SDztALF8Ef9U7qUpwhrT5JAyJheDfUoUxLrD4oGftrQyUVaB99AWEjSbgPe3O7E7XZWpvKCHM9X2q1NqMAzTwM9L5lyA3gny5dGhAeUf87sXoh5W9oghMNv2PWwSU80Iq0Uo+zjasfJ+1B8LGrifhmCDQeC2pHdVK9nAg6MeYij3rJaGTNLamHQLnGEr2X065A7gcAaqp45kCcnNZo95QkgUJjcYnVrFMxVn1w7KpTpe0/1mGxmixJbzfGMScflMANHxq8LDyw2h8WZuUPP0YchVRHt0a20ahFziUbohtGNY/+9D2kP/T1nQk1 +10.212.11.24 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCOsMWAiCEP+32R6NcZLKD584xVuftXxImqUvs8KuxGLzaTb8xNaM2oa8u5aHNIoCpU6jAli4d9PQBYrskkzDXk= +10.212.11.24 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIO9KMCio9MhXoWIVAfH1/QISL1Xetyk4eHT3hMHWFflQ +10.212.11.24 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDCThFXirJGJhchTalPn/nYZf2Jblq64uk4YDx10NwVoMfM7vxFK3GFMhr8wcwniCMtXA+7ZDyXwp5J4IWGKbowmLFQ62QVRzXNRd9wl8VwpQBlmni+p8OAS3U0m5lwbuW3cVwaqyzdlFS6qfKGmZkgAT8HSlC/xXSy4Pql43s1DGqMrEeU+1OAQ5Q0EMLqC7kL6yiOp3YvgnKoXuAhyrALI3G+0wZOTN/h/p3UtSeQztk+fVNcdTRTKxWNvVDhaULUbTrWqimKEIRy58XwbQY1rRr9wn+Ma6z+Kx/VU86l7ThzWee4SzY5fr1RFTOzkpJAt2RAigEZaFFuUhvItLIl +10.212.11.40 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJvlCCvV2NwnpJrMeEg6DcHQ+eHhC9F3Rt1FNg7KzxUYE6+3/aBwnnyr6ch+sxkgTXJKSDnIlMCU8CAJxSTltsE= +10.212.11.40 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINTTQoFwYVMbTw4cBR1rbMF7sB6iho0+/sa85QUKwLAv +10.212.11.40 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDTIIh3FKYAxxONqnrh4TcPQ0NqkPJ+PghSuNj5uyRRCx99iScw+wJovyGLYSKlzbbR0bSEH9mpIk/Wh9tSCXjDpAOSOYWIpZ+BVb5wmE5CHLkP+ohVLdRQfEditLKXTPWX+A/lDPJW6XzwlD/MT6db/36ianle6+lUdaQZpWzuOsmXvZNAS7aFTHia97GXEY5a+qwyD9qLISWwjI4DoEE3ur5RyopFY5BtBgDqOP3LIe0Pqe1/9hIAgoMQpjabGeN6AHJnIBmrrKBcX2aQH8r9PTksTmi9QxlewTzt7eVTUsDFicGarNFCd+Ix4w6ZxB5ZSjy/dbvRcxm5cunkcuET +10.212.11.91 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBGSfn6hMOxqlMZ4/oZruJL9uWsqnHYaONzvVqkL4sgkY5xqM7mCRim+82AnbN9hwoNzWa4al8Vq6cmrt9i0nJSA= +10.212.11.91 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHkYaDHn3EReae7LEacWShAHHrPbdmjogYXFlh+vegad +10.212.11.91 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCqrtmhzDAp2KROa8gLxrqDY7M72oAwmG/948gERnb4G4sVMOWL03JvmrpvUY5prFoGdxYLPkn5c75cRrA7n39njWCX1+BIBxNMNzi+VEwjWB41IUV57y+mVLTwvUHwJxZgCP0+0yBlx/CZ6bh7OBaPoPe4uhQRRA7fyTU8/3zxbMQedPob814yIhx92NHRFiQqFanTWPxnu1At/p1h3ttoGSVdkpxJGdk5qanVG3NaT9FcB3F6nNTo8OJSGi2x+GxnBuKZkfiX4X9qrwVVim7h17tewyCDndzJlpuy2PcmOK7BFoLsGMEAeV+Dnwt0qk2or6OawrB7GGxBYVc7dJu3 +10.212.21.6 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBLixlDgPEBrE7I8MPd9O+DIU21AZ8bc0AW8d037lPzcLnYuhBZDv5wuKTENjoqMcAOMk7kjibXlFCAGIj+ah00Y= +10.212.21.6 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBZz5pv0Emp3OCKfrsLQ72hOcAkbqpmg2wMm5+rngrb+ +10.212.21.6 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDZiPLfFRgPwI4679CHEnsA+clMIaU4An59fHLKF0e2JdRFB4JMWkrWih/RXcjBsGxJzyCDksniX2ucXQr+HGT8K3yDHUOHhqKSLZ1E1LG6PDz+XkVHc0yWLVW1xj4H23RpdRUIOILWhpyztkUKKlK+Pk1hKyZ0EgL+E7+ioaL6rKNbPIZt+q2SN/3CmliKm5hBgFzVUqjyZXsnvWXUmcTl4NoCSnxOMb83XqStZLpwWaESR1zgl3QY0CA4Y2lBis6SlH7fuRmSeQFWFOzZg+LQ4atVUf0KaeFlnhvogS8smFoniET78oOAWTugSGtwTKOTheSI64d/PhjpM7mlOcdB +10.212.40.162 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBC8FtMzAKII9qQu4gvnYr+0iDaqSwUdkKZX7hYBgldAcACcJUDK7XdgE40dLrKRZhpgxvrCVSegFbTuYreDzAsc= +10.212.40.162 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKHLmTPkc6C9MVpmFEkTBKX534/4C5qLVsV7WF9cHW2A +10.212.40.162 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDVorQSTrBnPAb2RiS8gBO9gE/QOc359GICKeXE3h8KwBY3Pu+wM1kuVbdDLiWkSazvBjxM0Q6Jb29X6qiJ2eFI7mnwNQOU5KCWRy54ycHCgQizZYo36wvd+WBfBqKvl30HLVeC1cUGV7oXnS+wPXKTWYvKbCq3xfpjmbiIzuwrcoww3hd7oqtkia+CKKmlrV3O03hf4LFgHAI3dZcPlD3TOL+yg/k34zFQ8h5o260eVUU4BzNLL2zkGsjlTv/Gkq4CcGDQVHlOlOOx+LTXDblvc05zbw4009NT+feE+HXDP9jDc6bdIEI8659PSQvp06oFZJYzwt4dTUNWoRuQh7at +10.212.40.177 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBAF4Exot2FxrjgKp676SV+2UMhrR+ESP3zYyyDnIRCvR+aGFXNWksldmf1Q/IRzw9H8gLWBrwX2se75COX3ClgM= +10.212.40.177 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPoSYv8HwXyu1LJeO1t74ZwDM8e9cW0mJJ5k5Es0N67X +10.212.40.177 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDMZeweisViTAv63KR61MyD9vcRkYlZ1FSKL+xyDqIgnK8pqLkUwlvNjwRubcfSheNX5G194ObB36Nmoyn9ZcDzeJdvHYHIzMcZYI3Rod7Gw4yuAIT1atQn9zYS/88ve/zgdPKL7gz3Whv1LRpZ2U0lztSthAnpczECm94IsNv2hLwMrBHTS+5YxXDrlKm0QJsraiIxDGzxFtIUUlVJ8/RwNJ7VEPXLXuxIEWbNB5bMUWRpEdZKGt/p09cAfZhA+Q8QTUhSpHUazQTK+ohLAZO9rZ8cG65lxtqYDj6As/7xzvf4e6o40lEDQG7iyukPyDCNQuIAelmaBapMV+POvD0z +10.212.40.181 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKSOuzcBCG1NouRpbnPWTYNbk1fG7KTCQmaf/wErkUFRaaS8rCpaWHPMSBI+XSFsvIIIotfNDaSBED7bPfXFKgM= +10.212.40.181 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJU1Dt6G+sz2t0I92ZDThvi93oj9ETwYi9w6UrG62KaL +10.212.40.181 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCs2T7XRvYqHjm3tZi5apBz8+2YHci+vevF1ZRjXcQSx8v38JxQg9DxcB+Lc3kAYVzoZLjpUgROvRqtBDAsQOhdIz1xHztFOG05Hc+lowy1DSJI5iSxZh6XibQm0ccMCx+ucNd1NkXgcb5sYLnxkHJbgBGWWUgUh+HIPhDs8gISFLlY3XFNue/8JFFJOzma95oT53x93P769dm1yNI0L6CGUpBQ1zDpcYaj5GD1dfYEHZZAGdwt3/ppb0r3R/oUGXqWEvXgVJUBUqvn/Vf2owPnMpPkZFLN3qF+RiOFBRjJ0fdQAaTYGdb23QuSNu7ffAq47S6p2w2VDH+j55lM8pZz +10.212.40.220 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKYq+73lOM8w7bYMP6oTgvwScg0FQrF1VYcQ1Bs2lxF8/8v4dcGHgEcKNMj20FP1VQEwiJf62WU03plyzXvtm/M= +10.212.40.220 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICFxhtiCYli4fzIX4ts2DU7P97iM4S4PQLjV//IP/vnl +10.212.40.220 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDkHznsYFNmismH7bwkn15RU1n/Y8KBAgzzJX+DSErVX0uX7v1ppIGTU/3tVYtERsdW3NmdgGiCZJYI3If6eAqDBfTMSGMWhfnfPzFwfPlMSqaaEMOt6nH8JQxwNOt1/cEdWZxA7c212CHSyPjDfFAydakTdeaNEK7dQf7wFxAl1CmIPjDYi0YAOnaeP7rrovTxoqv68AqRCwXva2SH1gEgkDjzeFg8nKsJdYait/rMiCmHIPokd8PwZ/r/GxMI7ulpJSufGWNcti0kUClCl+vxQLjdlvXQCcBSNskcdPnCOVyFEpoz/1gZcj4dEzDpBHJoJ7tKItGuxWmLA+286+x7 +10.212.40.228 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJnRZ+/nNU2y1CSGhENh2HUVuZQEUD6z2jry8rBpyNUzA6S9dM2gRDAgVfJh1SBiGJSaiNXoYpoRNSqSu/44gys= +10.212.40.228 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEYX0lF76zRtyK2VideBEDhv6fT1wk0x0dvVagf+vEy2 +10.212.40.228 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC149FmXt0JHiByOQyYxf1lEz5ugaHV9FVMyeyWOzDP7NxvNALLkQkh0IvSOBDyVKNGvmDMFeQv3rBWlY9AZKOsGqDwbvktqrsjFJrjZzJ5+M4qzFKNdKGMYyXeK0ZZP2mxCe/8ZG8co09yMbCZEO13pUZDPkkjIdde1sZhzGsleLhuPFvDzjd3JBK603JZGxq6NzF7WkYZwUknwDTvjGrK1jq4NBKwcss5Cuv+UiJxrVQaSEKYi//dsBDneplQinNnURvz5A4X9vGswFgYPpo1B4Tl5kck/TuEricSIK0RZ6WccC/gUWTCtElHIw+UUFn1/W2Q63Or/UHakvxalp4X +10.212.40.253 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBNZDwaLXciVXorH5WZEwzXo0veq0ZYW7ePUwDiq3E1CBq2Cjik/HlSC1MK2XbSJmTMp9y1LAG6+qX8n37iso6d4= +10.212.40.253 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIUAtMuGJhTbJKW1OIy6hcSw5V6Rxoy/wNh7SXHzFTQL +10.212.40.253 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDsOf6Z3vGicxseAMFOnWazi0s39VBnvShxznNWQ8msoBp6LCHtz/ptJgSq9KYhGC6WzyqE4A/KzePb0SdWZh7W1ghrYYHUl9hiRysAdkhsICD7DcdmMmbHRCmlVcCTNc6tMNIZwu8SvdORg4bNU8Cep77ulokli3gf9VRCP5QkI3teln4zAeMwhEvkcAjYUKfNPkz4ngHG9MyjJe0nyQ6wW21f/7bK+y+2U4yQUsvMDzC9Ku33TfM0qqxLvlyobXrgV+1731F+cuap7X3onJRNhW7ybabsidrTqBaxy93TXfnEx2YPl1PHIX+FOb0AXKEj0SHaOdJEAUjAFZR1TI1P +10.212.40.68 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEVVY4bRwgkAM0+6Ee18X2CDx65VwOz4pkJF1Vhkr01xo6r8a9VXR+H0X6hcLHFtIgmA2JHGU6sCcYgsyDkZwUY= +10.212.40.68 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKohAgQyTlP8ss1Q/DfciJBEW8/6mSx9nZXWM66j/rti +10.212.40.68 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDGWHld54DNfYFo3LeBCLYzY+ejOfOiWWnnwElyURQlyNq6ChKj4J5sL7BfGYWpq5x0t0OpxpH6SFUesWEclf7T67UA1/0edsCZBN/ElKySIEqRNSygxuzplLe57AGrfTa6sPLeclozBNGtT1WFPRWWwZY1Abc1KIx5iZnlD4hn0KGuSB6+qA4eP6Qp0grt5ZxaidR65u49fGcb0ziEcVBEzLmOQ0YQo/hJVbCACSINWLAhzFnQqAB7542kHAsrE5tiV/FXkYDfPShbrhTU+QfrRAB1rWSDUaCFId3Xeche/qidA4paHMMmQ7pe+AA46MnYs1Oiy2n4L3vjMrVWFyzN +10.212.40.93 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBACIdB5lrD1GLH64APyWlcI728H1efckzLrOsPm8T4aEri7gIsDLmACpAwPBeVcrnYma8fTRGJs57519HeCeEEo= +10.212.40.93 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMHxvaF7V6ZYga7coFmXIRswxU0/5ubY2NV73PWTDoo+ +10.212.40.93 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCerK0jYKlTGZcyz4jDpUQyDi4Iq9tYLLsucpH4U4mUPxP7dVFRp0i+qkMeEccq+U5WZ5W2O5+ry1VbpiTOb4C2zPKf1H65YckRzMluwFwdBICcxUSkYkbVfttOJZk/4TkNgylytD6jSfjoXnN7H3LyG6xnLuAVmEK64QYrAHDmAqAVGrFv7b5/MpQqPpP03NE+SEhiURyL6EWGDcCnEyFVfTXEBZc5ZlVqTl5zPzEXNDKJ9dQdEcOdP3Ps7RY1NnIHjulp3MHcu2PZoBIXMAUPt20znLGg8FqBFa/bJYmW26HdLxGgHZgP7ld6JHoyztNeWEplIuW2Ksb9PR5tLV6T +10.212.41.111 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEC7QpzCbi98dCNv4GOiZnRfNW+XC7N2zfdZ0q7kyOoOaCFWWkhKAdIzGN0kT1A4mWPV66ScmsqKUkMtNI3oDjw= +10.212.41.111 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICeCF1aIhWdm7KORiPkfCmOUy+sJ00rUjcjE7AGXoMyY +10.212.41.111 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDQ/RAf5d9RpoTrSGSoOD+e1p2sSzajfV6J4QYnBEKAoxLuwuP50fuNNOZgSJlNj3UeGN+O/eKULd4FA1nb4mKcec/ceAmu685Pe1Xz0FtBbLDHc37g2NQ6mtF14rLhwU0h2UGkZSxSVBqxf6YLMylII5of7zWqGJEtERPLGkwzsklBq6WpVJ0UvDP6G+lh/NRRYe1FZkIk7VW3bKLOrREE0kHw9lEV5gr1F737Hoe9nXcRJjetjLQwb5xsI+rNOfs3jtGTQaPcx9e/X1WgAF8nh6+0IUa0uiepvR5CRbl+ihvH+r3ftEWPAkODSnkay622ro3zPkyB5C5U4wQA9Bkh +10.212.41.118 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBNhJJLBrPq7VnjVjVA4ogUCrg8t4515gLotFv9VwghEolXDTTdoN19POWw+8iJdu2fP0remBbPWanP+cUEbdgRc= +10.212.41.118 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOLExGZ9Nnm1nhkwDPPS9BpH6gf6mVIviEOWrC1vMhT3 +10.212.41.118 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDUk4/t9qsY6VR95Q9ww3F1d0msM7hanNiNPqWLJ1MuYPdfvi/HQz16s2ZsB9ALLJ9TiiEWRSVgwlzL0j/M897tnWZDJ3XTxqHWNu9jDu4FafZnVzVK/0eZROy3ILXOAP1f7X6kPszQ7gg1wnnwbyd8+exT0t5FVX7hnvfcxI0Pkm9hWLh7ZehG5fNDWfBYlEhuM5CFqMiWXned8FTql0SnZk8BWHZevYMDJvg15Jz1KBF5/NYJ+mdOCwmSZz27DrDa1UlL2Z7gsvj5xvPCmteVPoVaV8oGIXJ2t36GmWs9NWqXJ6KA/5b+nl8JpN0U2u7WvflEFFui/SNtdu0cbol1 +10.212.41.136 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBIDen4gF4u4AQrTI31+rMZRI9L4jwFmPvOg4xYksdZKDs4wEH/1yTVa9dQJQvwjmiWYIoRYsrecTTVT8LlXOAl8= +10.212.41.136 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFLnD9F3cZCmqU0xHMu2dh6qXXOoFYMKA2naBUC/g3KE +10.212.41.136 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDG3mwVvDDx1iAgPiphrugJ5xamKrMfa+1EShGlSOrdHG5+eJnxPMR2/IvBZLdSrmoYqGlrTmGmlayWy9CEL7tInQlhMrupsOMB6slSI8XsVfdSj6U6kc1HKl3X+yN8QgwgIK3eLW31MQFTD0JnFkONz48PPwHJ6ShUqDttvnG8Lmfvrbs37stmF0no2KY4YcvPTETlctgKIcuGhrC5JDWn0EOulNyNJyu0hdeqfdq734357oVh3bw3HtaO/NZgpDBXpPuOGK7RK2KNFEp6dQjXkMR3CgSrkG5oftJpwTq5HI02fe94qF3Q8urCRV9qfvMQIfoCEFvmjydpxNjNGjsn +10.212.41.145 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKWU3f9blG+0bR5wfZNQWx82SvAlPiBaFjrR9N5jHNCodO+mGI8/vaLFqSEeXAqD9+wGtymQBSJZ47sc1+z78jg= +10.212.41.145 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAID087iSjZZpicynwHErKP31tCoKbX1+4pI6zCWO5mxFS +10.212.41.145 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDC2uGVfzhAXsseCPSV442gTaBYTLf9jlgjGT97vEPAMfXcTgjFqOzSvsPLoCJ9QIyojPLX2wmzB2z2E2S7lb+mbcVjPXOILmRVspj9oFD26HS87TIaayS8bdyxnsC7FWr3rPHJzie0o3YrTSJVXPYgDaDkWsJxNklJggpFd8PhmYjaIKQ0B5GlobPmJloqzN5oypCvlJk9kXTT2D/y9nLX/1mrVTZX1czDJ56wHgJDy56nZT05mzpk+xL0TPdWgwE02CgGjATUnQhQxe7pi20lyGLulGVEglh2g1LsPWHCQJ624vrdA0OLZ54smvqWQPdHkwjSZpzNNzZ4v9rExQat +10.212.41.170 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEbC3VNFc8kFYrkhzscCFdV2ohTpKoG07NIrBgvBe3KiIeUf5mNd7tCjx7rNrKy8omy+6ZcEcC/tC4tZc5YpmNg= +10.212.41.170 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAiU68rSRcTQ+wj6LGT+p6uAYYW3ef4An4NzGR8+WIBh +10.212.41.170 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDGXTIWJiiTGh/jKj2pskJLvD4iOIXswmrWEJWe+pWBcko3R4OCCYhYgV9JVUAVKDcpIvWHsuwo3EzLtSA5155AkyqGmOUIoLwYeHsOPp/CoIuessaSzMGDK/WlC+JDK3TzrTtAuEya88Ueu+HS3L7UOwszFNDp4cwOKjOK5hp/CjC10oDLbxSAo26LvOJmIyykRIB0Pf4NLCZ+YiHzyf9Ach6lO7ne5UCfJU88kJls0mJPrQAIxeGyfaXHXPDBZom4f5BMN+j640Q76nzKrjJ/4Gzz3cmBmIm0Bl0QjAjyUceDylK7z4PP+zbzEFG80WjWC0RFj/WyLYLo6lDRnUH1 +10.212.41.177 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBDPwjazjKw4Ibkaib9T7WrpTbAvnl1APfg8bxlYM7iY17NE1ue1FCjcMc6ss0mQNvDjJWUjBmgxBuDO76uGTa5M= +10.212.41.177 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIALZADupnf02PioMOjsYDudtJptXOfuvuGSqjiQHPOFH +10.212.41.177 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDKzH6de9zrNzNgWLbsjX9lsIE3Gxd4q6WIykQo2IITUW7UfNA0Xp2hk/I1lF8rrKNyXI8I+8IpKnNfEIvU3kt1CleVd/k3TwvEJrsk4GZ3rjrl0qnOi6DGYAlD35hmWpk8ny8qxiYpnM7m5i/hsZMMDp9eL3vYudiy04V7gSW/lVgIqlKyTQd/o17FXqfXVtOUG7HtPX4MZXHV15zEfAym5m4WIig0KCe9giqhx9gJaCndzmrXWb/p97g9VjvVgbhIxrXBKr52WrSHGEuLyruD+6o2+Jvmabj8+TLWSwEhpq1M2sYZAdmC/DqlQGEjEPBlvW5XuJhtLYFDPQQUc6zf +10.212.41.194 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCboXp3SQUmG3jY/4Vc0oFvc/Kx+NjFo510nEJBek46Gl/xEXRNJIl/dSyVQuBJMHD0/khwyuPhGLx2vBvfyZn4= +10.212.41.194 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPQe3p32TfmuzedTMT+52tSDDMHNhDLoklyZm75OJ8Hx +10.212.41.194 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCkdk/TubsaPDZoN986NMK+nDHgGaQVGo53794l7Dh46W3lEVojId8TjqFOHPUL10EQUXW0nl9U6QN6wVfMnM4nesxpxL60CRwKxCxVVTgEE9r48ETrEk262IAcpjESyozRLkL2aKJoTAsyBhcGJljvDb2ofqoBf5XKsczwPq08SegxmTe4Xfm3Po7IEVjwp12Xt5uZH6i9aitJ8mzM3ipi3zuS//TSvLv+UjFV77oPcy8vkH4zsKw3xADDWezw/PUdAEfXy2g5pLpeE+Wwzal8y7PIoFkQC5MluXlHSFwGMMyyF737pdrF8gARtSyoKj/IoyYwfcB4p44xZokSU0L7 +10.212.41.21 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJB9fOsKCBODvKSWyIvm21h1C4pTT/v1oL3nxTxP3tMC8HhjMFGJB2/Jv6mFxdmmuTzB9TWONwGwnLuyp0C55ww= +10.212.41.21 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINLVMh4XLuK4dZLxBUXaYRM4iqlQ8eYqS9sT0apmKzXl +10.212.41.21 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDCl90FYHb+OS1E1fN+fEA54Bo1s7y4stRKwXbFFW2KLf8cEOyF/td8DsGK74XvsxLfoi2N0HD5LYhnoVF9rcv0scenTBj8djFW9miRpWlc6D1l2DJIEkZiuk7gzgNbGej3VHlltYWjViAO9lZPpdM3/rb4X9MA0RpgUPrP+5UcVh6gA0tB+WBr9UEFHSePxH+jTSIR+86itiK0tKSyEwTMOCne3ocI2hLRvBIYV/gTK1iu8FM3gQHW1dQak5K8gUmr1558om/lLm/ir3OOcCQVyCAnoCLFMBwMx73A+Mw7yTwPFngcbKGLP3JKUzqGsWNGscpuUxqtIU/1F24NnF4P +10.212.41.254 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBHaJ0kF8EHO7P9ikR94Ybhxq8+K/PZKM4AUjkx8cM5oGA7d/3b+n0HdcXhWNQakrfaVwEL1f8EjOXLR5JhfR1cE= +10.212.41.254 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINAgdI12/ps2w8WuCx1JNgezQftGS6wm+4M6WiLZcg1D +10.212.41.254 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDTihw3vap85/M2/NEDhf4q+9Pa3foYXDQ7+IRePFPX8i588ADuIcOrXPt16zsdhZ3dGOb6qBqwpTeiPwlNwheVvkqA6hV0hVUv2P2FImgno4M5K9S+45wKMntEhU0xnmmUmrChgnDZ1pEEjh6rc7S0aqUJAfR3hTnyrGeZ0Sjl6E5EngfHf9ldIKvxXKVmYqFgS3YsttsBm8GM5VqyppKaRt0DiEj9lzaav/nxlZQvPJcn2jgdrcFSkOi2PDOn8BFMbc3dBvdXZutTqEK6NUJHAubY9N2BfSo6DYXe/7MYQ4zv7wPlD3DPfMyHKfRp5iWwJiAqelnN1Q/WymKvXKcL +10.212.41.32 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBM9CGj/6UKONMaudLKnP1j8Hrp2KuzHMVCKnzm8Uh1MsjlK2cWZEADvICia18mcDpFAin7IK9X+QILTLbYlO/D0= +10.212.41.32 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIJ5us5I6nhoh08EwhKC5PokHea9M1RstP+8dfU0Xuqc +10.212.41.32 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDD8VeUD0ben5k5iVzoh0Xfc/jJIYwtJDs9vquM6G6/DqPXm0849wuI1DjP0NydYG/3OtvyjusqhFgOYIUdx0ZV1wtR+FlFU2vqKNpLEmRie5/osjJn3k1umb2CSuBFUqt8IWVXG5tO+wiKDIf0a6FhALpddbhbffcE5bXa64kvh7hN8sKKhsHX9NwgVOvqLx75VLPM017aWmfH2WKFXDEmyv/QCC2USQsvf1knS7/yl+4RWL5VaIg1HyIG0ItKHVfp/s+ebsjS8q4zUlx6dRaQyBaTltJCmna27GJvba0VgFN6+NNJSkT7z2IgvXoUBNp5g1y2JDo9SmwjXS67XAkx +10.212.41.47 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBFG7p3mb8zTFuTeukORgpADPpR9G1V520RcsahcUoW8wvSHIOuTq88bjB9b3bTUeP6gnRJNOzLSHgXrZ2pQrqkA= +10.212.41.47 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIjoBYu1hwH7+lRnrz+lmqeQldxeKxo71anNfyFMFXvs +10.212.41.47 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDF6euIHAHsOoTR24ZtJBsJSPVhIV2NaDP9lJjZrlc7/yDrP8znS2Ux53ZW1POrTUFepqGrSa8TEdMc/qEQoVhVVl7xuhiz9Q/z6WHrxxqIEl32R75KeoQpYqgHU+C22FmwEOhq6RROhrhxcQywgo1g3bUCAxEORXv2KL5X6bW57BdWjbwdrJKXigLJiiETIrpucRGigXmi1msLJ/btu2JqcTr9Mcjn3c3XusTZG8T1RR2WoN/njs4MGIw+rn+pVRm05+Mvb+/XafarpVVQuzUhtDiPWnaqPfB/NGenKmHrts02lG4iwgsIZjA2V1xZcXmHwwVZTNRqFZKU08+a0YS7 +10.212.41.7 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBGEwOVJ4ZnA+kqdhvxwsGNre6+rUSSyYhgnAwA0pg5cCn7XtsIXyoPMY6eCOBS/sk4Z6xv17x3iwkbjHGMT6SHo= +10.212.41.7 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIF6PgRGvIc4P32QWVCESJmA08CiP/8qEzXfpalWWb6Z3 +10.212.41.7 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDV9UExZZUXvFWnpwcB7Qt8P6MpSRLmk59VSoAjOlFkxEP7dfsA4YLc1MCk9aehOmxInC61EDrAlueuZGbgRNNUfXbigbxW/qUjyUWD5i8YWLfLuSSwynqWDBXmrXOxRaluVMJ7ET6soBhyUaGIs0ObqsBMj3HW3Fr0438KgNOkGg0TeLgnRCQW0MEPD3aVvUh6Sd8DIjn/Hb1sdsQIfcn10BJN3x3hpqen7QIgcHbmE8HWPWvDbsSEpaqMzkMVzXIA63QD3yvK16pDHRiJ0ZPPKElg7DjQDY77qNX3U4jEvLCtOcquO1XbnjA/pCsmgU5rv2ehqGfuoa7Pa/PYx/bL +10.212.41.86 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBHol7vXPk3P8uVymwM8cte2WjtsfCU//NU4hwAj5kYnzKIEBzv2hWmF/iE8IDKiDbBo8Ld0pHbuJluBcplvurWE= +10.212.41.86 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKmBBMtl7sispOW/y3SRCSnvE0ZHoBNEH2vZb798McI9 +10.212.41.86 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCzDhTE3NOTpYDi/Bw8R4H4B8yq1Jp/1/ZoZNfkvFY/vVkoFL9UAg1suPui8o4GzO8zWkvwfyDEEeT4KLcbnKQsG4Xbu2NiDgMvV9QIN83d7VXNaaTXUb7bn6YPaTpblh9jfx5AsxJcu3uX+rP9XR2jtU5bdVlXogMj1f2RsBZ6/D6hv4JgNqLQlGmZ9dVqALme0OcTGoWkTqlfMtioajBRLrv15sRt1ycd+s5c40z2+5sIw5DnCkuJ1Dz1jus6v7YLfnTkzMo/G/Ar+tkLsRaPq4tLnRTaoF4Thu8OtUqy6AKX2TKw+msuLrlBDOKKcz1cjS8Z+gyQkZuztZ9qgXAF \ No newline at end of file diff --git a/environments/backup-production/meta.yml b/environments/backup-production/meta.yml new file mode 100644 index 0000000000..5b590a05e0 --- /dev/null +++ b/environments/backup-production/meta.yml @@ -0,0 +1,7 @@ +deploy_env: backup-production +env_monitoring_id: backup-production +users: + - dimagi + - fissionlabs +slack_alerts_channel: alerts-backup-production +secrets_backend: aws-secrets diff --git a/environments/backup-production/postgresql.yml b/environments/backup-production/postgresql.yml new file mode 100644 index 0000000000..fe33d8478d --- /dev/null +++ b/environments/backup-production/postgresql.yml @@ -0,0 +1,113 @@ +DEFAULT_POSTGRESQL_HOST: rds_pgsynclog0 + +postgres_override: + allow_dump_from_pgstandby: yes + postgresql_max_connections: 1000 + postgresql_version: '14' + postgresql_checkpoint_completion_target: '0.7' + postgresql_wal_buffers: 16MB + postgresql_max_wal_size: 2GB + +pgbouncer_override: + pgbouncer_default_pool: 490 + pgbouncer_max_connections: 10000 + pgbouncer_pool_mode: transaction + pgbouncer_pool_timeout: 1 + pgbouncer_reserve_pool: 5 + +pg_repack: + pgbouncer_a0: + - database: commcarehq_synclogs + host: "{{ DEFAULT_POSTGRESQL_HOST }}" + username: "{{ postgres_users.root.username }}" + password: "{{ postgres_users.root.password }}" + port: 5432 + skip_superuser_check: True + +# We're temporarily disabling read replicas +# and will revisit after migration to RDS +#LOAD_BALANCED_APPS: +# auth: +# - [default, 1] +# - [pgmainstandby0, 3] +# locations: +# - [default, 1] +# - [pgmainstandby0, 3] +# userreports: +# - [default, 1] +# - [pgmainstandby0, 3] + +dbs: + main: + host: rds_pgmain0 + pgbouncer_endpoint: pgmain_nlb + pgbouncer_hosts: + - pgbouncer_a0 + + formplayer: + host: rds_pgformplayer0 + pgbouncer_endpoint: pgformplayer_nlb + pgbouncer_hosts: + - pgbouncer_a0 + + ucr: + host: rds_pgucr0 + pgbouncer_endpoint: pgucr_nlb + pgbouncer_hosts: + - pgbouncer_a0 + query_stats: True + + synclogs: + host: rds_pgsynclog0 + pgbouncer_endpoint: pgsynclogs_nlb + pgbouncer_hosts: + - pgbouncer_a0 + + auditcare: + host: rds_pgauditcare0 + pgbouncer_endpoint: pgmain_nlb + pgbouncer_hosts: + - pgbouncer_a0 + + form_processing: + proxy: + host: pgbouncer_a0 + pgbouncer_endpoint: pgbouncer_a0 + pgbouncer_hosts: + - pgbouncer_a0 + + partitions: + p1: + shards: [0, 204] + host: rds_pgshard1 + pgbouncer_endpoint: pgbouncer_a0 + pgbouncer_hosts: + - pgbouncer_a0 + + p2: + shards: [205, 409] + host: rds_pgshard2 + pgbouncer_endpoint: pgbouncer_a0 + pgbouncer_hosts: + - pgbouncer_a0 + + p3: + shards: [410, 614] + host: rds_pgshard3 + pgbouncer_endpoint: pgbouncer_a0 + pgbouncer_hosts: + - pgbouncer_a0 + + p4: + shards: [615, 819] + host: rds_pgshard4 + pgbouncer_endpoint: pgbouncer_a0 + pgbouncer_hosts: + - pgbouncer_a0 + + p5: + shards: [820, 1023] + host: rds_pgshard5 + pgbouncer_endpoint: pgbouncer_a0 + pgbouncer_hosts: + - pgbouncer_a0 diff --git a/environments/backup-production/proxy.yml b/environments/backup-production/proxy.yml new file mode 100644 index 0000000000..109234cbd3 --- /dev/null +++ b/environments/backup-production/proxy.yml @@ -0,0 +1,25 @@ +fake_ssl_cert: yes +SITE_HOST: 'backup.www.commcarehq.org' +primary_ssl_env: "backup-production" +trusted_proxies: + - 10.212.0.0/16 + +nginx_hsts_max_age: 31536000 # 1 year +nginx_ssl_protocols: "TLSv1.2" +nginx_ssl_ciphers: 'ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384' + + +nginx_max_worker_connection: 4096 +# commcarehq.org of certs + +letsencrypt_cchq_ssl: True + +nginx_block_ips: + - '180.191.158.205' + +special_sites: + - tableau + - wiki + - wiki_http + - motech + - motech2 diff --git a/environments/backup-production/public.yml b/environments/backup-production/public.yml new file mode 100644 index 0000000000..67fd30e9c1 --- /dev/null +++ b/environments/backup-production/public.yml @@ -0,0 +1,226 @@ +daily_deploy_email: tech-announce-daily@dimagi.com +root_email: commcarehq-ops+root@dimagi.com +server_email: commcarehq-noreply@dimagi.com +server_admin_email: commcarehq-ops+admins@dimagi.com +default_from_email: commcarehq-noreply-backup-production@dimagi.com +return_path_email: commcarehq-bounces+backup-production@dimagi.com +support_email: support@dimagi.com +probono_support_email: pro-bono@dimagi.com +accounts_email: accounts@dimagi.com +data_email: datatree@dimagi.com +subscription_change_email: accounts+subchange@dimagi.com +internal_subscription_change_email: accounts+subchange+internal@dimagi.com +billing_email: sales@dimagi.com +invoicing_contact_email: billing-support@dimagi.com +growth_email: growth@dimagi.com +saas_ops_email: saas-ops@dimagi.com +saas_reporting_email: saas-reporting@dimagi.com +master_list_email: master-list@dimagi.com +sales_email: sales@dimagi.com +privacy_email: privacy@dimagi.com +feedback_email: hq-feedback@dimagi.com +eula_change_email: eula-notifications@dimagi.com +contact_email: info@dimagi.com +soft_assert_email: commcarehq-ops+soft_asserts@dimagi.com +new_domain_email: inquiries@dimagi.com + +DATADOG_ENABLED: False + +DATADOG_TRACE: + TAGS: + env: backup-production + +elasticsearch_endpoint: '{{ groups.elasticsearch.0 }}' +elasticsearch_cluster_name: 'prodhqes-1.x' +elasticsearch_version: 2.4.6 +elasticsearch_download_sha256: 5f7e4bb792917bb7ffc2a5f612dfec87416d54563f795d6a70637befef4cfc6f. +elasticsearch_memory: '4096m' +#elasticsearch_node_name: '???' +elasticsearch_fielddata_cache_size: "40%" +elasticsearch_delete_old_logs: True + +nofile_limit: 65536 + +backup_blobdb: False +backup_postgres: plain +backup_es_s3: False +backup_couch: False +postgres_s3: True +postgresql_backup_days: 1 +postgresql_backup_weeks: 1 +nadir_hour: 16 + +# pg_repack +pg_repack_version: 1.4.7 + +aws_region: 'us-west-1' + +filebeat_inputs: + - path: "{{ log_home }}/{{ deploy_env }}-timing.log" + tags: nginx-timing + - path: "{{ log_home }}/{{ deploy_env }}_commcare-nginx_error.log" + tags: nginx-error + +formplayer_purge_time_spec: '10d' +formplayer_sensitive_data_logging: true +formplayer_forward_ip_proxy: true +formplayer_detailed_tags: + - form_name + - module_name + +KSPLICE_ACTIVE: no + +run_websockets_wsgi: True + +couch_dbs: + default: + host: "{{ groups.couchdb2_alb[0] }}" + port: "{{ couchdb2_proxy_port }}" + name: commcarehq + username: "{{ COUCH_USERNAME }}" + password: "{{ COUCH_PASSWORD }}" + is_https: False + +couchdb2: + username: "{{ COUCH_USERNAME }}" + password: "{{ COUCH_PASSWORD }}" + +couchdb_compaction_settings: + _default: '[{db_fragmentation, "50%"}, {view_fragmentation, "50%"}, {from, "22:00"}, {to, "03:00"}]' + +couchdb_version: '3.1.1' +couchdb_rexi_use_kill_all: 'true' +couchdb2_client_max_body_size: 100M +couchdb_os_process_limit: 1000 +couchdb_reduce_limit: False +couchdb_cluster_settings: + q: 8 + r: 1 + w: 1 + n: 1 + +kafka_version: 3.2.3 +kafka_scala_version: 2.13 +kafka_download_sha512: 36A129823B058DC10788D0893BDE47B6F39B9E4972F9EAC2D5C9E85E51E477344C6F1E1EBD126CE34D5FD430EB07E55FDD60D60CB541F1D48655C0EBC0A4778 +kafka_inter_broker_protocol_version: 3.2 +kafka_log_message_format_version: 3.2 + +zookeeper_version: 3.7.1 +zookeeper_download_sha1: sha512:9103628a50745fa1a289bca666fda4a9c08ec17c55cf13e66887e7ba76e93dbae60a1f1ffd6c10798be3a16069344ecbc00cebb29bf03d9cd7096ccd098ed011 +zookeeper_cluster: True + +TWO_FACTOR_GATEWAY_ENABLED: True + +erlang: 1:25.0.4-1 +rabbitmq_version: 3.10.7-1 + +#RabbitMQ Broker URL +BROKER_URL: 'amqp://{{ AMQP_USER }}:{{ AMQP_PASSWORD }}@{{ AMQP_HOST }}:5672/{{ AMQP_NAME }};amqp://{{ AMQP_USER }}:{{ AMQP_PASSWORD }}@{{ groups.rabbitmq.0 }}:5672/{{ AMQP_NAME }}' + +s3_blob_db_enabled: yes +s3_blob_db_url: "https://s3.amazonaws.com" +s3_blob_db_s3_bucket: 'dimagi-commcare-backup-production-blobdb' + +AMQP_HOST: "{{ groups.rabbitmq.0 }}" + +localsettings: + ALLOWED_HOSTS: + - testserver + - proxytest.commcarehq.org + ALLOW_MAKE_SUPERUSER_COMMAND: True + ANALYTICS_DEBUG: False + ANALYTICS_LOG_LEVEL: "warning" + AUDIT_ALL_VIEWS: True + AUDIT_TRACE_ID_HEADER: "X-Amzn-Trace-Id" + BANK_ADDRESS: { 'first_line': "1 Citizens Drive", 'city': "Riverside", 'region': "RI", 'postal_code': "02915" } + BANK_NAME: "RBS Citizens N.A." + BANK_SWIFT_CODE: 'CTZIUS33' + BIGCOUCH: True + BIGCOUCH_QUORUM_COUNT: 1 + CELERY_REMINDER_CASE_UPDATE_BULK_QUEUE: "" + COMMCARE_ANALYTICS_HOST: "" + COUCH_CACHE_DOCS: True + COUCH_CACHE_VIEWS: True + COUCH_REINDEX_SCHEDULE: {'timedelta': {'minutes': 5}} + CUSTOM_SYNCLOGS_DB: "synclogs_2017-11-01" + DEPLOY_MACHINE_NAME: "{{ ansible_hostname }}" + DEVICE_LOGS_ENABLED: no + EULA_COMPLIANCE: True + EMAIL_SMTP_HOST: email-smtp.us-east-1.amazonaws.com + EMAIL_SMTP_PORT: 587 + EMAIL_USE_TLS: yes + ENABLE_SOFT_ASSERT_EMAILS: True + ENFORCE_SSO_LOGIN: True + ELASTICSEARCH_MAJOR_VERSION: 2 + ES_CASE_SEARCH_INDEX_NAME: "case_search_2022-10-04" + IS_DIMAGI_ENVIRONMENT: True + HQ_INSTANCE: 'backup.www' + INACTIVITY_TIMEOUT: 20160 + INVOICE_FROM_ADDRESS: + 'name': "Dimagi, Inc." + 'first_line': "585 Massachusetts Ave" + 'city': "Cambridge" + 'region': "MA" + 'postal_code': "02139" + 'country': "US" + 'phone_number': "(617) 649-2214" + 'email': "accounts@dimagi.com" + 'website': "http://www.dimagi.com" + INVOICE_PREFIX: INC- + INVOICE_STARTING_NUMBER: 5000 + J2ME_ADDRESS: "" + LOCAL_CUSTOM_DB_ROUTING: + auditcare: auditcare + LOCAL_MIDDLEWARE: + - 'django.middleware.security.SecurityMiddleware' + PILLOWTOP_MACHINE_ID: hqdb0 + ALLOW_PHONE_AS_DEFAULT_TWO_FACTOR_DEVICE: True + RATE_LIMIT_SUBMISSIONS: yes + SES_CONFIGURATION_SET: backup-production-email-events + SNS_EMAIL_EVENT_SECRET: "{{ SNS_EMAIL_EVENT_SECRET }}" + REDIS_DB: '0' + REDIS_HOST: "redis.bk-production.commcare.local" + REDIS_PORT: '6379' + REMINDERS_QUEUE_ENABLED: True + REQUIRE_TWO_FACTOR_FOR_SUPERUSERS: True + STALE_EXPORT_THRESHOLD: 1800 # 30 minutes + SMS_GATEWAY_URL: "" + SMS_QUEUE_ENABLED: False + SUMOLOGIC_URL: "" + STATIC_ROOT: + STATIC_CDN: 'https://d2wbnffibuhek0.cloudfront.net' + STATIC_TOGGLE_STATES: + mobile_ucr_linked_domain: + always_enabled: + - 'fmoh-echis-staging' + couch_sql_migration_blacklist: + always_enabled: + - 'ews-ghana' + - 'ils-gateway' + - 'ils-gateway-train' + USER_REPORTING_METADATA_BATCH_ENABLED: True + WS4REDIS_CONNECTION_HOST: "redis.bk-production.commcare.local" + +# comment these two lines out to make a new rackspace machine +commcare_cloud_root_user: ubuntu +commcare_cloud_pem: ~/.ssh/id_rsa + +kinesis_flows: + - file_pattern: "/opt/data/formplayer/log/request_response.*log" + delivery_stream: "formplayer-request-response-logs-partitioned-backup-production" + +enable_cloudwatch_logs: true + +# celery variables to soft/hard kill workers running for long hours. +# hard_kill: 72, soft_kill: 36, False will remove the cron. +celery_hours_before_hard_kill: 72 +celery_hours_before_soft_kill: 36 + +efs_shared_mount_dir: "shared{{ '_' ~ deploy_env if deploy_env != 'backup-production' else '' }}" +efs_shared_mount_endpoint: "shared-efs.bk-production.commcare.local:/" +efs_shared_mount_options: "_netdev,nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport" +shared_dir_gid: 1500 + +# for better time syncronization on aws servers +# replace ntp with chrony. +use_chrony: True diff --git a/environments/backup-production/terraform.yml b/environments/backup-production/terraform.yml new file mode 100644 index 0000000000..e3f1c7f7a0 --- /dev/null +++ b/environments/backup-production/terraform.yml @@ -0,0 +1,295 @@ +account_alias: commcare-backup-production +terraform_version: '1.2' +state_bucket: dimagi-terraform-backup +state_bucket_region: "us-west-1" +region: "us-west-1" +environment: "bk-production" +ssl_policy: 'ELBSecurityPolicy-FS-1-2-Res-2020-10' +azs: + - "us-west-1b" + - "us-west-1c" +az_codes: + - b + - c +vpc_begin_range: "10.212" + +ec2_metadata_tokens_required: yes + +servers: + - server_name: "control_a0-bk-production" + server_instance_type: t3a.small + network_tier: "app-private" + az: "c" + volume_size: 20 + group: "control" + os: bionic + + - server_name: "djangomanage_a0-bk-production" + server_instance_type: t3a.small + network_tier: "app-private" + az: "c" + volume_size: 20 + group: "django_manage" + os: bionic + + - server_name: "web_a{i}-bk-production" + server_instance_type: t3a.small + network_tier: "app-private" + az: "c" + volume_size: 20 + volume_encrypted: yes + group: "hq_webworkers" + os: bionic + count: 2 + + - server_name: "web_b{i}-bk-production" + server_instance_type: t3a.small + network_tier: "app-private" + az: "b" + volume_size: 20 + group: "mobile_webworkers" + os: bionic + count: 2 + server_auto_recovery: true + + - server_name: "esmaster_a0-bk-production" + server_instance_type: t3a.xlarge + network_tier: "db-private" + az: "c" + group: "elasticsearch" + os: bionic + volume_size: 20 + + - server_name: "esmaster_b0-bk-production" + server_instance_type: t3a.xlarge + network_tier: "db-private" + az: "b" + group: "elasticsearch" + os: bionic + volume_size: 20 + + - server_name: "esmaster_c0-bk-production" + server_instance_type: t3a.xlarge + network_tier: "db-private" + az: "c" + group: "elasticsearch" + os: bionic + volume_size: 20 + + - server_name: "es_a1{i}-bk-production" + server_instance_type: t3a.xlarge + network_tier: "db-private" + az: "c" + volume_size: 20 + block_device: + volume_size: 20 + group: "elasticsearch" + os: bionic + count: 7 + + - server_name: "es_b1{i}-bk-production" + server_instance_type: t3a.xlarge + network_tier: "db-private" + az: "b" + volume_size: 20 + block_device: + volume_size: 20 + group: "elasticsearch" + os: bionic + count: 7 + + - server_name: "couch_a0-bk-production" + server_instance_type: t3a.small + network_tier: "db-private" + az: "c" + volume_size: 20 + volume_encrypted: yes + block_device: + volume_size: 20 + encrypted: yes + group: "couchdb2" + os: bionic + + - server_name: "rabbit_a0-bk-production" + server_instance_type: t3a.small + network_tier: "db-private" + az: "c" + volume_size: 20 + volume_encrypted: yes + group: "rabbitmq" + os: bionic + + - server_name: "celery_a{i}-bk-production" + server_instance_type: t3a.medium + network_tier: "app-private" + az: "c" + volume_size: 20 + volume_encrypted: yes + group: "celery" + os: bionic + count: 1 + + - server_name: "pillow_a{i}-bk-production" + server_instance_type: t3a.medium + network_tier: "app-private" + az: "c" + volume_size: 20 + group: "pillowtop" + os: bionic + count: 1 + + - server_name: "formplayer_a{i}-bk-production" + server_instance_type: t3a.small + network_tier: "app-private" + az: "c" + volume_size: 20 + group: "formplayer" + os: bionic + count: 1 + + - server_name: "kafka_a0-bk-production" + server_instance_type: t3a.small + network_tier: "db-private" + az: "c" + volume_size: 20 + volume_encrypted: no + group: "kafka" + os: bionic + + - server_name: "pgbouncer_a0-bk-production" + server_instance_type: t3a.small + network_tier: "db-private" + az: "c" + volume_size: 20 + group: "postgresql" + os: bionic + +proxy_servers: + - server_name: "proxy_a0-bk-production" + server_instance_type: t3a.small + network_tier: "public" + az: "c" + volume_size: 20 + group: "proxy" + os: bionic + +rds_instances: + - identifier: "pgmain0-bk-production" + instance_type: db.t3.micro + storage: 20 + multi_az: false + engine_version: "14" + + - identifier: "pgucr0-bk-production" + instance_type: db.t3.micro + storage: 20 + multi_az: false + engine_version: "14" + + - identifier: "pgshard1-bk-production" + instance_type: db.t3.micro + storage: 20 + multi_az: false + engine_version: "14" + + - identifier: "pgshard2-bk-production" + instance_type: db.t3.micro + storage: 20 + multi_az: false + engine_version: "14" + + - identifier: "pgshard3-bk-production" + instance_type: db.t3.micro + storage: 20 + multi_az: false + engine_version: "14" + + - identifier: "pgshard4-bk-production" + instance_type: db.t3.micro + storage: 20 + multi_az: false + engine_version: "14" + + - identifier: "pgshard5-bk-production" + instance_type: db.t3.micro + storage: 20 + multi_az: false + engine_version: "14" + + - identifier: "pgsynclog0-bk-production" + instance_type: db.t3.micro + storage: 20 + multi_az: false + engine_version: "14" + + - identifier: "pgformplayer0-bk-production" + instance_type: db.t3.micro + storage: 20 + multi_az: false + engine_version: "14" + + - identifier: "pgauditcare0-bk-production" + instance_type: db.t3.micro + storage: 20 + multi_az: false + engine_version: "14" + +pgbouncer_nlbs: + - name: pgformplayer_nlb-bk-production + targets: + - pgbouncer_a0-bk-production + + - name: pgmain_nlb-bk-production + targets: + - pgbouncer_a0-bk-production + + - name: pgucr_nlb-bk-production + targets: + - pgbouncer_a0-bk-production + + - name: pgsynclogs_nlb-bk-production + targets: + - pgbouncer_a0-bk-production + + - name: pgshard_nlb-bk-production + targets: + - pgbouncer_a0-bk-production + +internal_albs: + - name: "couch_alb-bk-production" + listener_port: 25984 + target_port: 15984 + health_check_interval: 30 + targets: + - couch_a0-bk-production + +elasticache: + create: no + +elasticache_cluster: + create: yes + cache_node_type: "cache.t3.micro" + cache_engine_version: "6.x" + cache_prameter_group: "default.redis6.x" + automatic_failover: true + transit_encryption: false + at_rest_encryption: true + auto_minor_version: false + cluster_size: 2 + maintenance_window: "sun:08:30-sun:09:30" + +r53_private_zone: + create: yes + domain_name: "bk-production.commcare.local" + create_record: yes + route_names: "redis" + +efs_file_systems: + - efs_name: "efs_bk-production" + create: yes + transition_to_ia: "AFTER_14_DAYS" + create_access: no + create_mount: yes + create_record: yes + domain_name: "bk-production.commcare.local" + route_names: "shared-efs" From cd89408040f034af15547bfc481ddf575e7a83fa Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Wed, 25 Oct 2023 20:07:56 +0530 Subject: [PATCH 02/24] Replace us-west-1 with us-east-2 in backup env --- .../backup-production/aws-resources.yml | 38 +++++++++---------- environments/backup-production/aws.yml | 2 +- environments/backup-production/inventory.ini | 38 +++++++++---------- .../backup-production/inventory.ini.j2 | 4 +- environments/backup-production/public.yml | 2 +- environments/backup-production/terraform.yml | 8 ++-- 6 files changed, 46 insertions(+), 46 deletions(-) diff --git a/environments/backup-production/aws-resources.yml b/environments/backup-production/aws-resources.yml index f9f61782ff..36392d0457 100644 --- a/environments/backup-production/aws-resources.yml +++ b/environments/backup-production/aws-resources.yml @@ -4,10 +4,10 @@ control_a0-bk-production: 10.212.11.140 control_a0-bk-production.instance_id: i-07a00581fbdc8db25 couch_a0-bk-production: 10.212.41.177 couch_a0-bk-production.instance_id: i-03512491f4cf96829 -couch_alb-bk-production: internal-couch-alb-bk-production-1743768862.us-west-1.elb.amazonaws.com +couch_alb-bk-production: internal-couch-alb-bk-production-1743768862.us-east-2.elb.amazonaws.com djangomanage_a0-bk-production: 10.212.11.144 djangomanage_a0-bk-production.instance_id: i-0234c0c30da41a83e -efs_bk-production-efs: fs-0f73c7bbf4c2e3bff.efs.us-west-1.amazonaws.com +efs_bk-production-efs: fs-0f73c7bbf4c2e3bff.efs.us-east-2.amazonaws.com es_a1000-bk-production: 10.212.41.145 es_a1000-bk-production.instance_id: i-09067f28237cd067f es_a1001-bk-production: 10.212.41.136 @@ -42,29 +42,29 @@ esmaster_b0-bk-production: 10.212.40.162 esmaster_b0-bk-production.instance_id: i-00258f79edc01798b esmaster_c0-bk-production: 10.212.41.170 esmaster_c0-bk-production.instance_id: i-0949dc4cc7faf9670 -formplayer-efs: fs-0328bdaad37639dcf.efs.us-west-1.amazonaws.com +formplayer-efs: fs-0328bdaad37639dcf.efs.us-east-2.amazonaws.com formplayer_a000-bk-production: 10.212.11.40 formplayer_a000-bk-production.instance_id: i-07e869020802e17ce -frontend_alb-bk-production: internal-frontend-alb-bk-production-2099219371.us-west-1.elb.amazonaws.com +frontend_alb-bk-production: internal-frontend-alb-bk-production-2099219371.us-east-2.elb.amazonaws.com kafka_a0-bk-production: 10.212.41.21 kafka_a0-bk-production.instance_id: i-035f64b1fdd5777a8 -pgauditcare0-bk-production: pgauditcare0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgauditcare0-bk-production: pgauditcare0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com pgbouncer_a0-bk-production: 10.212.41.111 pgbouncer_a0-bk-production.instance_id: i-0bb3a4d4eb539c86e -pgformplayer0-bk-production: pgformplayer0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com -pgformplayer_nlb-bk-production: pgformplayer-nlb-bk-production-0564368cae6f3a6f.elb.us-west-1.amazonaws.com -pgmain0-bk-production: pgmain0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com -pgmain_nlb-bk-production: pgmain-nlb-bk-production-a8225d9923521f9d.elb.us-west-1.amazonaws.com -pgshard1-bk-production: pgshard1-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com -pgshard2-bk-production: pgshard2-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com -pgshard3-bk-production: pgshard3-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com -pgshard4-bk-production: pgshard4-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com -pgshard5-bk-production: pgshard5-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com -pgshard_nlb-bk-production: pgshard-nlb-bk-production-ff33a8d7fc7a4c2a.elb.us-west-1.amazonaws.com -pgsynclog0-bk-production: pgsynclog0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com -pgsynclogs_nlb-bk-production: pgsynclogs-nlb-bk-production-7158341afa0269b2.elb.us-west-1.amazonaws.com -pgucr0-bk-production: pgucr0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com -pgucr_nlb-bk-production: pgucr-nlb-bk-production-4ea5b9bba4e9f8d5.elb.us-west-1.amazonaws.com +pgformplayer0-bk-production: pgformplayer0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgformplayer_nlb-bk-production: pgformplayer-nlb-bk-production-0564368cae6f3a6f.elb.us-east-2.amazonaws.com +pgmain0-bk-production: pgmain0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgmain_nlb-bk-production: pgmain-nlb-bk-production-a8225d9923521f9d.elb.us-east-2.amazonaws.com +pgshard1-bk-production: pgshard1-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgshard2-bk-production: pgshard2-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgshard3-bk-production: pgshard3-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgshard4-bk-production: pgshard4-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgshard5-bk-production: pgshard5-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgshard_nlb-bk-production: pgshard-nlb-bk-production-ff33a8d7fc7a4c2a.elb.us-east-2.amazonaws.com +pgsynclog0-bk-production: pgsynclog0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgsynclogs_nlb-bk-production: pgsynclogs-nlb-bk-production-7158341afa0269b2.elb.us-east-2.amazonaws.com +pgucr0-bk-production: pgucr0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgucr_nlb-bk-production: pgucr-nlb-bk-production-4ea5b9bba4e9f8d5.elb.us-east-2.amazonaws.com pillow_a000-bk-production: 10.212.11.24 pillow_a000-bk-production.instance_id: i-07cb1ad00eff0a07c proxy_a0-bk-production: 10.212.21.6 diff --git a/environments/backup-production/aws.yml b/environments/backup-production/aws.yml index 118e2bbf2a..fb638e1341 100644 --- a/environments/backup-production/aws.yml +++ b/environments/backup-production/aws.yml @@ -3,4 +3,4 @@ sso_config: sso_start_url: https://dimagi.awsapps.com/start/ sso_region: us-east-1 sso_account_id: '213307118311' - region: us-west-1 + region: us-east-2 diff --git a/environments/backup-production/inventory.ini b/environments/backup-production/inventory.ini index b62c8d49d8..aaeb314aa1 100644 --- a/environments/backup-production/inventory.ini +++ b/environments/backup-production/inventory.ini @@ -43,52 +43,52 @@ swap_size=2G 10.212.41.111 hostname=pgbouncer-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0bb3a4d4eb539c86e root_encryption_mode=aws pgbouncer_processes=2 swap_size=2G [rds_pgmain0] -pgmain0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgmain0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com [rds_pgformplayer0] -pgformplayer0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgformplayer0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com [rds_pgucr0] -pgucr0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgucr0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com [rds_pgshard1] -pgshard1-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgshard1-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com [rds_pgshard2] -pgshard2-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgshard2-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com [rds_pgshard3] -pgshard3-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgshard3-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com [rds_pgshard4] -pgshard4-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgshard4-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com [rds_pgshard5] -pgshard5-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgshard5-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com [rds_pgsynclog0] -pgsynclog0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgsynclog0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com [rds_pgauditcare0] -pgauditcare0-bk-production.c91guuasbtml.us-west-1.rds.amazonaws.com +pgauditcare0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com [pgformplayer_nlb] -pgformplayer-nlb-bk-production-0564368cae6f3a6f.elb.us-west-1.amazonaws.com +pgformplayer-nlb-bk-production-0564368cae6f3a6f.elb.us-east-2.amazonaws.com [pgmain_nlb] -pgmain-nlb-bk-production-a8225d9923521f9d.elb.us-west-1.amazonaws.com +pgmain-nlb-bk-production-a8225d9923521f9d.elb.us-east-2.amazonaws.com [pgucr_nlb] -pgucr-nlb-bk-production-4ea5b9bba4e9f8d5.elb.us-west-1.amazonaws.com +pgucr-nlb-bk-production-4ea5b9bba4e9f8d5.elb.us-east-2.amazonaws.com [pgsynclogs_nlb] -pgsynclogs-nlb-bk-production-7158341afa0269b2.elb.us-west-1.amazonaws.com +pgsynclogs-nlb-bk-production-7158341afa0269b2.elb.us-east-2.amazonaws.com [pgshard_nlb] -pgshard-nlb-bk-production-ff33a8d7fc7a4c2a.elb.us-west-1.amazonaws.com +pgshard-nlb-bk-production-ff33a8d7fc7a4c2a.elb.us-east-2.amazonaws.com [couch_alb] -internal-couch-alb-bk-production-1743768862.us-west-1.elb.amazonaws.com +internal-couch-alb-bk-production-1743768862.us-east-2.elb.amazonaws.com [remote_postgresql:children] rds_pgmain0 @@ -175,7 +175,7 @@ formplayer_a000 formplayer_a [formplayer:vars] -formplayer_efs_dns=fs-0328bdaad37639dcf.efs.us-west-1.amazonaws.com:/ +formplayer_efs_dns=fs-0328bdaad37639dcf.efs.us-east-2.amazonaws.com:/ cchq_uid=3002 cchq_gid=3002 swap_size=2G @@ -266,10 +266,10 @@ es_a1 es_b1 [es_a1:vars] -elasticsearch_node_zone=us-west-1c +elasticsearch_node_zone=us-east-2c [es_b1:vars] -elasticsearch_node_zone=us-west-1b +elasticsearch_node_zone=us-east-2b [elasticsearch:children] es_master diff --git a/environments/backup-production/inventory.ini.j2 b/environments/backup-production/inventory.ini.j2 index c4431eb7b2..0000c4e60b 100644 --- a/environments/backup-production/inventory.ini.j2 +++ b/environments/backup-production/inventory.ini.j2 @@ -180,10 +180,10 @@ es_a1 es_b1 [es_a1:vars] -elasticsearch_node_zone=us-west-1c +elasticsearch_node_zone=us-east-2c [es_b1:vars] -elasticsearch_node_zone=us-west-1b +elasticsearch_node_zone=us-east-2b [elasticsearch:children] es_master diff --git a/environments/backup-production/public.yml b/environments/backup-production/public.yml index 67fd30e9c1..bc12efedb2 100644 --- a/environments/backup-production/public.yml +++ b/environments/backup-production/public.yml @@ -53,7 +53,7 @@ nadir_hour: 16 # pg_repack pg_repack_version: 1.4.7 -aws_region: 'us-west-1' +aws_region: 'us-east-2' filebeat_inputs: - path: "{{ log_home }}/{{ deploy_env }}-timing.log" diff --git a/environments/backup-production/terraform.yml b/environments/backup-production/terraform.yml index e3f1c7f7a0..2557d4dcc6 100644 --- a/environments/backup-production/terraform.yml +++ b/environments/backup-production/terraform.yml @@ -1,13 +1,13 @@ account_alias: commcare-backup-production terraform_version: '1.2' state_bucket: dimagi-terraform-backup -state_bucket_region: "us-west-1" -region: "us-west-1" +state_bucket_region: "us-east-2" +region: "us-east-2" environment: "bk-production" ssl_policy: 'ELBSecurityPolicy-FS-1-2-Res-2020-10' azs: - - "us-west-1b" - - "us-west-1c" + - "us-east-2b" + - "us-east-2c" az_codes: - b - c From 4a7156bdc5812a950308b655779f587beb676729 Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Wed, 25 Oct 2023 20:10:23 +0530 Subject: [PATCH 03/24] remove elasticache from terraform.yml in backup env --- environments/backup-production/terraform.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/environments/backup-production/terraform.yml b/environments/backup-production/terraform.yml index 2557d4dcc6..49af807978 100644 --- a/environments/backup-production/terraform.yml +++ b/environments/backup-production/terraform.yml @@ -263,9 +263,6 @@ internal_albs: targets: - couch_a0-bk-production -elasticache: - create: no - elasticache_cluster: create: yes cache_node_type: "cache.t3.micro" From b2337108354146466e372487e040cd085a6fbfcb Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Wed, 25 Oct 2023 20:13:38 +0530 Subject: [PATCH 04/24] remove unused cache_parameter_group from backup env --- environments/backup-production/terraform.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/environments/backup-production/terraform.yml b/environments/backup-production/terraform.yml index 49af807978..b2e08f1fe2 100644 --- a/environments/backup-production/terraform.yml +++ b/environments/backup-production/terraform.yml @@ -267,7 +267,6 @@ elasticache_cluster: create: yes cache_node_type: "cache.t3.micro" cache_engine_version: "6.x" - cache_prameter_group: "default.redis6.x" automatic_failover: true transit_encryption: false at_rest_encryption: true From b1829dde6df50355c526de0ede2e3f1de30faf75 Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Wed, 25 Oct 2023 20:30:06 +0530 Subject: [PATCH 05/24] Make backup env use the dimagi-terraform bucket --- environments/backup-production/terraform.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/environments/backup-production/terraform.yml b/environments/backup-production/terraform.yml index b2e08f1fe2..47a76c14f9 100644 --- a/environments/backup-production/terraform.yml +++ b/environments/backup-production/terraform.yml @@ -1,7 +1,7 @@ account_alias: commcare-backup-production terraform_version: '1.2' -state_bucket: dimagi-terraform-backup -state_bucket_region: "us-east-2" +state_bucket: dimagi-terraform +state_bucket_region: "us-east-1" region: "us-east-2" environment: "bk-production" ssl_policy: 'ELBSecurityPolicy-FS-1-2-Res-2020-10' From 714f96314086f6defc03894e29523aaaeb7ca3b7 Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Wed, 25 Oct 2023 20:32:09 +0530 Subject: [PATCH 06/24] update terraform version in backup env --- environments/backup-production/terraform.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/environments/backup-production/terraform.yml b/environments/backup-production/terraform.yml index 47a76c14f9..6046a7679a 100644 --- a/environments/backup-production/terraform.yml +++ b/environments/backup-production/terraform.yml @@ -1,5 +1,5 @@ account_alias: commcare-backup-production -terraform_version: '1.2' +terraform_version: '1.5' state_bucket: dimagi-terraform state_bucket_region: "us-east-1" region: "us-east-2" From f594cef04d078959b52c034d300c9b217e22e0fb Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Wed, 25 Oct 2023 21:37:58 +0530 Subject: [PATCH 07/24] update redis version in backup env --- environments/backup-production/terraform.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/environments/backup-production/terraform.yml b/environments/backup-production/terraform.yml index 6046a7679a..91d44a2b35 100644 --- a/environments/backup-production/terraform.yml +++ b/environments/backup-production/terraform.yml @@ -266,7 +266,7 @@ internal_albs: elasticache_cluster: create: yes cache_node_type: "cache.t3.micro" - cache_engine_version: "6.x" + cache_engine_version: "7.x" automatic_failover: true transit_encryption: false at_rest_encryption: true From 05950cb5563429d5724ce2c8ae2d70bbe2c6933d Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Wed, 25 Oct 2023 21:38:41 +0530 Subject: [PATCH 08/24] add us-east-2 in aws_elb_account_map --- src/commcare_cloud/terraform/modules/ga_alb_waf/main.tf | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/commcare_cloud/terraform/modules/ga_alb_waf/main.tf b/src/commcare_cloud/terraform/modules/ga_alb_waf/main.tf index 3f63590b11..5811bded24 100644 --- a/src/commcare_cloud/terraform/modules/ga_alb_waf/main.tf +++ b/src/commcare_cloud/terraform/modules/ga_alb_waf/main.tf @@ -1,11 +1,12 @@ locals { // Used in bucket policy. See - // https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-access-logs.html#access-logging-bucket-permissions + // https://docs.aws.amazon.com/elasticloadbalancing/latest/application/enable-access-logging.html#attach-bucket-policy // for more regions aws_elb_account_map = { us-east-1 = "127311923021" us-west-1 = "027434742980" ap-south-1 = "718504428378" + us-east-2 = "033677994240" } hive_prefix = "year=!{timestamp:yyyy}/month=!{timestamp:MM}/day=!{timestamp:dd}/hour=!{timestamp:HH}" From f5d2059b59dde2a58417d18263b4254d8164f43c Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Fri, 27 Oct 2023 15:29:50 +0530 Subject: [PATCH 09/24] make changes to public.yml --- environments/backup-production/public.yml | 40 ++++++++++++++++++----- 1 file changed, 31 insertions(+), 9 deletions(-) diff --git a/environments/backup-production/public.yml b/environments/backup-production/public.yml index bc12efedb2..4f80e9027b 100644 --- a/environments/backup-production/public.yml +++ b/environments/backup-production/public.yml @@ -32,8 +32,8 @@ DATADOG_TRACE: elasticsearch_endpoint: '{{ groups.elasticsearch.0 }}' elasticsearch_cluster_name: 'prodhqes-1.x' -elasticsearch_version: 2.4.6 -elasticsearch_download_sha256: 5f7e4bb792917bb7ffc2a5f612dfec87416d54563f795d6a70637befef4cfc6f. +elasticsearch_version: 5.6.16 +elasticsearch_download_sha256: 6b035a59337d571ab70cea72cc55225c027ad142fbb07fd8984e54261657c77f. elasticsearch_memory: '4096m' #elasticsearch_node_name: '???' elasticsearch_fielddata_cache_size: "40%" @@ -61,6 +61,8 @@ filebeat_inputs: - path: "{{ log_home }}/{{ deploy_env }}_commcare-nginx_error.log" tags: nginx-error +formplayer_java_version: "{{ java_17_bin_path }}/java" +formplayer_archive_time_spec: '3d' formplayer_purge_time_spec: '10d' formplayer_sensitive_data_logging: true formplayer_forward_ip_proxy: true @@ -68,7 +70,7 @@ formplayer_detailed_tags: - form_name - module_name -KSPLICE_ACTIVE: no +KSPLICE_ACTIVE: no # Don't know what this does, this is set to yes in prod run_websockets_wsgi: True @@ -88,7 +90,7 @@ couchdb2: couchdb_compaction_settings: _default: '[{db_fragmentation, "50%"}, {view_fragmentation, "50%"}, {from, "22:00"}, {to, "03:00"}]' -couchdb_version: '3.1.1' +couchdb_version: '3.3.1' couchdb_rexi_use_kill_all: 'true' couchdb2_client_max_body_size: 100M couchdb_os_process_limit: 1000 @@ -111,8 +113,8 @@ zookeeper_cluster: True TWO_FACTOR_GATEWAY_ENABLED: True -erlang: 1:25.0.4-1 -rabbitmq_version: 3.10.7-1 +erlang: 1:24.3.3-1 +rabbitmq_version: 3.10.13-1 #RabbitMQ Broker URL BROKER_URL: 'amqp://{{ AMQP_USER }}:{{ AMQP_PASSWORD }}@{{ AMQP_HOST }}:5672/{{ AMQP_NAME }};amqp://{{ AMQP_USER }}:{{ AMQP_PASSWORD }}@{{ groups.rabbitmq.0 }}:5672/{{ AMQP_NAME }}' @@ -127,7 +129,7 @@ localsettings: ALLOWED_HOSTS: - testserver - proxytest.commcarehq.org - ALLOW_MAKE_SUPERUSER_COMMAND: True + ALLOW_MAKE_SUPERUSER_COMMAND: True # This is set to True so that we can make a HQ user from shell ANALYTICS_DEBUG: False ANALYTICS_LOG_LEVEL: "warning" AUDIT_ALL_VIEWS: True @@ -151,8 +153,28 @@ localsettings: EMAIL_USE_TLS: yes ENABLE_SOFT_ASSERT_EMAILS: True ENFORCE_SSO_LOGIN: True - ELASTICSEARCH_MAJOR_VERSION: 2 + ELASTICSEARCH_MAJOR_VERSION: 5 ES_CASE_SEARCH_INDEX_NAME: "case_search_2022-10-04" + ES_XFORM_INDEX_NAME: "xforms_2023-01-27" + # Index Multiplexer Settings + ES_APPS_INDEX_MULTIPLEXED: False # swap completed + ES_CASE_SEARCH_INDEX_MULTIPLEXED: False # swap completed + ES_CASES_INDEX_MULTIPLEXED: False # swap completed + ES_DOMAINS_INDEX_MULTIPLEXED: False # swap completed + ES_FORMS_INDEX_MULTIPLEXED: False # Swap completed + ES_GROUPS_INDEX_MULTIPLEXED: False # Swap completed + ES_SMS_INDEX_MULTIPLEXED: False # Swap completed + ES_USERS_INDEX_MULTIPLEXED: False # swap completed + # Index Swap settings + ES_APPS_INDEX_SWAPPED: True + ES_CASE_SEARCH_INDEX_SWAPPED: True + ES_CASES_INDEX_SWAPPED: True + ES_DOMAINS_INDEX_SWAPPED: True + ES_FORMS_INDEX_SWAPPED: True + ES_GROUPS_INDEX_SWAPPED: True + ES_SMS_INDEX_SWAPPED: True + ES_USERS_INDEX_SWAPPED: True + # Index settings end IS_DIMAGI_ENVIRONMENT: True HQ_INSTANCE: 'backup.www' INACTIVITY_TIMEOUT: 20160 @@ -188,7 +210,7 @@ localsettings: SMS_QUEUE_ENABLED: False SUMOLOGIC_URL: "" STATIC_ROOT: - STATIC_CDN: 'https://d2wbnffibuhek0.cloudfront.net' + STATIC_CDN: 'https://d2wbnffibuhek0.cloudfront.net' # TODO: check if we need to set it STATIC_TOGGLE_STATES: mobile_ucr_linked_domain: always_enabled: From bb122adac2d990a68fabba3a376a42eea6025932 Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Fri, 27 Oct 2023 15:34:21 +0530 Subject: [PATCH 10/24] update app-processes.yml --- environments/backup-production/app-processes.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/environments/backup-production/app-processes.yml b/environments/backup-production/app-processes.yml index 6bbd725858..788d8e0c83 100644 --- a/environments/backup-production/app-processes.yml +++ b/environments/backup-production/app-processes.yml @@ -20,6 +20,7 @@ celery_processes: celery,export_download_queue,reminder_rule_queue,case_import_queue,case_rule_queue: concurrency: 1 flower: {} + beat: {} pillows: pillow_a000: @@ -44,6 +45,8 @@ pillows: num_processes: 1 LedgerToElasticsearchPillow: num_processes: 1 + SqlSMSPillow: + num_processes: 1 UpdateUserSyncHistoryPillow: num_processes: 1 UserCacheInvalidatePillow: From 27f4748e9a4489e73009ccf9a6bc0102d9704f6e Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Fri, 27 Oct 2023 20:02:53 +0530 Subject: [PATCH 11/24] update terraform.yml with values that made sense --- environments/backup-production/terraform.yml | 33 +++++++++++--------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/environments/backup-production/terraform.yml b/environments/backup-production/terraform.yml index 91d44a2b35..078587fd82 100644 --- a/environments/backup-production/terraform.yml +++ b/environments/backup-production/terraform.yml @@ -22,7 +22,7 @@ servers: az: "c" volume_size: 20 group: "control" - os: bionic + os: jammy - server_name: "djangomanage_a0-bk-production" server_instance_type: t3a.small @@ -30,7 +30,7 @@ servers: az: "c" volume_size: 20 group: "django_manage" - os: bionic + os: jammy - server_name: "web_a{i}-bk-production" server_instance_type: t3a.small @@ -39,7 +39,7 @@ servers: volume_size: 20 volume_encrypted: yes group: "hq_webworkers" - os: bionic + os: jammy count: 2 - server_name: "web_b{i}-bk-production" @@ -48,7 +48,7 @@ servers: az: "b" volume_size: 20 group: "mobile_webworkers" - os: bionic + os: jammy count: 2 server_auto_recovery: true @@ -57,7 +57,7 @@ servers: network_tier: "db-private" az: "c" group: "elasticsearch" - os: bionic + os: jammy volume_size: 20 - server_name: "esmaster_b0-bk-production" @@ -65,8 +65,9 @@ servers: network_tier: "db-private" az: "b" group: "elasticsearch" - os: bionic + os: jammy volume_size: 20 + volume_encrypted: yes # I have added it to be consistent with production - server_name: "esmaster_c0-bk-production" server_instance_type: t3a.xlarge @@ -75,12 +76,14 @@ servers: group: "elasticsearch" os: bionic volume_size: 20 + volume_encrypted: yes - server_name: "es_a1{i}-bk-production" server_instance_type: t3a.xlarge network_tier: "db-private" az: "c" volume_size: 20 + volume_encrypted: yes block_device: volume_size: 20 group: "elasticsearch" @@ -92,6 +95,7 @@ servers: network_tier: "db-private" az: "b" volume_size: 20 + volume_encrypted: yes block_device: volume_size: 20 group: "elasticsearch" @@ -108,7 +112,7 @@ servers: volume_size: 20 encrypted: yes group: "couchdb2" - os: bionic + os: bionic # should we change this? - server_name: "rabbit_a0-bk-production" server_instance_type: t3a.small @@ -117,7 +121,7 @@ servers: volume_size: 20 volume_encrypted: yes group: "rabbitmq" - os: bionic + os: jammy - server_name: "celery_a{i}-bk-production" server_instance_type: t3a.medium @@ -126,7 +130,7 @@ servers: volume_size: 20 volume_encrypted: yes group: "celery" - os: bionic + os: jammy count: 1 - server_name: "pillow_a{i}-bk-production" @@ -135,7 +139,7 @@ servers: az: "c" volume_size: 20 group: "pillowtop" - os: bionic + os: jammy count: 1 - server_name: "formplayer_a{i}-bk-production" @@ -144,7 +148,7 @@ servers: az: "c" volume_size: 20 group: "formplayer" - os: bionic + os: jammy count: 1 - server_name: "kafka_a0-bk-production" @@ -154,15 +158,16 @@ servers: volume_size: 20 volume_encrypted: no group: "kafka" - os: bionic + os: jammy - server_name: "pgbouncer_a0-bk-production" server_instance_type: t3a.small network_tier: "db-private" az: "c" volume_size: 20 + volume_encrypted: yes group: "postgresql" - os: bionic + os: jammy proxy_servers: - server_name: "proxy_a0-bk-production" @@ -171,7 +176,7 @@ proxy_servers: az: "c" volume_size: 20 group: "proxy" - os: bionic + os: jammy rds_instances: - identifier: "pgmain0-bk-production" From 746adc606be43c1e233c665d2dda4ae41e68e7af Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Fri, 27 Oct 2023 20:34:25 +0530 Subject: [PATCH 12/24] replace bionic with jammy on all the machines --- environments/backup-production/terraform.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/environments/backup-production/terraform.yml b/environments/backup-production/terraform.yml index 078587fd82..989f94d53b 100644 --- a/environments/backup-production/terraform.yml +++ b/environments/backup-production/terraform.yml @@ -74,7 +74,7 @@ servers: network_tier: "db-private" az: "c" group: "elasticsearch" - os: bionic + os: jammy volume_size: 20 volume_encrypted: yes @@ -87,7 +87,7 @@ servers: block_device: volume_size: 20 group: "elasticsearch" - os: bionic + os: jammy count: 7 - server_name: "es_b1{i}-bk-production" @@ -99,7 +99,7 @@ servers: block_device: volume_size: 20 group: "elasticsearch" - os: bionic + os: jammy count: 7 - server_name: "couch_a0-bk-production" @@ -112,7 +112,7 @@ servers: volume_size: 20 encrypted: yes group: "couchdb2" - os: bionic # should we change this? + os: j # should we change this? - server_name: "rabbit_a0-bk-production" server_instance_type: t3a.small From d37c9a101062550de951f71abb8cd5cc4c2fe45b Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Mon, 30 Oct 2023 12:35:24 +0530 Subject: [PATCH 13/24] fix typo --- environments/backup-production/terraform.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/environments/backup-production/terraform.yml b/environments/backup-production/terraform.yml index 989f94d53b..37a29c46b0 100644 --- a/environments/backup-production/terraform.yml +++ b/environments/backup-production/terraform.yml @@ -112,7 +112,7 @@ servers: volume_size: 20 encrypted: yes group: "couchdb2" - os: j # should we change this? + os: jammy - server_name: "rabbit_a0-bk-production" server_instance_type: t3a.small From bc6515cb0b1d0c6aa397a9501384046af512e512 Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Mon, 30 Oct 2023 20:36:49 +0530 Subject: [PATCH 14/24] set monitoring interval to 0 for all rds instances --- environments/backup-production/terraform.yml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/environments/backup-production/terraform.yml b/environments/backup-production/terraform.yml index 37a29c46b0..6374ef4598 100644 --- a/environments/backup-production/terraform.yml +++ b/environments/backup-production/terraform.yml @@ -184,60 +184,70 @@ rds_instances: storage: 20 multi_az: false engine_version: "14" + monitoring_interval: 0 - identifier: "pgucr0-bk-production" instance_type: db.t3.micro storage: 20 multi_az: false engine_version: "14" + monitoring_interval: 0 - identifier: "pgshard1-bk-production" instance_type: db.t3.micro storage: 20 multi_az: false engine_version: "14" + monitoring_interval: 0 - identifier: "pgshard2-bk-production" instance_type: db.t3.micro storage: 20 multi_az: false engine_version: "14" + monitoring_interval: 0 - identifier: "pgshard3-bk-production" instance_type: db.t3.micro storage: 20 multi_az: false engine_version: "14" + monitoring_interval: 0 - identifier: "pgshard4-bk-production" instance_type: db.t3.micro storage: 20 multi_az: false engine_version: "14" + monitoring_interval: 0 - identifier: "pgshard5-bk-production" instance_type: db.t3.micro storage: 20 multi_az: false engine_version: "14" + monitoring_interval: 0 - identifier: "pgsynclog0-bk-production" instance_type: db.t3.micro storage: 20 multi_az: false engine_version: "14" + monitoring_interval: 0 - identifier: "pgformplayer0-bk-production" instance_type: db.t3.micro storage: 20 multi_az: false engine_version: "14" + monitoring_interval: 0 - identifier: "pgauditcare0-bk-production" instance_type: db.t3.micro storage: 20 multi_az: false engine_version: "14" + monitoring_interval: 0 pgbouncer_nlbs: - name: pgformplayer_nlb-bk-production From ff176858177b87e7b48917ada9dc4ea6c8fed446 Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Tue, 31 Oct 2023 18:58:27 +0530 Subject: [PATCH 15/24] remove ubuntu pro from os list --- .../terraform/templates/commcarehq.tf.j2 | 4 +--- .../terraform/templates/variables.tf.j2 | 19 ------------------- .../environment/schemas/terraform.py | 2 +- 3 files changed, 2 insertions(+), 23 deletions(-) diff --git a/src/commcare_cloud/commands/terraform/templates/commcarehq.tf.j2 b/src/commcare_cloud/commands/terraform/templates/commcarehq.tf.j2 index 35e399ac3c..de8d1dbb14 100644 --- a/src/commcare_cloud/commands/terraform/templates/commcarehq.tf.j2 +++ b/src/commcare_cloud/commands/terraform/templates/commcarehq.tf.j2 @@ -130,9 +130,7 @@ module "server__{{ server_name }}" { metadata_tokens = "{{ 'required' if ec2_metadata_tokens_required else 'optional' }}" enable_cross_region_backup = {{ server_spec.enable_cross_region_backup|tojson }} -{% if server_spec.os == 'ubuntu_pro_bionic' %} - server_image = data.aws_ami.ubuntu_pro_bionic.id -{% elif server_spec.os == 'bionic' %} +{% if server_spec.os == 'bionic' %} server_image = data.aws_ami.ubuntu_bionic.id {% elif server_spec.os == 'jammy' %} server_image = data.aws_ami.ubuntu_jammy.id diff --git a/src/commcare_cloud/commands/terraform/templates/variables.tf.j2 b/src/commcare_cloud/commands/terraform/templates/variables.tf.j2 index 00a4401e94..b661cf5a1d 100644 --- a/src/commcare_cloud/commands/terraform/templates/variables.tf.j2 +++ b/src/commcare_cloud/commands/terraform/templates/variables.tf.j2 @@ -20,25 +20,6 @@ variable "openvpn_az" { default = "a" } -data "aws_ami" "ubuntu_pro_bionic" { - // should match what is on - // https://aws.amazon.com/marketplace/server/configuration?productId=fc15dd7b-2aa0-47e5-bb05-94c75950b5de - // (Product detail: https://aws.amazon.com/marketplace/pp/B0821T9RL2) - most_recent = true - - filter { - name = "name" - values = ["ubuntu-pro-server/images/hvm-ssd/ubuntu-bionic-18.04-amd64-pro-*"] - } - - filter { - name = "virtualization-type" - values = ["hvm"] - } - - owners = ["679593333241"] # Amazon Web Services -} - data "aws_ami" "ubuntu_bionic" { # Should match what is in # https://cloud-images.ubuntu.com/locator/ec2/ diff --git a/src/commcare_cloud/environment/schemas/terraform.py b/src/commcare_cloud/environment/schemas/terraform.py index fb687fba93..5ace854bb4 100644 --- a/src/commcare_cloud/environment/schemas/terraform.py +++ b/src/commcare_cloud/environment/schemas/terraform.py @@ -117,7 +117,7 @@ class ServerConfig(jsonobject.JsonObject): volume_encrypted = jsonobject.BooleanProperty(default=True, required=True) block_device = jsonobject.ObjectProperty(lambda: BlockDevice, default=None) group = jsonobject.StringProperty() - os = jsonobject.StringProperty(required=True, choices=['bionic', 'ubuntu_pro_bionic', 'jammy']) + os = jsonobject.StringProperty(required=True, choices=['bionic', 'jammy']) server_auto_recovery = jsonobject.BooleanProperty(default=False) enable_cross_region_backup = jsonobject.BooleanProperty(default=False) count = jsonobject.IntegerProperty(default=None) From b66895c33ac02a8f33117c922512bc4fc21a58b3 Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Thu, 2 Nov 2023 12:42:30 +0530 Subject: [PATCH 16/24] run aws-fill-inventory --- .../backup-production/aws-resources.yml | 164 +++++++++--------- environments/backup-production/inventory.ini | 96 +++++----- environments/backup-production/terraform.yml | 2 +- 3 files changed, 131 insertions(+), 131 deletions(-) diff --git a/environments/backup-production/aws-resources.yml b/environments/backup-production/aws-resources.yml index 36392d0457..2b5b5847c7 100644 --- a/environments/backup-production/aws-resources.yml +++ b/environments/backup-production/aws-resources.yml @@ -1,82 +1,82 @@ -celery_a000-bk-production: 10.212.11.91 -celery_a000-bk-production.instance_id: i-07c97f80ee9e33c17 -control_a0-bk-production: 10.212.11.140 -control_a0-bk-production.instance_id: i-07a00581fbdc8db25 -couch_a0-bk-production: 10.212.41.177 -couch_a0-bk-production.instance_id: i-03512491f4cf96829 -couch_alb-bk-production: internal-couch-alb-bk-production-1743768862.us-east-2.elb.amazonaws.com -djangomanage_a0-bk-production: 10.212.11.144 -djangomanage_a0-bk-production.instance_id: i-0234c0c30da41a83e -efs_bk-production-efs: fs-0f73c7bbf4c2e3bff.efs.us-east-2.amazonaws.com -es_a1000-bk-production: 10.212.41.145 -es_a1000-bk-production.instance_id: i-09067f28237cd067f -es_a1001-bk-production: 10.212.41.136 -es_a1001-bk-production.instance_id: i-0738eaa715933f3f6 -es_a1002-bk-production: 10.212.41.47 -es_a1002-bk-production.instance_id: i-00242779baebe6937 -es_a1003-bk-production: 10.212.41.7 -es_a1003-bk-production.instance_id: i-00718d2228c1559df -es_a1004-bk-production: 10.212.41.86 -es_a1004-bk-production.instance_id: i-060785cd33304659d -es_a1005-bk-production: 10.212.41.254 -es_a1005-bk-production.instance_id: i-0dc33fec88310a775 -es_a1006-bk-production: 10.212.41.194 -es_a1006-bk-production.instance_id: i-0542ceec697a753a7 -es_b1000-bk-production: 10.212.40.93 -es_b1000-bk-production.instance_id: i-01e8592673ff22cc5 -es_b1001-bk-production: 10.212.40.177 -es_b1001-bk-production.instance_id: i-0db9777476b240aea -es_b1002-bk-production: 10.212.40.220 -es_b1002-bk-production.instance_id: i-0db460fbd2c692696 -es_b1003-bk-production: 10.212.40.181 -es_b1003-bk-production.instance_id: i-00fee3d995921a293 -es_b1004-bk-production: 10.212.40.253 -es_b1004-bk-production.instance_id: i-0b1f45d6d07d80e74 -es_b1005-bk-production: 10.212.40.228 -es_b1005-bk-production.instance_id: i-0ac0fb9549279c42e -es_b1006-bk-production: 10.212.40.68 -es_b1006-bk-production.instance_id: i-031446cda71d239ab -esmaster_a0-bk-production: 10.212.41.118 -esmaster_a0-bk-production.instance_id: i-0a42357d69363671f -esmaster_b0-bk-production: 10.212.40.162 -esmaster_b0-bk-production.instance_id: i-00258f79edc01798b -esmaster_c0-bk-production: 10.212.41.170 -esmaster_c0-bk-production.instance_id: i-0949dc4cc7faf9670 -formplayer-efs: fs-0328bdaad37639dcf.efs.us-east-2.amazonaws.com -formplayer_a000-bk-production: 10.212.11.40 -formplayer_a000-bk-production.instance_id: i-07e869020802e17ce -frontend_alb-bk-production: internal-frontend-alb-bk-production-2099219371.us-east-2.elb.amazonaws.com -kafka_a0-bk-production: 10.212.41.21 -kafka_a0-bk-production.instance_id: i-035f64b1fdd5777a8 -pgauditcare0-bk-production: pgauditcare0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com -pgbouncer_a0-bk-production: 10.212.41.111 -pgbouncer_a0-bk-production.instance_id: i-0bb3a4d4eb539c86e -pgformplayer0-bk-production: pgformplayer0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com -pgformplayer_nlb-bk-production: pgformplayer-nlb-bk-production-0564368cae6f3a6f.elb.us-east-2.amazonaws.com -pgmain0-bk-production: pgmain0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com -pgmain_nlb-bk-production: pgmain-nlb-bk-production-a8225d9923521f9d.elb.us-east-2.amazonaws.com -pgshard1-bk-production: pgshard1-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com -pgshard2-bk-production: pgshard2-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com -pgshard3-bk-production: pgshard3-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com -pgshard4-bk-production: pgshard4-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com -pgshard5-bk-production: pgshard5-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com -pgshard_nlb-bk-production: pgshard-nlb-bk-production-ff33a8d7fc7a4c2a.elb.us-east-2.amazonaws.com -pgsynclog0-bk-production: pgsynclog0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com -pgsynclogs_nlb-bk-production: pgsynclogs-nlb-bk-production-7158341afa0269b2.elb.us-east-2.amazonaws.com -pgucr0-bk-production: pgucr0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com -pgucr_nlb-bk-production: pgucr-nlb-bk-production-4ea5b9bba4e9f8d5.elb.us-east-2.amazonaws.com -pillow_a000-bk-production: 10.212.11.24 -pillow_a000-bk-production.instance_id: i-07cb1ad00eff0a07c -proxy_a0-bk-production: 10.212.21.6 -proxy_a0-bk-production.instance_id: i-0801717ff2244aa9e -proxy_a0-bk-production.public_ip: 13.57.194.84 -rabbit_a0-bk-production: 10.212.41.32 -rabbit_a0-bk-production.instance_id: i-0f6d3c27cf59e92a0 -web_a000-bk-production: 10.212.11.196 -web_a000-bk-production.instance_id: i-02a25b423cce814ee -web_a001-bk-production: 10.212.11.159 -web_a001-bk-production.instance_id: i-0830723f088ba502e -web_b000-bk-production: 10.212.10.132 -web_b000-bk-production.instance_id: i-01e22d2b31ca7850c -web_b001-bk-production: 10.212.10.121 -web_b001-bk-production.instance_id: i-0a61eef0ad48497fc +celery_a000-bk-production: 10.212.11.21 +celery_a000-bk-production.instance_id: i-014652d6e4e15f4d0 +control_a0-bk-production: 10.212.11.99 +control_a0-bk-production.instance_id: i-08f5a14c78a8149d1 +couch_a0-bk-production: 10.212.41.52 +couch_a0-bk-production.instance_id: i-00f7cb989ae65337e +couch_alb-bk-production: internal-couch-alb-bk-production-570726758.us-east-2.elb.amazonaws.com +djangomanage_a0-bk-production: 10.212.11.234 +djangomanage_a0-bk-production.instance_id: i-0c01c56d272bedd4c +efs_bk-production-efs: fs-0ee852a97ec443b8c.efs.us-east-2.amazonaws.com +es_a1000-bk-production: 10.212.41.70 +es_a1000-bk-production.instance_id: i-01d058b240a0b663e +es_a1001-bk-production: 10.212.41.217 +es_a1001-bk-production.instance_id: i-086669620d868c894 +es_a1002-bk-production: 10.212.41.75 +es_a1002-bk-production.instance_id: i-0727214460d04cd6f +es_a1003-bk-production: 10.212.41.30 +es_a1003-bk-production.instance_id: i-078a98e8ba5c724f4 +es_a1004-bk-production: 10.212.41.224 +es_a1004-bk-production.instance_id: i-001feba4103a8fcc8 +es_a1005-bk-production: 10.212.41.132 +es_a1005-bk-production.instance_id: i-0bfad15df64af1f12 +es_a1006-bk-production: 10.212.41.168 +es_a1006-bk-production.instance_id: i-0e96ea7207651f2a0 +es_b1000-bk-production: 10.212.40.245 +es_b1000-bk-production.instance_id: i-0d9d95077b59be7cf +es_b1001-bk-production: 10.212.40.68 +es_b1001-bk-production.instance_id: i-049c2ea43e3052c7d +es_b1002-bk-production: 10.212.40.114 +es_b1002-bk-production.instance_id: i-003d309890ba2ce0b +es_b1003-bk-production: 10.212.40.15 +es_b1003-bk-production.instance_id: i-0843e919706a66004 +es_b1004-bk-production: 10.212.40.90 +es_b1004-bk-production.instance_id: i-0b3ee03210106b082 +es_b1005-bk-production: 10.212.40.80 +es_b1005-bk-production.instance_id: i-0c874383efa695a27 +es_b1006-bk-production: 10.212.40.86 +es_b1006-bk-production.instance_id: i-0df01841987ebe251 +esmaster_a0-bk-production: 10.212.41.26 +esmaster_a0-bk-production.instance_id: i-0501db0ab5efd51b5 +esmaster_b0-bk-production: 10.212.40.20 +esmaster_b0-bk-production.instance_id: i-052b29e399439e9b3 +esmaster_c0-bk-production: 10.212.41.188 +esmaster_c0-bk-production.instance_id: i-03ced389d44616449 +formplayer-efs: fs-0c22e45dbdace6a92.efs.us-east-2.amazonaws.com +formplayer_a000-bk-production: 10.212.11.118 +formplayer_a000-bk-production.instance_id: i-0d5db6e9b846db617 +frontend_alb-bk-production: internal-frontend-alb-bk-production-1008771324.us-east-2.elb.amazonaws.com +kafka_a0-bk-production: 10.212.41.29 +kafka_a0-bk-production.instance_id: i-0c32c31029d29159b +pgauditcare0-bk-production: pgauditcare0-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com +pgbouncer_a0-bk-production: 10.212.41.144 +pgbouncer_a0-bk-production.instance_id: i-0ae4b8dc862b9a907 +pgformplayer0-bk-production: pgformplayer0-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com +pgformplayer_nlb-bk-production: pgformplayer-nlb-bk-production-f797fb3fde805f94.elb.us-east-2.amazonaws.com +pgmain0-bk-production: pgmain0-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com +pgmain_nlb-bk-production: pgmain-nlb-bk-production-8446f665b914487d.elb.us-east-2.amazonaws.com +pgshard1-bk-production: pgshard1-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com +pgshard2-bk-production: pgshard2-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com +pgshard3-bk-production: pgshard3-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com +pgshard4-bk-production: pgshard4-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com +pgshard5-bk-production: pgshard5-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com +pgshard_nlb-bk-production: pgshard-nlb-bk-production-bfb526d091fa5582.elb.us-east-2.amazonaws.com +pgsynclog0-bk-production: pgsynclog0-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com +pgsynclogs_nlb-bk-production: pgsynclogs-nlb-bk-production-61fafd35b64450de.elb.us-east-2.amazonaws.com +pgucr0-bk-production: pgucr0-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com +pgucr_nlb-bk-production: pgucr-nlb-bk-production-76a67cdc0fe5a956.elb.us-east-2.amazonaws.com +pillow_a000-bk-production: 10.212.11.49 +pillow_a000-bk-production.instance_id: i-0754a06433fbd5e05 +proxy_a0-bk-production: 10.212.21.167 +proxy_a0-bk-production.instance_id: i-0b40a4c2c5a349d3a +proxy_a0-bk-production.public_ip: 3.16.89.228 +rabbit_a0-bk-production: 10.212.41.130 +rabbit_a0-bk-production.instance_id: i-0dc29b125d34a9e29 +web_a000-bk-production: 10.212.11.97 +web_a000-bk-production.instance_id: i-0bdaa6e7653c00336 +web_a001-bk-production: 10.212.11.102 +web_a001-bk-production.instance_id: i-0fac37441378cbf99 +web_b000-bk-production: 10.212.10.67 +web_b000-bk-production.instance_id: i-0c18ccbff05858df4 +web_b001-bk-production: 10.212.10.78 +web_b001-bk-production.instance_id: i-091ae5ffe10ee0909 diff --git a/environments/backup-production/inventory.ini b/environments/backup-production/inventory.ini index aaeb314aa1..c368eed66c 100644 --- a/environments/backup-production/inventory.ini +++ b/environments/backup-production/inventory.ini @@ -1,21 +1,21 @@ [proxy_a0] -10.212.21.6 hostname=proxy-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0801717ff2244aa9e root_encryption_mode=aws +10.212.21.167 hostname=proxy-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0b40a4c2c5a349d3a root_encryption_mode=aws [proxy:children] proxy_a0 [web_a000] -10.212.11.196 hostname=web-a000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-02a25b423cce814ee root_encryption_mode=aws +10.212.11.97 hostname=web-a000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0bdaa6e7653c00336 root_encryption_mode=aws [web_a001] -10.212.11.159 hostname=web-a001-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0830723f088ba502e root_encryption_mode=aws +10.212.11.102 hostname=web-a001-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0fac37441378cbf99 root_encryption_mode=aws [web_a:children] web_a000 web_a001 [web_b000] -10.212.10.132 hostname=web-b000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-01e22d2b31ca7850c root_encryption_mode=aws +10.212.10.67 hostname=web-b000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0c18ccbff05858df4 root_encryption_mode=aws [web_b001] -10.212.10.121 hostname=web-b001-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0a61eef0ad48497fc root_encryption_mode=aws +10.212.10.78 hostname=web-b001-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-091ae5ffe10ee0909 root_encryption_mode=aws [web_b:children] web_b000 web_b001 @@ -40,55 +40,55 @@ mobile_webworkers swap_size=2G [pgbouncer_a0] -10.212.41.111 hostname=pgbouncer-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0bb3a4d4eb539c86e root_encryption_mode=aws pgbouncer_processes=2 swap_size=2G +10.212.41.144 hostname=pgbouncer-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0ae4b8dc862b9a907 root_encryption_mode=aws pgbouncer_processes=2 swap_size=2G [rds_pgmain0] -pgmain0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgmain0-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com [rds_pgformplayer0] -pgformplayer0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgformplayer0-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com [rds_pgucr0] -pgucr0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgucr0-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com [rds_pgshard1] -pgshard1-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgshard1-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com [rds_pgshard2] -pgshard2-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgshard2-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com [rds_pgshard3] -pgshard3-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgshard3-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com [rds_pgshard4] -pgshard4-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgshard4-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com [rds_pgshard5] -pgshard5-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgshard5-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com [rds_pgsynclog0] -pgsynclog0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgsynclog0-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com [rds_pgauditcare0] -pgauditcare0-bk-production.c91guuasbtml.us-east-2.rds.amazonaws.com +pgauditcare0-bk-production.czikvdpwvdww.us-east-2.rds.amazonaws.com [pgformplayer_nlb] -pgformplayer-nlb-bk-production-0564368cae6f3a6f.elb.us-east-2.amazonaws.com +pgformplayer-nlb-bk-production-f797fb3fde805f94.elb.us-east-2.amazonaws.com [pgmain_nlb] -pgmain-nlb-bk-production-a8225d9923521f9d.elb.us-east-2.amazonaws.com +pgmain-nlb-bk-production-8446f665b914487d.elb.us-east-2.amazonaws.com [pgucr_nlb] -pgucr-nlb-bk-production-4ea5b9bba4e9f8d5.elb.us-east-2.amazonaws.com +pgucr-nlb-bk-production-76a67cdc0fe5a956.elb.us-east-2.amazonaws.com [pgsynclogs_nlb] -pgsynclogs-nlb-bk-production-7158341afa0269b2.elb.us-east-2.amazonaws.com +pgsynclogs-nlb-bk-production-61fafd35b64450de.elb.us-east-2.amazonaws.com [pgshard_nlb] -pgshard-nlb-bk-production-ff33a8d7fc7a4c2a.elb.us-east-2.amazonaws.com +pgshard-nlb-bk-production-bfb526d091fa5582.elb.us-east-2.amazonaws.com [couch_alb] -internal-couch-alb-bk-production-1743768862.us-east-2.elb.amazonaws.com +internal-couch-alb-bk-production-570726758.us-east-2.elb.amazonaws.com [remote_postgresql:children] rds_pgmain0 @@ -124,7 +124,7 @@ pgshard_nlb couch_alb [rabbit_a0] -10.212.41.32 hostname=rabbit-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0f6d3c27cf59e92a0 root_encryption_mode=aws +10.212.41.130 hostname=rabbit-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0dc29b125d34a9e29 root_encryption_mode=aws [rabbitmq:children] rabbit_a0 @@ -133,7 +133,7 @@ rabbit_a0 swap_size=2G [kafka_a0] -10.212.41.21 hostname=kafka-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-035f64b1fdd5777a8 kafka_broker_id=1 zookeeper_server_id=2 +10.212.41.29 hostname=kafka-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0c32c31029d29159b kafka_broker_id=1 zookeeper_server_id=2 [zookeeper:children] kafka_a0 @@ -145,7 +145,7 @@ kafka_a0 swap_size=2G [celery_a000] -10.212.11.91 hostname=celery-a000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-07c97f80ee9e33c17 root_encryption_mode=aws +10.212.11.21 hostname=celery-a000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-014652d6e4e15f4d0 root_encryption_mode=aws [celery_a:children] celery_a000 @@ -156,7 +156,7 @@ celery_a swap_size=8G [pillow_a000] -10.212.11.24 hostname=pillow-a000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-07cb1ad00eff0a07c root_encryption_mode=aws +10.212.11.49 hostname=pillow-a000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0754a06433fbd5e05 root_encryption_mode=aws [pillow_a:children] pillow_a000 @@ -167,7 +167,7 @@ pillow_a swap_size=2G [formplayer_a000] -10.212.11.40 hostname=formplayer-a000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-07e869020802e17ce root_encryption_mode=aws +10.212.11.118 hostname=formplayer-a000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0d5db6e9b846db617 root_encryption_mode=aws [formplayer_a:children] formplayer_a000 @@ -175,7 +175,7 @@ formplayer_a000 formplayer_a [formplayer:vars] -formplayer_efs_dns=fs-0328bdaad37639dcf.efs.us-east-2.amazonaws.com:/ +formplayer_efs_dns=fs-0c22e45dbdace6a92.efs.us-east-2.amazonaws.com:/ cchq_uid=3002 cchq_gid=3002 swap_size=2G @@ -198,19 +198,19 @@ pillowtop webworkers [es_a1000] -10.212.41.145 hostname=es-a1000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-09067f28237cd067f datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +10.212.41.70 hostname=es-a1000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-01d058b240a0b663e datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_a1001] -10.212.41.136 hostname=es-a1001-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0738eaa715933f3f6 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +10.212.41.217 hostname=es-a1001-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-086669620d868c894 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_a1002] -10.212.41.47 hostname=es-a1002-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-00242779baebe6937 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +10.212.41.75 hostname=es-a1002-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0727214460d04cd6f datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_a1003] -10.212.41.7 hostname=es-a1003-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-00718d2228c1559df datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +10.212.41.30 hostname=es-a1003-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-078a98e8ba5c724f4 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_a1004] -10.212.41.86 hostname=es-a1004-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-060785cd33304659d datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +10.212.41.224 hostname=es-a1004-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-001feba4103a8fcc8 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_a1005] -10.212.41.254 hostname=es-a1005-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0dc33fec88310a775 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +10.212.41.132 hostname=es-a1005-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0bfad15df64af1f12 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_a1006] -10.212.41.194 hostname=es-a1006-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0542ceec697a753a7 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +10.212.41.168 hostname=es-a1006-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0e96ea7207651f2a0 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_a1:children] es_a1000 es_a1001 @@ -221,19 +221,19 @@ es_a1005 es_a1006 [es_b1000] -10.212.40.93 hostname=es-b1000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-01e8592673ff22cc5 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +10.212.40.245 hostname=es-b1000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0d9d95077b59be7cf datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_b1001] -10.212.40.177 hostname=es-b1001-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0db9777476b240aea datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +10.212.40.68 hostname=es-b1001-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-049c2ea43e3052c7d datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_b1002] -10.212.40.220 hostname=es-b1002-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0db460fbd2c692696 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +10.212.40.114 hostname=es-b1002-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-003d309890ba2ce0b datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_b1003] -10.212.40.181 hostname=es-b1003-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-00fee3d995921a293 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +10.212.40.15 hostname=es-b1003-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0843e919706a66004 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_b1004] -10.212.40.253 hostname=es-b1004-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0b1f45d6d07d80e74 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +10.212.40.90 hostname=es-b1004-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0b3ee03210106b082 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_b1005] -10.212.40.228 hostname=es-b1005-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0ac0fb9549279c42e datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +10.212.40.80 hostname=es-b1005-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0c874383efa695a27 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_b1006] -10.212.40.68 hostname=es-b1006-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-031446cda71d239ab datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +10.212.40.86 hostname=es-b1006-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0df01841987ebe251 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_b1:children] es_b1000 es_b1001 @@ -244,13 +244,13 @@ es_b1005 es_b1006 [esmaster_a0] -10.212.41.118 hostname=esmaster-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0a42357d69363671f root_encryption_mode=aws elasticsearch_node_name=esmaster_a0 +10.212.41.26 hostname=esmaster-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0501db0ab5efd51b5 root_encryption_mode=aws elasticsearch_node_name=esmaster_a0 [esmaster_b0] -10.212.40.162 hostname=esmaster-b0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-00258f79edc01798b root_encryption_mode=aws elasticsearch_node_name=esmaster_b0 +10.212.40.20 hostname=esmaster-b0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-052b29e399439e9b3 root_encryption_mode=aws elasticsearch_node_name=esmaster_b0 [esmaster_c0] -10.212.41.170 hostname=esmaster-c0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0949dc4cc7faf9670 root_encryption_mode=aws elasticsearch_node_name=esmaster_c0 +10.212.41.188 hostname=esmaster-c0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-03ced389d44616449 root_encryption_mode=aws elasticsearch_node_name=esmaster_c0 [es_master:children] esmaster_a0 @@ -279,7 +279,7 @@ es_data swap_size=2G [couch_a0] -10.212.41.177 hostname=couch-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-03512491f4cf96829 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws +10.212.41.52 hostname=couch-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-00f7cb989ae65337e datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [couchdb2:children] couch_a0 @@ -294,7 +294,7 @@ couch_alb couch_alb [control_a0] -10.212.11.140 hostname=control-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-07a00581fbdc8db25 root_encryption_mode=aws +10.212.11.99 hostname=control-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-08f5a14c78a8149d1 root_encryption_mode=aws [control:children] control_a0 @@ -303,7 +303,7 @@ control_a0 swap_size=2G [djangomanage_a0] -10.212.11.144 hostname=djangomanage-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0234c0c30da41a83e root_encryption_mode=aws +10.212.11.234 hostname=djangomanage-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0c01c56d272bedd4c root_encryption_mode=aws [django_manage:children] djangomanage_a0 diff --git a/environments/backup-production/terraform.yml b/environments/backup-production/terraform.yml index 6374ef4598..0c965fd1bf 100644 --- a/environments/backup-production/terraform.yml +++ b/environments/backup-production/terraform.yml @@ -281,7 +281,7 @@ internal_albs: elasticache_cluster: create: yes cache_node_type: "cache.t3.micro" - cache_engine_version: "7.x" + cache_engine_version: "7.0" automatic_failover: true transit_encryption: false at_rest_encryption: true From f5d22729eb72f96ffcc1c7209c1b2e335357c254 Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Fri, 10 Nov 2023 14:23:54 +0530 Subject: [PATCH 17/24] add defaults for route table --- .../terraform/modules/network/main.tf | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/src/commcare_cloud/terraform/modules/network/main.tf b/src/commcare_cloud/terraform/modules/network/main.tf index da01004d50..56b992d1c5 100644 --- a/src/commcare_cloud/terraform/modules/network/main.tf +++ b/src/commcare_cloud/terraform/modules/network/main.tf @@ -98,7 +98,16 @@ resource "aws_route_table" "private" { vpc_id = aws_vpc.main.id dynamic "route" { - for_each = var.external_routes + for_each = concat( + tolist([ + tomap({ + cidr_block = "0.0.0.0/0", + nat_gateway_id = aws_nat_gateway.main.id, + }), + ]), + var.external_routes, + ) + content { # TF-UPGRADE-TODO: The automatic upgrade tool can't predict # which keys might be set in maps assigned here, so it has @@ -129,7 +138,15 @@ resource "aws_route_table" "public" { vpc_id = aws_vpc.main.id dynamic "route" { - for_each = var.external_routes + for_each = concat( + tolist([ + tomap({ + cidr_block = "0.0.0.0/0", + "gateway_id" = aws_internet_gateway.main.id, + }), + ]), + var.external_routes, + ) content { # TF-UPGRADE-TODO: The automatic upgrade tool can't predict # which keys might be set in maps assigned here, so it has From 8536ba8aba98d50623676ac8900cc30ae1869a9e Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Mon, 13 Nov 2023 09:38:18 +0000 Subject: [PATCH 18/24] updated local hosts --- environments/backup-production/known_hosts | 186 ++++++++++----------- 1 file changed, 93 insertions(+), 93 deletions(-) diff --git a/environments/backup-production/known_hosts b/environments/backup-production/known_hosts index e02572d0d3..8b6befecba 100644 --- a/environments/backup-production/known_hosts +++ b/environments/backup-production/known_hosts @@ -1,93 +1,93 @@ -10.212.10.121 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPE7X02zITQ93h97+sT0LIhjEaKGhDdxySriCzcNvrzZtyTn+Q1dJdV97YiKSugEdIJkT5izgbp9Ipp3xoVSZLs= -10.212.10.121 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIvCaGMHRM91LTlkEWmrpxkILDvCME1VFZZq+KWg8WLX -10.212.10.121 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC7XskrheyxkEVyF0cGD4MJDsyNS68bDTxEyMs45nYOhMDeidstOYX//hPfZNsTX8+uxBIeZaX8/eod+lGqI8ml4fQQGjWaUdYstLU9hrbHUXNWDfaim5mytkxKaq3xsyGGQgkaw/T/nu581vBL9s3btiIqc+t44iofYzu/TwLWEL0UYRNSqw3A4S7Sd1oRsocxTaq5u7gmC+DlMyyh+MmoqvfMQGzB9QQN7qcXSiXp0qaOnHFAjtjY1yRm9KukIyjoW/pjQEcWF3XyHIvxDPtEfDkvyROBwvPQfWpJVo20z7aB3ggNgeEFPVBrAP92pN9zF+HfyZcPdtJ/nxQ+7Jsd -10.212.10.132 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBN9pFM++wPDcO7CwLiPF1y+Jp1FDzni+cdZDG9FOTYvTiE0rPtO4bvgrXN8fcjOWYpjrPnAMLADGlMMuh0QmXh0= -10.212.10.132 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAID/c9kpTakabNBxHQAGRrQ0Pbu+k/DW/ydAO5S3DKcfp -10.212.10.132 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC2OlkdQmfPF3/fw/+G1pNdy20siOJGwe80RYlX3Il6dR/crQ5JL8yLy+1owpZPEW+xHbbzbZwJG26FT1rb0MnakRGN+CrYLpVcUgu/vRxmw6C9efsvWmqHQv8H1C3e+fNf4AbPVb7+eu7mw3wDi5vgV8ztjUSWNuKbONGkw48zMLRXIzvi2GCQPImG3qkDJsqId5230ZFDD8y1rKgHQJLzxFNgGLS2ni2xV+IG8cUhv6Z6tlNyhK8CvvwGy8MOaSIlCYsgtQaBiz1y3ZaZOpG9IYfVS/OAsrCwd+l9wcqVyDLXu0LLbbkQIagVozaYcI39vj0M15Qv6ZU64IowVEbT -10.212.11.140 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBI89QHIovYArbJoha7Cw0Bi5O3dpbPzBoZIlz+TK2+CKAsFG9wgX+aSyl+u8ArLOkc99SKc8WvVTId+Ahv7odqo= -10.212.11.140 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILJq3Yj2TEuD0EEIbrPiZc8GEKP3qZXlZN41aNYxMtPI -10.212.11.140 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCfTOjURDgozGRLw2D3gYn102YBQ7ogNHFgNQC10V/imTdMOHsCFG+Cez3p+jw2xqlHm9kuQI476prTTdWStYIJMKS2k+dtBeJitXGkOGExzt32ODzlFrewvzcUflbwpv0KPoW4UKs9gDp3vZ2jSWXl6bt3llLuz5mn56CxVLaAG5Eq9A5nhXC2NquRFVvOXW4fAlGCUmxmjujPbIVdlL2tXf8jtcoDU8+K1o6PMtC6gaZHkcPrCF7mLqiH+NUZN6wSX+zFMaankUncwPXS/m4O6VgYajQSNcp6TwYsl3080+MNQbS0O9bsIj/5My3xXnOHgMYVuA+vzv58FpntmH1t -10.212.11.144 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBA01SJiXsVYJcDWZiZJue+bVO47PAp9jNNvGq4hjvIU1SkalZGLLrug6FpvvN7WX4AFIyCMJnXjp2mPP0FPckhI= -10.212.11.144 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKMqjwplCX9CJXdUHt+t0d5f0lFCrPsAJZa3mLTwc1cT -10.212.11.144 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDiXRaf2Bs8eCKPsCB707dhcfLzjjzA7T9LPSkzGF89B3qASFGeqPnyeqh+/SmsMRfRIWEgRXdhu/S5TSNyi5wRovGdVhKELOgyEbjFM8nZw8Y+L6gVtk/G5VXb0VnPWnD+onrsj2xafgVy9lVcddKnfXENTPRYpHCzDI4XXC8ehn6si6+yX442JX66NYrG9qidYN1TSIJkG7TqdinIW3bo3wbmT3Wglvmaj5+4xLj5vtYVlQFOo9l5gSeWbtVhVm+jtiv1dWkq63ShJSK6sNX6y5MDe8WoAPkxebg3nwBek+cs70/+iDUHj4bBHGZnetji/EBI1A6LmZV410UL0Ocv -10.212.11.159 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBFodDa8+QOm/JuQGZ5loEho4TGcEVFdzskq8Q8rMgfkaQJ43sVbzE/gbKDAMWcyUsi3Uc5rMMu4RtssRQ6CDKN4= -10.212.11.159 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPhhZ+053GrR0ieIYUaueFcheOupC54GLhNoYR1xE2w5 -10.212.11.159 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDGidj34y2UB3j/ZcByAOYktZwo6uUzp5J2X+WMQ7ea2YFCBt0BJ2AdSvdbhHcaZqTZYWB+Wswdke3R/1BJWT5//+kuZgVIS1pIJIZPtTcAWNi4vfdmN1tK6PfLFxrkG2noUYLHYK8zZkLbTPA8WAglJEJ1YtVUrpL9Ttx2JEsFAiKL0YDXuZUbTExzJl1xSmBrMqd+fEM1wgPXcGh75BgO6sDpZLi+4Ghv4oeX1iMOYn4MIElOgnG7vKllJm+sOWfrU+g/b1T7zUlKP9hX1dpJPYVKra+frl1abkAHC4pYRdXc6G3Vlhsy4JX9NQCuiQCjbf46YOVSdc/bngfMxA/l -10.212.11.196 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBOUE7AinVQ3g3yvg+YDzxXasbGl6Nw5+F5yPsIXsaAMccEmHp2cGtKiIBuOqw618hqCeGK0m+L+/RHxM2kVjmqI= -10.212.11.196 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICIEiSmnRTsZO6uPzWRQCVazXz9/tVZ6/OLN1a/uLEEB -10.212.11.196 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC9Np7o1xvePW7YlybtQw4J8Bg8R0SDztALF8Ef9U7qUpwhrT5JAyJheDfUoUxLrD4oGftrQyUVaB99AWEjSbgPe3O7E7XZWpvKCHM9X2q1NqMAzTwM9L5lyA3gny5dGhAeUf87sXoh5W9oghMNv2PWwSU80Iq0Uo+zjasfJ+1B8LGrifhmCDQeC2pHdVK9nAg6MeYij3rJaGTNLamHQLnGEr2X065A7gcAaqp45kCcnNZo95QkgUJjcYnVrFMxVn1w7KpTpe0/1mGxmixJbzfGMScflMANHxq8LDyw2h8WZuUPP0YchVRHt0a20ahFziUbohtGNY/+9D2kP/T1nQk1 -10.212.11.24 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCOsMWAiCEP+32R6NcZLKD584xVuftXxImqUvs8KuxGLzaTb8xNaM2oa8u5aHNIoCpU6jAli4d9PQBYrskkzDXk= -10.212.11.24 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIO9KMCio9MhXoWIVAfH1/QISL1Xetyk4eHT3hMHWFflQ -10.212.11.24 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDCThFXirJGJhchTalPn/nYZf2Jblq64uk4YDx10NwVoMfM7vxFK3GFMhr8wcwniCMtXA+7ZDyXwp5J4IWGKbowmLFQ62QVRzXNRd9wl8VwpQBlmni+p8OAS3U0m5lwbuW3cVwaqyzdlFS6qfKGmZkgAT8HSlC/xXSy4Pql43s1DGqMrEeU+1OAQ5Q0EMLqC7kL6yiOp3YvgnKoXuAhyrALI3G+0wZOTN/h/p3UtSeQztk+fVNcdTRTKxWNvVDhaULUbTrWqimKEIRy58XwbQY1rRr9wn+Ma6z+Kx/VU86l7ThzWee4SzY5fr1RFTOzkpJAt2RAigEZaFFuUhvItLIl -10.212.11.40 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJvlCCvV2NwnpJrMeEg6DcHQ+eHhC9F3Rt1FNg7KzxUYE6+3/aBwnnyr6ch+sxkgTXJKSDnIlMCU8CAJxSTltsE= -10.212.11.40 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINTTQoFwYVMbTw4cBR1rbMF7sB6iho0+/sa85QUKwLAv -10.212.11.40 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDTIIh3FKYAxxONqnrh4TcPQ0NqkPJ+PghSuNj5uyRRCx99iScw+wJovyGLYSKlzbbR0bSEH9mpIk/Wh9tSCXjDpAOSOYWIpZ+BVb5wmE5CHLkP+ohVLdRQfEditLKXTPWX+A/lDPJW6XzwlD/MT6db/36ianle6+lUdaQZpWzuOsmXvZNAS7aFTHia97GXEY5a+qwyD9qLISWwjI4DoEE3ur5RyopFY5BtBgDqOP3LIe0Pqe1/9hIAgoMQpjabGeN6AHJnIBmrrKBcX2aQH8r9PTksTmi9QxlewTzt7eVTUsDFicGarNFCd+Ix4w6ZxB5ZSjy/dbvRcxm5cunkcuET -10.212.11.91 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBGSfn6hMOxqlMZ4/oZruJL9uWsqnHYaONzvVqkL4sgkY5xqM7mCRim+82AnbN9hwoNzWa4al8Vq6cmrt9i0nJSA= -10.212.11.91 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHkYaDHn3EReae7LEacWShAHHrPbdmjogYXFlh+vegad -10.212.11.91 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCqrtmhzDAp2KROa8gLxrqDY7M72oAwmG/948gERnb4G4sVMOWL03JvmrpvUY5prFoGdxYLPkn5c75cRrA7n39njWCX1+BIBxNMNzi+VEwjWB41IUV57y+mVLTwvUHwJxZgCP0+0yBlx/CZ6bh7OBaPoPe4uhQRRA7fyTU8/3zxbMQedPob814yIhx92NHRFiQqFanTWPxnu1At/p1h3ttoGSVdkpxJGdk5qanVG3NaT9FcB3F6nNTo8OJSGi2x+GxnBuKZkfiX4X9qrwVVim7h17tewyCDndzJlpuy2PcmOK7BFoLsGMEAeV+Dnwt0qk2or6OawrB7GGxBYVc7dJu3 -10.212.21.6 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBLixlDgPEBrE7I8MPd9O+DIU21AZ8bc0AW8d037lPzcLnYuhBZDv5wuKTENjoqMcAOMk7kjibXlFCAGIj+ah00Y= -10.212.21.6 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBZz5pv0Emp3OCKfrsLQ72hOcAkbqpmg2wMm5+rngrb+ -10.212.21.6 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDZiPLfFRgPwI4679CHEnsA+clMIaU4An59fHLKF0e2JdRFB4JMWkrWih/RXcjBsGxJzyCDksniX2ucXQr+HGT8K3yDHUOHhqKSLZ1E1LG6PDz+XkVHc0yWLVW1xj4H23RpdRUIOILWhpyztkUKKlK+Pk1hKyZ0EgL+E7+ioaL6rKNbPIZt+q2SN/3CmliKm5hBgFzVUqjyZXsnvWXUmcTl4NoCSnxOMb83XqStZLpwWaESR1zgl3QY0CA4Y2lBis6SlH7fuRmSeQFWFOzZg+LQ4atVUf0KaeFlnhvogS8smFoniET78oOAWTugSGtwTKOTheSI64d/PhjpM7mlOcdB -10.212.40.162 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBC8FtMzAKII9qQu4gvnYr+0iDaqSwUdkKZX7hYBgldAcACcJUDK7XdgE40dLrKRZhpgxvrCVSegFbTuYreDzAsc= -10.212.40.162 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKHLmTPkc6C9MVpmFEkTBKX534/4C5qLVsV7WF9cHW2A -10.212.40.162 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDVorQSTrBnPAb2RiS8gBO9gE/QOc359GICKeXE3h8KwBY3Pu+wM1kuVbdDLiWkSazvBjxM0Q6Jb29X6qiJ2eFI7mnwNQOU5KCWRy54ycHCgQizZYo36wvd+WBfBqKvl30HLVeC1cUGV7oXnS+wPXKTWYvKbCq3xfpjmbiIzuwrcoww3hd7oqtkia+CKKmlrV3O03hf4LFgHAI3dZcPlD3TOL+yg/k34zFQ8h5o260eVUU4BzNLL2zkGsjlTv/Gkq4CcGDQVHlOlOOx+LTXDblvc05zbw4009NT+feE+HXDP9jDc6bdIEI8659PSQvp06oFZJYzwt4dTUNWoRuQh7at -10.212.40.177 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBAF4Exot2FxrjgKp676SV+2UMhrR+ESP3zYyyDnIRCvR+aGFXNWksldmf1Q/IRzw9H8gLWBrwX2se75COX3ClgM= -10.212.40.177 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPoSYv8HwXyu1LJeO1t74ZwDM8e9cW0mJJ5k5Es0N67X -10.212.40.177 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDMZeweisViTAv63KR61MyD9vcRkYlZ1FSKL+xyDqIgnK8pqLkUwlvNjwRubcfSheNX5G194ObB36Nmoyn9ZcDzeJdvHYHIzMcZYI3Rod7Gw4yuAIT1atQn9zYS/88ve/zgdPKL7gz3Whv1LRpZ2U0lztSthAnpczECm94IsNv2hLwMrBHTS+5YxXDrlKm0QJsraiIxDGzxFtIUUlVJ8/RwNJ7VEPXLXuxIEWbNB5bMUWRpEdZKGt/p09cAfZhA+Q8QTUhSpHUazQTK+ohLAZO9rZ8cG65lxtqYDj6As/7xzvf4e6o40lEDQG7iyukPyDCNQuIAelmaBapMV+POvD0z -10.212.40.181 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKSOuzcBCG1NouRpbnPWTYNbk1fG7KTCQmaf/wErkUFRaaS8rCpaWHPMSBI+XSFsvIIIotfNDaSBED7bPfXFKgM= -10.212.40.181 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJU1Dt6G+sz2t0I92ZDThvi93oj9ETwYi9w6UrG62KaL -10.212.40.181 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCs2T7XRvYqHjm3tZi5apBz8+2YHci+vevF1ZRjXcQSx8v38JxQg9DxcB+Lc3kAYVzoZLjpUgROvRqtBDAsQOhdIz1xHztFOG05Hc+lowy1DSJI5iSxZh6XibQm0ccMCx+ucNd1NkXgcb5sYLnxkHJbgBGWWUgUh+HIPhDs8gISFLlY3XFNue/8JFFJOzma95oT53x93P769dm1yNI0L6CGUpBQ1zDpcYaj5GD1dfYEHZZAGdwt3/ppb0r3R/oUGXqWEvXgVJUBUqvn/Vf2owPnMpPkZFLN3qF+RiOFBRjJ0fdQAaTYGdb23QuSNu7ffAq47S6p2w2VDH+j55lM8pZz -10.212.40.220 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKYq+73lOM8w7bYMP6oTgvwScg0FQrF1VYcQ1Bs2lxF8/8v4dcGHgEcKNMj20FP1VQEwiJf62WU03plyzXvtm/M= -10.212.40.220 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICFxhtiCYli4fzIX4ts2DU7P97iM4S4PQLjV//IP/vnl -10.212.40.220 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDkHznsYFNmismH7bwkn15RU1n/Y8KBAgzzJX+DSErVX0uX7v1ppIGTU/3tVYtERsdW3NmdgGiCZJYI3If6eAqDBfTMSGMWhfnfPzFwfPlMSqaaEMOt6nH8JQxwNOt1/cEdWZxA7c212CHSyPjDfFAydakTdeaNEK7dQf7wFxAl1CmIPjDYi0YAOnaeP7rrovTxoqv68AqRCwXva2SH1gEgkDjzeFg8nKsJdYait/rMiCmHIPokd8PwZ/r/GxMI7ulpJSufGWNcti0kUClCl+vxQLjdlvXQCcBSNskcdPnCOVyFEpoz/1gZcj4dEzDpBHJoJ7tKItGuxWmLA+286+x7 -10.212.40.228 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJnRZ+/nNU2y1CSGhENh2HUVuZQEUD6z2jry8rBpyNUzA6S9dM2gRDAgVfJh1SBiGJSaiNXoYpoRNSqSu/44gys= -10.212.40.228 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEYX0lF76zRtyK2VideBEDhv6fT1wk0x0dvVagf+vEy2 -10.212.40.228 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC149FmXt0JHiByOQyYxf1lEz5ugaHV9FVMyeyWOzDP7NxvNALLkQkh0IvSOBDyVKNGvmDMFeQv3rBWlY9AZKOsGqDwbvktqrsjFJrjZzJ5+M4qzFKNdKGMYyXeK0ZZP2mxCe/8ZG8co09yMbCZEO13pUZDPkkjIdde1sZhzGsleLhuPFvDzjd3JBK603JZGxq6NzF7WkYZwUknwDTvjGrK1jq4NBKwcss5Cuv+UiJxrVQaSEKYi//dsBDneplQinNnURvz5A4X9vGswFgYPpo1B4Tl5kck/TuEricSIK0RZ6WccC/gUWTCtElHIw+UUFn1/W2Q63Or/UHakvxalp4X -10.212.40.253 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBNZDwaLXciVXorH5WZEwzXo0veq0ZYW7ePUwDiq3E1CBq2Cjik/HlSC1MK2XbSJmTMp9y1LAG6+qX8n37iso6d4= -10.212.40.253 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIUAtMuGJhTbJKW1OIy6hcSw5V6Rxoy/wNh7SXHzFTQL -10.212.40.253 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDsOf6Z3vGicxseAMFOnWazi0s39VBnvShxznNWQ8msoBp6LCHtz/ptJgSq9KYhGC6WzyqE4A/KzePb0SdWZh7W1ghrYYHUl9hiRysAdkhsICD7DcdmMmbHRCmlVcCTNc6tMNIZwu8SvdORg4bNU8Cep77ulokli3gf9VRCP5QkI3teln4zAeMwhEvkcAjYUKfNPkz4ngHG9MyjJe0nyQ6wW21f/7bK+y+2U4yQUsvMDzC9Ku33TfM0qqxLvlyobXrgV+1731F+cuap7X3onJRNhW7ybabsidrTqBaxy93TXfnEx2YPl1PHIX+FOb0AXKEj0SHaOdJEAUjAFZR1TI1P -10.212.40.68 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEVVY4bRwgkAM0+6Ee18X2CDx65VwOz4pkJF1Vhkr01xo6r8a9VXR+H0X6hcLHFtIgmA2JHGU6sCcYgsyDkZwUY= -10.212.40.68 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKohAgQyTlP8ss1Q/DfciJBEW8/6mSx9nZXWM66j/rti -10.212.40.68 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDGWHld54DNfYFo3LeBCLYzY+ejOfOiWWnnwElyURQlyNq6ChKj4J5sL7BfGYWpq5x0t0OpxpH6SFUesWEclf7T67UA1/0edsCZBN/ElKySIEqRNSygxuzplLe57AGrfTa6sPLeclozBNGtT1WFPRWWwZY1Abc1KIx5iZnlD4hn0KGuSB6+qA4eP6Qp0grt5ZxaidR65u49fGcb0ziEcVBEzLmOQ0YQo/hJVbCACSINWLAhzFnQqAB7542kHAsrE5tiV/FXkYDfPShbrhTU+QfrRAB1rWSDUaCFId3Xeche/qidA4paHMMmQ7pe+AA46MnYs1Oiy2n4L3vjMrVWFyzN -10.212.40.93 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBACIdB5lrD1GLH64APyWlcI728H1efckzLrOsPm8T4aEri7gIsDLmACpAwPBeVcrnYma8fTRGJs57519HeCeEEo= -10.212.40.93 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMHxvaF7V6ZYga7coFmXIRswxU0/5ubY2NV73PWTDoo+ -10.212.40.93 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCerK0jYKlTGZcyz4jDpUQyDi4Iq9tYLLsucpH4U4mUPxP7dVFRp0i+qkMeEccq+U5WZ5W2O5+ry1VbpiTOb4C2zPKf1H65YckRzMluwFwdBICcxUSkYkbVfttOJZk/4TkNgylytD6jSfjoXnN7H3LyG6xnLuAVmEK64QYrAHDmAqAVGrFv7b5/MpQqPpP03NE+SEhiURyL6EWGDcCnEyFVfTXEBZc5ZlVqTl5zPzEXNDKJ9dQdEcOdP3Ps7RY1NnIHjulp3MHcu2PZoBIXMAUPt20znLGg8FqBFa/bJYmW26HdLxGgHZgP7ld6JHoyztNeWEplIuW2Ksb9PR5tLV6T -10.212.41.111 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEC7QpzCbi98dCNv4GOiZnRfNW+XC7N2zfdZ0q7kyOoOaCFWWkhKAdIzGN0kT1A4mWPV66ScmsqKUkMtNI3oDjw= -10.212.41.111 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICeCF1aIhWdm7KORiPkfCmOUy+sJ00rUjcjE7AGXoMyY -10.212.41.111 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDQ/RAf5d9RpoTrSGSoOD+e1p2sSzajfV6J4QYnBEKAoxLuwuP50fuNNOZgSJlNj3UeGN+O/eKULd4FA1nb4mKcec/ceAmu685Pe1Xz0FtBbLDHc37g2NQ6mtF14rLhwU0h2UGkZSxSVBqxf6YLMylII5of7zWqGJEtERPLGkwzsklBq6WpVJ0UvDP6G+lh/NRRYe1FZkIk7VW3bKLOrREE0kHw9lEV5gr1F737Hoe9nXcRJjetjLQwb5xsI+rNOfs3jtGTQaPcx9e/X1WgAF8nh6+0IUa0uiepvR5CRbl+ihvH+r3ftEWPAkODSnkay622ro3zPkyB5C5U4wQA9Bkh -10.212.41.118 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBNhJJLBrPq7VnjVjVA4ogUCrg8t4515gLotFv9VwghEolXDTTdoN19POWw+8iJdu2fP0remBbPWanP+cUEbdgRc= -10.212.41.118 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOLExGZ9Nnm1nhkwDPPS9BpH6gf6mVIviEOWrC1vMhT3 -10.212.41.118 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDUk4/t9qsY6VR95Q9ww3F1d0msM7hanNiNPqWLJ1MuYPdfvi/HQz16s2ZsB9ALLJ9TiiEWRSVgwlzL0j/M897tnWZDJ3XTxqHWNu9jDu4FafZnVzVK/0eZROy3ILXOAP1f7X6kPszQ7gg1wnnwbyd8+exT0t5FVX7hnvfcxI0Pkm9hWLh7ZehG5fNDWfBYlEhuM5CFqMiWXned8FTql0SnZk8BWHZevYMDJvg15Jz1KBF5/NYJ+mdOCwmSZz27DrDa1UlL2Z7gsvj5xvPCmteVPoVaV8oGIXJ2t36GmWs9NWqXJ6KA/5b+nl8JpN0U2u7WvflEFFui/SNtdu0cbol1 -10.212.41.136 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBIDen4gF4u4AQrTI31+rMZRI9L4jwFmPvOg4xYksdZKDs4wEH/1yTVa9dQJQvwjmiWYIoRYsrecTTVT8LlXOAl8= -10.212.41.136 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFLnD9F3cZCmqU0xHMu2dh6qXXOoFYMKA2naBUC/g3KE -10.212.41.136 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDG3mwVvDDx1iAgPiphrugJ5xamKrMfa+1EShGlSOrdHG5+eJnxPMR2/IvBZLdSrmoYqGlrTmGmlayWy9CEL7tInQlhMrupsOMB6slSI8XsVfdSj6U6kc1HKl3X+yN8QgwgIK3eLW31MQFTD0JnFkONz48PPwHJ6ShUqDttvnG8Lmfvrbs37stmF0no2KY4YcvPTETlctgKIcuGhrC5JDWn0EOulNyNJyu0hdeqfdq734357oVh3bw3HtaO/NZgpDBXpPuOGK7RK2KNFEp6dQjXkMR3CgSrkG5oftJpwTq5HI02fe94qF3Q8urCRV9qfvMQIfoCEFvmjydpxNjNGjsn -10.212.41.145 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKWU3f9blG+0bR5wfZNQWx82SvAlPiBaFjrR9N5jHNCodO+mGI8/vaLFqSEeXAqD9+wGtymQBSJZ47sc1+z78jg= -10.212.41.145 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAID087iSjZZpicynwHErKP31tCoKbX1+4pI6zCWO5mxFS -10.212.41.145 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDC2uGVfzhAXsseCPSV442gTaBYTLf9jlgjGT97vEPAMfXcTgjFqOzSvsPLoCJ9QIyojPLX2wmzB2z2E2S7lb+mbcVjPXOILmRVspj9oFD26HS87TIaayS8bdyxnsC7FWr3rPHJzie0o3YrTSJVXPYgDaDkWsJxNklJggpFd8PhmYjaIKQ0B5GlobPmJloqzN5oypCvlJk9kXTT2D/y9nLX/1mrVTZX1czDJ56wHgJDy56nZT05mzpk+xL0TPdWgwE02CgGjATUnQhQxe7pi20lyGLulGVEglh2g1LsPWHCQJ624vrdA0OLZ54smvqWQPdHkwjSZpzNNzZ4v9rExQat -10.212.41.170 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEbC3VNFc8kFYrkhzscCFdV2ohTpKoG07NIrBgvBe3KiIeUf5mNd7tCjx7rNrKy8omy+6ZcEcC/tC4tZc5YpmNg= -10.212.41.170 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAiU68rSRcTQ+wj6LGT+p6uAYYW3ef4An4NzGR8+WIBh -10.212.41.170 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDGXTIWJiiTGh/jKj2pskJLvD4iOIXswmrWEJWe+pWBcko3R4OCCYhYgV9JVUAVKDcpIvWHsuwo3EzLtSA5155AkyqGmOUIoLwYeHsOPp/CoIuessaSzMGDK/WlC+JDK3TzrTtAuEya88Ueu+HS3L7UOwszFNDp4cwOKjOK5hp/CjC10oDLbxSAo26LvOJmIyykRIB0Pf4NLCZ+YiHzyf9Ach6lO7ne5UCfJU88kJls0mJPrQAIxeGyfaXHXPDBZom4f5BMN+j640Q76nzKrjJ/4Gzz3cmBmIm0Bl0QjAjyUceDylK7z4PP+zbzEFG80WjWC0RFj/WyLYLo6lDRnUH1 -10.212.41.177 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBDPwjazjKw4Ibkaib9T7WrpTbAvnl1APfg8bxlYM7iY17NE1ue1FCjcMc6ss0mQNvDjJWUjBmgxBuDO76uGTa5M= -10.212.41.177 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIALZADupnf02PioMOjsYDudtJptXOfuvuGSqjiQHPOFH -10.212.41.177 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDKzH6de9zrNzNgWLbsjX9lsIE3Gxd4q6WIykQo2IITUW7UfNA0Xp2hk/I1lF8rrKNyXI8I+8IpKnNfEIvU3kt1CleVd/k3TwvEJrsk4GZ3rjrl0qnOi6DGYAlD35hmWpk8ny8qxiYpnM7m5i/hsZMMDp9eL3vYudiy04V7gSW/lVgIqlKyTQd/o17FXqfXVtOUG7HtPX4MZXHV15zEfAym5m4WIig0KCe9giqhx9gJaCndzmrXWb/p97g9VjvVgbhIxrXBKr52WrSHGEuLyruD+6o2+Jvmabj8+TLWSwEhpq1M2sYZAdmC/DqlQGEjEPBlvW5XuJhtLYFDPQQUc6zf -10.212.41.194 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCboXp3SQUmG3jY/4Vc0oFvc/Kx+NjFo510nEJBek46Gl/xEXRNJIl/dSyVQuBJMHD0/khwyuPhGLx2vBvfyZn4= -10.212.41.194 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPQe3p32TfmuzedTMT+52tSDDMHNhDLoklyZm75OJ8Hx -10.212.41.194 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCkdk/TubsaPDZoN986NMK+nDHgGaQVGo53794l7Dh46W3lEVojId8TjqFOHPUL10EQUXW0nl9U6QN6wVfMnM4nesxpxL60CRwKxCxVVTgEE9r48ETrEk262IAcpjESyozRLkL2aKJoTAsyBhcGJljvDb2ofqoBf5XKsczwPq08SegxmTe4Xfm3Po7IEVjwp12Xt5uZH6i9aitJ8mzM3ipi3zuS//TSvLv+UjFV77oPcy8vkH4zsKw3xADDWezw/PUdAEfXy2g5pLpeE+Wwzal8y7PIoFkQC5MluXlHSFwGMMyyF737pdrF8gARtSyoKj/IoyYwfcB4p44xZokSU0L7 -10.212.41.21 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJB9fOsKCBODvKSWyIvm21h1C4pTT/v1oL3nxTxP3tMC8HhjMFGJB2/Jv6mFxdmmuTzB9TWONwGwnLuyp0C55ww= -10.212.41.21 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINLVMh4XLuK4dZLxBUXaYRM4iqlQ8eYqS9sT0apmKzXl -10.212.41.21 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDCl90FYHb+OS1E1fN+fEA54Bo1s7y4stRKwXbFFW2KLf8cEOyF/td8DsGK74XvsxLfoi2N0HD5LYhnoVF9rcv0scenTBj8djFW9miRpWlc6D1l2DJIEkZiuk7gzgNbGej3VHlltYWjViAO9lZPpdM3/rb4X9MA0RpgUPrP+5UcVh6gA0tB+WBr9UEFHSePxH+jTSIR+86itiK0tKSyEwTMOCne3ocI2hLRvBIYV/gTK1iu8FM3gQHW1dQak5K8gUmr1558om/lLm/ir3OOcCQVyCAnoCLFMBwMx73A+Mw7yTwPFngcbKGLP3JKUzqGsWNGscpuUxqtIU/1F24NnF4P -10.212.41.254 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBHaJ0kF8EHO7P9ikR94Ybhxq8+K/PZKM4AUjkx8cM5oGA7d/3b+n0HdcXhWNQakrfaVwEL1f8EjOXLR5JhfR1cE= -10.212.41.254 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINAgdI12/ps2w8WuCx1JNgezQftGS6wm+4M6WiLZcg1D -10.212.41.254 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDTihw3vap85/M2/NEDhf4q+9Pa3foYXDQ7+IRePFPX8i588ADuIcOrXPt16zsdhZ3dGOb6qBqwpTeiPwlNwheVvkqA6hV0hVUv2P2FImgno4M5K9S+45wKMntEhU0xnmmUmrChgnDZ1pEEjh6rc7S0aqUJAfR3hTnyrGeZ0Sjl6E5EngfHf9ldIKvxXKVmYqFgS3YsttsBm8GM5VqyppKaRt0DiEj9lzaav/nxlZQvPJcn2jgdrcFSkOi2PDOn8BFMbc3dBvdXZutTqEK6NUJHAubY9N2BfSo6DYXe/7MYQ4zv7wPlD3DPfMyHKfRp5iWwJiAqelnN1Q/WymKvXKcL -10.212.41.32 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBM9CGj/6UKONMaudLKnP1j8Hrp2KuzHMVCKnzm8Uh1MsjlK2cWZEADvICia18mcDpFAin7IK9X+QILTLbYlO/D0= -10.212.41.32 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIJ5us5I6nhoh08EwhKC5PokHea9M1RstP+8dfU0Xuqc -10.212.41.32 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDD8VeUD0ben5k5iVzoh0Xfc/jJIYwtJDs9vquM6G6/DqPXm0849wuI1DjP0NydYG/3OtvyjusqhFgOYIUdx0ZV1wtR+FlFU2vqKNpLEmRie5/osjJn3k1umb2CSuBFUqt8IWVXG5tO+wiKDIf0a6FhALpddbhbffcE5bXa64kvh7hN8sKKhsHX9NwgVOvqLx75VLPM017aWmfH2WKFXDEmyv/QCC2USQsvf1knS7/yl+4RWL5VaIg1HyIG0ItKHVfp/s+ebsjS8q4zUlx6dRaQyBaTltJCmna27GJvba0VgFN6+NNJSkT7z2IgvXoUBNp5g1y2JDo9SmwjXS67XAkx -10.212.41.47 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBFG7p3mb8zTFuTeukORgpADPpR9G1V520RcsahcUoW8wvSHIOuTq88bjB9b3bTUeP6gnRJNOzLSHgXrZ2pQrqkA= -10.212.41.47 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIjoBYu1hwH7+lRnrz+lmqeQldxeKxo71anNfyFMFXvs -10.212.41.47 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDF6euIHAHsOoTR24ZtJBsJSPVhIV2NaDP9lJjZrlc7/yDrP8znS2Ux53ZW1POrTUFepqGrSa8TEdMc/qEQoVhVVl7xuhiz9Q/z6WHrxxqIEl32R75KeoQpYqgHU+C22FmwEOhq6RROhrhxcQywgo1g3bUCAxEORXv2KL5X6bW57BdWjbwdrJKXigLJiiETIrpucRGigXmi1msLJ/btu2JqcTr9Mcjn3c3XusTZG8T1RR2WoN/njs4MGIw+rn+pVRm05+Mvb+/XafarpVVQuzUhtDiPWnaqPfB/NGenKmHrts02lG4iwgsIZjA2V1xZcXmHwwVZTNRqFZKU08+a0YS7 -10.212.41.7 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBGEwOVJ4ZnA+kqdhvxwsGNre6+rUSSyYhgnAwA0pg5cCn7XtsIXyoPMY6eCOBS/sk4Z6xv17x3iwkbjHGMT6SHo= -10.212.41.7 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIF6PgRGvIc4P32QWVCESJmA08CiP/8qEzXfpalWWb6Z3 -10.212.41.7 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDV9UExZZUXvFWnpwcB7Qt8P6MpSRLmk59VSoAjOlFkxEP7dfsA4YLc1MCk9aehOmxInC61EDrAlueuZGbgRNNUfXbigbxW/qUjyUWD5i8YWLfLuSSwynqWDBXmrXOxRaluVMJ7ET6soBhyUaGIs0ObqsBMj3HW3Fr0438KgNOkGg0TeLgnRCQW0MEPD3aVvUh6Sd8DIjn/Hb1sdsQIfcn10BJN3x3hpqen7QIgcHbmE8HWPWvDbsSEpaqMzkMVzXIA63QD3yvK16pDHRiJ0ZPPKElg7DjQDY77qNX3U4jEvLCtOcquO1XbnjA/pCsmgU5rv2ehqGfuoa7Pa/PYx/bL -10.212.41.86 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBHol7vXPk3P8uVymwM8cte2WjtsfCU//NU4hwAj5kYnzKIEBzv2hWmF/iE8IDKiDbBo8Ld0pHbuJluBcplvurWE= -10.212.41.86 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKmBBMtl7sispOW/y3SRCSnvE0ZHoBNEH2vZb798McI9 -10.212.41.86 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCzDhTE3NOTpYDi/Bw8R4H4B8yq1Jp/1/ZoZNfkvFY/vVkoFL9UAg1suPui8o4GzO8zWkvwfyDEEeT4KLcbnKQsG4Xbu2NiDgMvV9QIN83d7VXNaaTXUb7bn6YPaTpblh9jfx5AsxJcu3uX+rP9XR2jtU5bdVlXogMj1f2RsBZ6/D6hv4JgNqLQlGmZ9dVqALme0OcTGoWkTqlfMtioajBRLrv15sRt1ycd+s5c40z2+5sIw5DnCkuJ1Dz1jus6v7YLfnTkzMo/G/Ar+tkLsRaPq4tLnRTaoF4Thu8OtUqy6AKX2TKw+msuLrlBDOKKcz1cjS8Z+gyQkZuztZ9qgXAF \ No newline at end of file +10.212.10.67 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBFt7Y6BYg8wB9glJbKdO7WOmhCi9RqsUAO6MuD/yAIAYSZRdJNTbp0TQTQve8DHl8COWFLEY684emTcELEy/82Y= +10.212.10.67 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIO3dqI5cTDj51VRlo6hQ//wM8qI35TSxMzw+mdkf83U9 +10.212.10.67 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDTf3cpzwsAp+kFykBly9YBUa/7pBJq1Im7qQIfgCiHXMg3GXQx8MSkbFLFyIiM6JgNXUmXsDPthvXZKKxK2vWdPIr+ei5WeI+g3WSlpGYO1ICWq0KIXg08EDmP0eXSe12iPEYhnw/gxBw4It8orzLNtz04Zbx0461N4I78h6C6a3xIxvORD8s5Kebms6jDEJNiQn8ku+PRfza4Ycf2XvQVJWWSGDOQdN0fseW/fvlCcxDxW9uhmuHbIQ8nw2ibZjcX0YQFVTKhZ3DPhTuhhd1TWn9KwmPB53Vd5/esgyXNLm9KsNPH5bIv+OPJE+17HmDMvcPPJnXE9DpAXfXNhxVDbyNcqxkNdBVOIjoWif1Pc8k+cFCscoCXg8vWvvRa91q2ZjxyMXje5aG1vhrC++Tggh4XtEq/zzHv1aaxdX7nqdnAtt98wxK8wGQJE5H+Bv3kP4PXZwnpN8zvs9PwiS5VhsLXMDHjs78G2knqdPR8EQMl6f6FdiIRLPnFsZwwRT0= +10.212.10.78 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBNiOfSa6CWC+RS8gTrm87u6bssiWE98qSsWA3DdkdIwtzq4eSlJlBgIz8l87r9a2dXcruTk7m6EKvU7umGKYmOk= +10.212.10.78 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOVWh2Hceos0/KpoLEXHxzrL//rmENjUfuBWBfL3TOIc +10.212.10.78 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCjae2DWDU2L6/6rEXkOX8kLS83VCYGt3MdgGdN99DDtfAIIc1F6rwkUD8MwkH+uCHySEU/4F4ggIjEmGhlcCpcK9b3bn55AtxalZ+UMKnZHdx7qjk9XXWLfbN9smJyt92ImBhWzB6/4iW6ZzVWJjxb9DfXWdLXtPCG9uccow3E2M12hPtZyyiVdqjg18j7lIYlayxIPukSPxG2XytaLhHU1/oPl7WvFRsGJ78s1Rz2aA/BCUfDTq8PHYlbzucKmvJC6xgeTDIdR/qp34Gh3FxJX8/AGkMk4IR9ghF6GB6tC2y1zCnSrSdf5zkhf3StNRRV1FZPlDCrWYgVm/yVMG0Bx0FfEaiaXj99QEQu2e741zLvQ04KlCITJ3ZQcUzb3OGhdtTQRENwL2HxUD0GfNCmBTUW/66HKEVMLoJYgtw2f+7Tf62o5yeIkgL1gX51oiMcSxyhXhwPAYaTAqyc5kmV6Ls78Ock8y02v4RRxRJOR0zPh5Bytb2s24V+x4QIgLs= +10.212.11.102 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBH7B9y+dDZghm4XTcj535PETvh9nVH+TLpNSWfIxOiJ7vNBlhihZDCdexKFfdbO5eVDYVdS3yqqDKW0Cl8wqUJA= +10.212.11.102 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKIQyHmWnhgoj/fbDcvGyvMvBnFH4vuM4VTEaWsKyyl2 +10.212.11.102 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCsnwomT/uqFQc79zV0hiAsISRuuT48ifVlJ2b2OBWsE7A381+Zwaxyuo853D6l3vU0fwSUP4v65WGsNjevezLywg3Y/Tv74VPamtepr7YDtYcDQrlOe0CRTr5BJx933bIYwhS/fiwT8FUuWBkyGcC/fzsrBHt2ppTsRuS30ciBytAvQOipeczGrNDYNmHzB95cH90n5zJtJb6YOpyBabqSMWTTOacuYbow1MKZgkJzIl3GgUoe0wywFa0aYMiOPOnWAr3H+q3V9Kq1tebs8pQq/B4z9DXMXpuooXowHmx6QTsRIrlPdncg/VrgictE9gT8nLuHOkzGKRpQG7QvafZQ+p3wTivRZ0mwLCJrum8D3CUh1zTB7trYkveBkrMapESd6hcqNaBOP5YCkJDzngf94t4HqcrJsYtWBnCrzWOVsfuTdUgnTBEtRX6QMb0uE1hKcgBEiQICGPg2KH7RoVV8vVN1H1sppgXRqE/q7TgjdrFqgFrsJuoi2oARkXyy3O8= +10.212.11.118 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBFR5VOOrzAuf9PUPilu+2NTleLxZnyOK9bP6aA8Acg8F+jdjZ06O5VdpTuIXQeYWR5AzW0Vj7yH3KSVX70jyMrU= +10.212.11.118 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDT0KaMivIbI1n9XwJAetzN4t/OUVXxlLUyEslBkI4Na +10.212.11.118 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDXKLRukpzjplTgiDKPyHxEUHQfAQ8/Gpl2dXKZ8eSQ3RupDgT7LtTjK1qKPk1/hhxcG01+tL9vJy221K0k569j8ziRrLX5QslIObozFisrIwyiA/dXEGtTa250jNm7vjtdND3n4j8yrbxmCZVsd2UmHtDCoGMlBbDqXOzzyzZIp0rXHnKSJiq4+q4GZanhqlODOMkQCC0HciHkhT9eBbRkRHsD4NI8Q09tAUFaM6gGGzO9nzMZrZv1BuzCE3IRk1ooVlP+cG1G/uKf/U38ulB/UWREZ1UVfDZxvcpza3V1LrgPED94hJWYbWkhOPyKvUc+7VByC2WdbqpNOQKrc9903gdLXIfIzbJSmptqicCee/oREZrT2E+ZSkfufK9nho1PVtXZWgdI92T+R4OSq/2ufY5GyDxOqg8LILA7cewjhuz7qVX4vGwYKgT01FIdG1AZUmhCLXSGjZWuUl3qf0FdiWK1VQBlt5Xjidm3Kr4ZFh+CMIBjr5xc5pn4VtHqXe0= +10.212.11.21 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBt/Thv9cb2a8U4XHAJNkULyz89MRfGz3XrvKBT5/luU5nT++JIu+CTB+NB7ReWhED3tjLQWritPDy4P3kpuIIw= +10.212.11.21 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAiqszpnB77GEpvU64Dp3/89zL6t5Tk38I62EDC912gW +10.212.11.21 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCseQv4j14eiesS3yAWuX4aaU6kgyfj+05mpNcQ0L6ucE5H/M3GNuyo1hFOKltGksEDflI92O+R5yEoIvJtdNJDwf/BCDdKq13thzORUL+gviS0cm4WrFhNKm1jwh/+dmmgeGH37lpNmsVG7E2gKopRWOmG8/whchysfQL9P4jhLyTRTrlZgnchN3kDnLmywq0Q/nCd/xU1o6R4L415epvmbSjb8m0xaW1cF0rlfnEGZ3iWZosgF/aP+98A+/rxOintfwlDutlubbeZLN/iNY0a8MB4LsLI+QyVo0Jomdu1EjL7nT2/TpVZcCYCnp1sssA1AiGyFTk96Rug+n4mPc6rFe2xk4TFlv7ZL4SNz4ITwks565Q5oMbpaIH6KG3VpkTWeUgZxKZM+F2aOL2iRuS3thmtyTOglepnFKj0zUG7PsQ0+Qj4lYCitYWqxXRtTboOuu5UVnddrpuT1QJDeqt9pG7LIfLoO+lIMNp9BHpxebkDJpOjuX5eEDuC9wQYUmc= +10.212.11.234 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCm8fGqORZXcwf3+aJTA/VrNr4HECdL1Km9ERQONQaVOC4zQanQoFm9Cl0ee1VxVav1LZDpJHHn/bWT1UbZww2c= +10.212.11.234 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFL8wn+RKkglhLQH/O3fIarrzazeH8shAke/xRgF1SIT +10.212.11.234 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCqVjtq2AtaH1zzfgZ8H3z/Styna+DY8ntYlf4MGU1B3Vx9BpGCvGC0cDydetm2B961+wdNolsQ7yWser6CdUbb9Wy61GbhJkafo0S2Di4Fa1YrnyABDc6o/xPduH5l61XOd9E1l99mIVr+OpTIAN4N93aoxgssXlL1gbNbitzOLgNi8/+tQ8SwNFl7T+EKeS2bj3GmPFKKRgQrV1he8MBP5N/9OUDi87BkAP6OBnXxIu79GHSMW30IwxzO2sUxNpNcaRAi2p0TpzT5YndxkCZvuMWDAieW6xMrAF/SUXNEdrqX6NWnMz47HIcQpf9PaclzlgGxjaoFLlNLy92KlpQKWVbYbrdWNU+gL+nfDJdSWHIJa9Ebdx4S8hMbJuxRoccBHuRzwNdAQk2XO3pB+DDFHbKOuPvRh0KhQ+Fcag3DaKH85Gkqe8RRvg/uZUohF5tPT47csecKp4HI92YQVMlRu17hvOSXU7jgeKFmsQNDJb4YLS0qX0tiZtpqUAkplLk= +10.212.11.49 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBD6C/yDbJqLSfvDIx6+eOseOftUluVwiaG/rpj+0ZzcdfhzdIUaw44E6rKqOUW+2/xJ6Ek5ZHFXvIiDqQIykpes= +10.212.11.49 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOql/DalTG1+8GIxaPsW2QCaX6W8FHZ0tJu+zaWdd1G9 +10.212.11.49 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC2IAmqLG50XCX1WLrPUKe2aher339h0sT92u2ofre6lAYeeOY+w9s1VJuyCbR6AQg6BoIu5dvpfiu+HkKaV76oap29ohGcBeMKXeL7cPm0Q2GzVEr1pY7C1WkNHPH3NgXm3qcCueKlO7VOpeWol/m7GzTvhjrImNP7C8rkKrQVSmC10UhT3Pa1p8B/3JOzuEzNWVpnNtvZo5nS0pGTk1fZdMRUjmOV0tC/uKEw+Mt+R2Q6RvBzn9qnV4jLeb5Jg6qA+Yaa8fG7qF0X6DF963qKt0592rSKH+SKqx0Fon7ofreeBUeeaqWN9POlLeXuiJ+2/LU+HOYx9NKM8HJ8ABkO1Da4LUI5Z67r8RDD0szvsX7VP+7BgU21BTPighVQrns9mtEfqBr+EKLYnNza15mqP2qHb/W8jBx1LaawS4fxx9hdfM+qQabIasuyjr9T1HrY/0HA8tDYG7WaJiC5xRcfQ7O4miFit7eodyqVK/xMu9Szsc452Suq1uwNw37hW8E= +10.212.11.97 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKtp+UXZY9T/zU96HgiRCmReLIHluFSP8MDRzgV7yHUxTmSa1RqnbugPKzBYd+1KXdh/YqeeNFVfEuT+Xwi9oAI= +10.212.11.97 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGw5IKTDJJfmeiOWCjnkijqrh4GzHUVi+CYLkCBa20li +10.212.11.97 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCq2z1Rp+UW7q0dM0XQi2nEp4XWyxSbRgjEau83BhOoekU3u6otqFHlZfy2UOJyhyBWKDuGsYBcspdi43mT9jYHAVKEMnGXAJFMJVHveRzFP1j4wPADCjiaw+YixSC0AfRS5Dc7sw8d/j3k5YjCfPOKgOrKVblS92+DsO8N/hco2AlmiLy7E4n1t/5yim7oh/Hue8h+5WWmeFq1CveMbTwiupWqg4jgEQHHjfNPfg1SL7dHcNt2n6Sx88CxxuXOPtWDMZ7uVHHYBV6AVFDaaP94+iLMgTXilhgHvZnerHzMDXLqDxDMNcx/FUvnsFznRTN+vS7lsw+FIumXoyn26NL9dF3Xazoejzo+f+fOtWxCG99+6C6W6JIILr7ziqYIvkazKL9wcORdS4dMQZkrM00z7LrGzjSuI62BFR3OusTQ2jbCt+aLeOb9EIbvE9iTjmwpJ141ckcyLC0ZV24KteaDgrqnlmvxyzzIHZ5gstSzEC7ECClSJqJj+RMzBXXHmvs= +10.212.11.99 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBMirbt5U7V0OTZvJQ9MItieUt0kYTfKo/req7ROCvegM1Wh8bU0Iv+kfBKnH92F9pZpFqqN1uXhDEFfNU0P4t3U= +10.212.11.99 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPkCUwBTYgfpMbYJe/SRem+AP81+m3ZZMnVEeyDwMvgZ +10.212.11.99 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCrOuO/K0Za2BcrKxfCeU5ieCaqBd/pJvYg7OrAUlq8NmResLmVtN8qiiLbbArslBKnPSHYbGARN9dVDteuU2Aey+Y4/RkroSwnD7kGIHl3DdmLSplSgNFRZVrFPDaJRuN1deX65jI2eQwF48nRWsEaZ77nbpytZpTWJTU4Ebd2pdp20ko43A4Dzg9947sSoQxDMpcbLrTfHsM/aSajeo9eg15PPv9diJp73hugC8Ki2CEJfTrt35JYZTXCSyq9pkLvqPKq1tFyi8vkOfT1mJQrnU80q2Tvq/mph2wrHkb3Wu3ef0MNwD8kgXvn9Q/2eQ2P3qJeBVa1phusw7BcvJcKOJJ5NPl8skrYm5YBxuBEltyLtStAAQ4DguvfSDEetfQ/d9Z3xJrjhoZlR+S3qSVXHk/Fq2fr8XJMr89e11STc+UXx99W/2Fapa+UDH00nDzVcoq0EedNnm2TFUrsfGePSjxGZTpJKqBS5oNKG3Imf9QIStydbPm0tQIlvx3Hbhc= +10.212.21.167 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKPiPAGujnv30v/h76hhejfQqDGqQtnzSCkP8pAv6G2Iy2r7WwnI0Je+OvIz4iW1N5ccgkjVFXeL1iEhqGHsQT8= +10.212.21.167 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJHiD5GnVWOiwZ5gdocDC07OAFuMKgZcET0LIBWprB1u +10.212.21.167 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC/0qL2Ot4Ba1hTCl8T9ke1THJg4PLXj5yO5XoL/3Rj69ho/AdIu8K6dzLHZdlhjTFkbOIoY60og7Doy3QYPBZ9MriaCmpJNW4RDVpnZbhByQi0Dyz7NSYA3LIr+XhjzhH1T0mJPg9D7fH/mTRgrNccIhiv5LhyLIn+awO5qqM9KnOW2hWvyKBVQTdHhf4UCsdgpwC67XDJsLZvYnX89wDxUGPgREiB61s/0bWoF+ddlfoN0A7IGwljpfzs8kLZ+AKgToTtEgAdnkVWj4ZU4XBoc9iL34fLA+g+SZg/pr/+rFCm8/ZOL/gUzC0yjriEUgAowLs89RA1/7eTroiMPfSuMuvR8seg5LY9gNM10edzcdaxVY/FZ1Rbd4tOeqUrHvH5OpRA4cEjZk1vDsmFVO82vSGQxKkpkBChZqkKGr9TrnEvH/Sv7SXrnOXvhcKh7HTOleva+KbyycxTiygMuLg9iE4z/q3G16RquGDDQ4hs+ZZe/6zgJBwS6k//Tkqiy2E= +10.212.40.114 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBLLNga4t7oBV+2XriFX5XQ8InotbEN5aCqnvhfE+tMdmPTWhaUiqbQO1ZZUDi3AT53QSNdOPPeVu0Pj6/swZFqw= +10.212.40.114 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJkDivBK710SRoNliuRqEf/krK9VRCDIt8mSf0JgHEeG +10.212.40.114 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCFnfCiwyt2hgeeWd3LIUguWDJo/UTpdgF9bOi4sGhLRTQIt7PlDJ24Bb45aOttremWzviOm1EADmTzt06D5FbmqdqOrD7ApZ4j9PgBW/kANhnL/IIvscejlj6cYBBBVu1YZeekys1SRUorFBQ6QfjLTT3mx0ICRpK5DZRL7WWDtfUprsCcukdtbLyrIaKhxJKKDZbn3AAGLK856wCOGgO11eaiKlcKB1cmZkOqEPPSN0fsTZfiGpM0HGe+yr71PrUGV+NKBgZpynN+EIwnnVqiDY3gxN9dJJ5rdXvRl3BXICp+rTObuQARAFGiO2MpZI6QggazUleL4frlYFKiCib3PjoyHaDm8s5B8c6oc5SOywpocX7b4rMNAqs0pJsw3d5M2ZRdI9M2F4TGKgwRoGhs2VkBAZcTBf+rpzLIPlRiXDPsEiYmB821XVU/BRfl3NQ9udKdmWUQLy784YCM1GNs/v1nU7qIN/W9MZcbGTkYEtBNJnuWXf/lfhThzsx+lLE= +10.212.40.15 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBFkoBn02vfqp8ixw3PfSwC0njtQ9VVyATtx64xNGU424HMc52eRglrZ0YbN6f/iWxIFFKHIB+RlzFEJRBOF7lzs= +10.212.40.15 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKtPKZhYlNPgjkiwbSthKsfeomIqXTgs0LD+IJoQjWwu +10.212.40.15 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCtGdaRgFwijF7y5Mn+CUKDKUSNp1vz3tGL2fLy3MmTJMKI5h3w6XGtzCDV4PS1emax29fVsSjgX5uRw9GmKFxWW76lko3r78hafbv8DFS00trtdzHbrXm46ZkPofyG8h9sx7mXdo/cbM/CFqd0J5i7WVUUiXOHfBNPt+OnA6/jQsiLIMSfdPv8XKSFfXFihuJIedzuMMzZyCJ8x2cwBrTNlrRd/nG9pg5i0mQiqm4cLcWPcO00N1iLQVRxMVUisIaUnRVsP12qQNHkg6hLi7XXsVpGeWf6JkADZGDppLddtetmcS6/Y79BXO0LuUjnYfraopCnjxLPAT2llRuQLbQCCC/bFvefXDbgff2J4/Y0mwKB0qaOTDXIIPIayGec0kp4B9uGkHbQ34SGwtSpbe8ATCQIqHwCL1/cBozkIXMnJsOmg3UTpzuqLSh5bbwYJV1wn22G86QSy4KeonNVaI3g8qMrGCcBXUz5Ia/njdclzjKlWV2AEfrD9fCnhN9n6fs= +10.212.40.20 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBMbofHQs532OSmiCPl2tCt/dXNPijj6xFqfv+gradqiGt9h9STqc22636ZTC57MjoOl5z30diAEjTsK6wSB4vbs= +10.212.40.20 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIH48FZq/y4POfyJHnrbimZFLOVshdrRFyJzUwzS1j4mT +10.212.40.20 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCTpYxxJOGKEk/JGaa/uls2B7fjFmxcsrL+paTwepgSpj7g0O84qR889I2bGlxIaOxOMUg4sJ7Q89u0dW8Eqt6DRvt1vkVB8djPCPR+m0iUgEt83QXtxt1u2R73pyrRgxlEHnwTTmIXSXcfjYtTIwerXADHSrsxgISo8MmH+SNrjm0Rh69CbL6M/BE4HlzdUUHIHgRgC32KiHKS0oD/FtIMdZcQsXA0grjfQ2DF0dX131sc1bxoYRZsrUQV/FaDlwW7QCI8IHFjnNZ9aWvA8MYC8SI5GzPfzedaWQ4p4yjjLMuQalwyj9cRF4gb8zRvWwgqeUuGzTIrV+GtZH8gymLuoCzInUjK6vVFpPxQv+bEY5dfy+UsbChvYKZiQD55rvVPiABMMOBfLdhL7NLwOqvMVAlx5tCLym1XLC222Z10Lt8+quijnCVaWFpWst7I2CqM2iysMtA7WFXu6dukaM2+SgwmMuQ8sL19Dl1aEDKs7j4Hhur0NPR4R30IqUV5bUM= +10.212.40.245 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKm69S3oZUsYUm1G5XGC85AFhvh8G1JXlLP8NfR5Cqee+jjxlPPFjux3qKriw50/9bsGmq7u7AWZa5INhHOSOzE= +10.212.40.245 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB4ZI9rrz+Pfe0SK7BV79WGBN7Ef4jinonrRwQLd4Apu +10.212.40.245 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCV0Q4+xpXZSQmTNZQu0QHQYX1tAyAzvK+hMLU/0lrCw/KgPAB9UsmE0SQeUK6vZ17xQO5owd8YvP9r5+Qni2yIsBq3UY2NnBnGM7NL9anH6TvsGotdXDHv4yL+g4y7E2NIffwHn1l8Fvv0WOMJmZRODgCzb5VkeMslPX2k38N2xbm/NqzAG4IuPSpsBxHh93U87L+/QH2WCllQZWj19msnKRi4r/1a8xedX6jYbmwV3+bkRk9/Nj6ja/7XGt1Ka5yI2NonGktzPSlnnWAuMoOToANMMD5giJilR/iLTlbHtg28ze24SB6X59SeMm2tspXnuQwLyc92lER+J13XMaLkbW4s6GVaR8fjxJ/1YdppN9cnVeUDG2qX79sYXsWiZ3mWah+mpZ6Y4DhV1ke9kOwNwZYrK1vZjmzl54cD6jw9CZWPFt0QU83fpsQPPcCYq/SSdd4TkegjyakiupgBOzkyvSk3eYJ/mNBWP0/3rQ8cmDxERHrw643xHoPG1J9yshk= +10.212.40.68 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBFnKtOJFBYGPeiq5sNpoTaRaNf3cWAh+vVltIc91Ydky8lEbzOhpG4wnDFphwif8xjltg3Kh2MypHDZK32e3ers= +10.212.40.68 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIJcCF8qPjfUK1gM66Xh6IPbOdQJjbesIlTAvb0ldLLe +10.212.40.68 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDsRAMieeZkCdpXagyCnqiqOlJHvoTGHQY36/TyyvdDnRVdMnQTo+xqqtGaoT861oyYzxs7WlGFqqfBWLEr7/ZRfxbpZ+86pfFEqfXHCY3VB9fthTzOTRDrD9e6L9d6vgMXTwITl/N8pueeJ03LQ9LCfBLGis5oGW/YYGbb0Qusdpq7QbYHJ7WpidRT3J5H0uqHg0rZsxJlRk0yaPZF+V3bjNHIRScjo4++T9gh0xAFd9GqydV94Ww/5mLvtcz572j6m5AOQPeCEkueBk1i0Cc0M/q5H7OJ3lTt8lu+Qt4llfAtBCEu2JpjkwG+qVuwQzCR+6upTlJgvu/0znQGYpdriqu0OcnrdwPhzWUPCHaj32SgT7J+oFNEo/B5ddPV7MkiCcrhiRildep5igIObp5E06/hlh3XMg33Z9ipMKL1bGQ/3Oxvs0v6F1gGVjNLoycRBgDg7LwzB2Sxwud6sx5jV5nXB5DBcejxy06IeaVF/ZjiOt69ClX/ojGQIjxSRJE= +10.212.40.80 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJBNgC2vXbdAYaHT2qfiJOh6dbSXpU5PmzHXiy8qLpDTko6/Xg0DxJwtjpBFJU82C/OGjRIrh0tZ3MHlNWFhBIU= +10.212.40.80 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBsBtMv835Kea1ECjRW/pCVsuLvPb7g0rbBmAiCr2L31 +10.212.40.80 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDNuqbGS8b4EH/6ifGgHk80XMRpg7iVqWpp2bVH6qe9NKCblwNIIhr++z5aV04JDtbI4rn2Qbf7mnPFcWMlSHPUFlNknDuUsti/JOVxnbIOBXG4qMl6fyhkuwCZlDRmt+cmiJOW1raS7PPNHSXROhrw1EM/QA+q3gc5B1NaGAgJQmqYK2vHWWAOQItQ+W52aSXpjZrVcwCdbsuOuQr7o1q+xo85aHxXZcnf9/qHgacuT9xWKWjIzFdecJ9n72+neLCUM3mAnQIG3gDgDNCeil/7cBUe5Qo2oaIwXPyh8kGbNCXb6rCHG61jICQH4+7RSs0Y1GOnfNAllA4FH6K8uhraaZL+YBfr9fUv3/JUdpj5xG97738kQybM/mZOORYFLcn1aS91al+p/GjWmwfAX8bZtp6a9vuTgieu1eEShWwE4S7bMblRida5VLxrlQvfRypjqseI8DCC4StvF5QHZhDLbokMRWYE/7PRRc0HRgVeutxag1OSD5fFr9ehYzdpvCc= +10.212.40.86 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKKqu6ocD+UyBm7lfs9wyDEsUctW0YtoVMhSZ+6ns++rBOY9/Bfci4Qt8AylzAikKkZkCyiUdgAXQlbgc8iNjQ4= +10.212.40.86 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIL3ik93PvApaKv5WaRy4ADRh2bTNQDLMjAX6SpePv9ls +10.212.40.86 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQChMVElsD6IFea7WZoG8T8Gqv3+TZeLgiYx8Vmo6zFEKp05rghtSfcUImitFY9PV5iazV0rYKzt6L8Aj0ECc7e9tOjyyoyirEHL5/MxPYquB0dhFZBQ4cPsGbU5u1O5Hihy8vhrM/Cg1znjH9GxvrVAs3dgFRyzBHKeDpKW17BD1CATlf6CdtBm34+PKsZVASvMbTCXpGLgarLNMDYyRXO7fx8H3apCreuwSMZ30rzaedY9Pjzc0n5+Aj9d3rsZTPJ971DCsXHUzOJiwmbN32sXp4kFuuL8Zcjq2FgJUvf1jkhGh29ms+ExZIOHQg2PCoYUyu4/m05gBwaUzBJSAtGIMOj5bl8OZC+ipijY5dYak4rclts8QzMAl77qlxDUtnwnErF7KcURbmInRLv3AatmtB1uOTOaz1kgiiXUaG0z574O9VOEQEaZYZUCCSk9xtTjawMnl2oae+tr0YKoqFV0YGsIVTTWD2Wr8dB5h03gnZvlf9JYNUeHfUQhRZa6CF0= +10.212.40.90 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKiYZfb3rm64JHRoeHCBq00Qa/pYSnKrBISoL2T/GmO7T/eHfZn/OflQWYCMJhtjx83YB2V02JlJZuinp8/wNpU= +10.212.40.90 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICnQw/GO9V9sjKppsBfOuwwdoPSOisLXvQ1DR/EQnyKM +10.212.40.90 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCrKSp07ZAD4DR65lasTvxV4nuXi+wqqhKD0rL4E07J2ARTlBS8c6wyXnoRIAZI5+9jSvDuVa3llwhYTf4k7GmJAAbw3EAmsib7RyW9Brjd8tAt3Ss5kXnnp+t6FCXuKe2l5m52lBDAhogkpglsvet4lUTYEsLzGaElY5CFH4DA3tyA2zPvzoCTV3qe4phogppbu8JX2d3o0lH44AiTgxpZgI+EWHWeOFazzn1xtkNO3Y/cJuZbM1YUck/wO403RZ3FTgXj6zYyABRiY8ovjMcPtmXOXjFQq0is8X5uE9/2e0g8lxQYHhHgirQNGN+RduNaAcvlGOgxWB8BZCpV5cSwpSHEDBV0BEpnzuTU8P2SDitrRYV9sJEKcGcw3gwiQBvCovzMeBxCsiktkRB9Or6nGn3yEtxeB1nbA/Q5+1Qc6Rz9nPOUGhS8zvtXRTfdWngEOrR0vKAzRLSnxFUt+5elyyDTzO727B2CIox5l5FcdIvHbGc+DJVNVynDlRu/UYM= +10.212.41.130 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBMCZZcxbnHwBhn6ddBFDidfD23uxGVw21fRHunqWHsaiQ9LAeU11RDyqo3CmgAhc0il2RR95x/P2gcC+Lfsw/ws= +10.212.41.130 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKzJ3vP2EwM/PPWuV1s+avFCS7Mg7EOhaCaPcKhX8FMy +10.212.41.130 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC6gF4E5cBtuTU38mqpFtgrvkcxWtJxA1mPH+3ZzF8yXUzS16N7QhQ+v8pBrb9pbnWt7LTrooFsu4GzlxgYF3xawu5Cg0f1D2ntzzZ26TfMMadzedXuWXcYIAhAcawVCI88Yxp2y+/RvhvqUypVAAXK4Rkd0/eNLgo/rROzgAtjHFaH2XAJQtkSqYsCSKdpK/PnZtEUJVUP33cXb8TBawL96jUKu83cNIagozMXAHQYqJ7A/+nhasVvTf7OkwOnQP2P3y58X1ZLYrh9+iR3J0JAMx+IftwEEV7GP2jzxDn6lbwX8bonqC0sr8sGtB4J0D1bVQYU/SwOpPXb/LqGlUCXrQud9MXfv+5uQXx0/y8ZOWM1dZxNQmEw202uBXzbbA/N5HEmJ4I8+Bqwez97CBlp50j055oGQST4LCYuUVwwMj988W9PDyY6DC7V6uBqB0mPdI+73ReQhZetYHfEKwsxyKCXoqONcRKK2tzyPHdHM5rAkq3MECWOfCxZ3ziO1bU= +10.212.41.132 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBH5SoXe0mHlL2Ll0AtNSkwhTXvX8sQJP67M0OMceZuPfCp7C7gi4Qk1qIZgDEv9wW2kNAqWFbQkT2sUG0iFfkF8= +10.212.41.132 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHpz7JilpvqgBODEG6muwwMaZqAmtkkWeidL5xHFmonK +10.212.41.132 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCoNPHstZysY6mktn1X9ruuK8/nUq/OO3OAaVy2N3iPuActIh8t1OQmWbEyXEQR6yT1bD5jcir6G85CwJyfE0MCdSdO7jHmWunAOcLGLcaPxYfapp16fdJ0EUKi92g/DKO/Ufb7XGCCo8ZOydj0drDYq+nyrOSVb15vkD9YtbDBLP+89dExiocLoGGOJPvxauWOPfwXsq7sTB+Shksh/HCcbrxqaFScXnZ1RQVdzpu3kkx1HKwWPmjk+UHvhe+ZGUYb+n2hZjsKhOFBacxeFdbkLkp0AsiFaA62EjEImxDi5vNCQJ/497TxXfAfM46t8URAL/ph/SyHCu2McFNrXQ0ddoIGt0WKwBHnWdmzombR7upYZbmc4BxpNUIjGjnxHZBfjgN/kHQ5PSFlr8zJ8yHq2SIZY84BlEwnzloPNkSXGwGSfS/yB3oIqLlfPRO1Xy3mxUENGAwmdsuABVL9nM8QJr9LIcrI/Mze98eQ0seb0S4fKa/Qm0N3M6HpKQZ1KNk= +10.212.41.144 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBLVdHS8JqG2hmtjtwi4JnkwpTmKkjAEa96RmNFD3lLD3CyEmyWljso81vctUtkefrHU+PSGr8yWy0N3xOSUKJqQ= +10.212.41.144 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINiqZRbgQ3SQLCy+Wy8X9B2FLn9DP5tVycJFRiuWPB7k +10.212.41.144 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCyOYnFI5W15t9+ub8HT7JxROKvMFqj/0vUL4JHXsDpcjywpRLTqYPBIuj5Zx2C5fUHGQDrNAwHY307z+/K9KgFnun9kF0pLIQLwE2Ll9S6mVAPgcgi+9LVAR2QHcGB8p+uKHCZq10/ojSFnWCGDLIv2GH/oZMsweF8u11hCGRWRGVomBBy+M2TqcdgU3oEo0IuxnY3WCEd55hJ15Nq3b3oMb11qHeTIkgmPIAoq0gFmwtBi7VlJJQ+U8inNNk+CCNkbLlqCueX2+NsMb4m5SmE5c8kvqG4J7lQyicaVwAd+Xa4F1H0u6QQN5ntwZTFYUPlRioCEU8KRjjpctld/r2k1dG5xSYEb6HYe19tlReNqYXbgEFb67rk122M8g/Cdx8YT+cShE3+h/qe2OhYQXx6W1S+xpVUQXaoRyYJ3evjBro0544MV2x894H3qPeItZvyPomm9tqs/Gq6/To68uwwhVre4IUuMnQP78dAOOtAaO/j6x7j5LoqQ1ZuciceEhs= +10.212.41.168 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBKSAdZjqhu3ckx9Ey8TQ4P62piAn2TC0yIeMGe8Yeut/21RQpCIEZyqb7B+lE/gllHqLhZhXg/m0wY2Zcsgzld4= +10.212.41.168 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPezjKE4psVFID68PXcy3M9a0w8Xna6F5DPlOOXrfz9T +10.212.41.168 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCqdG4CynAGryyaX5RQjJJny49ywfqjLKoskEoD3QVgCMPVLn+VRXxAlb5yULEjH26/LtQ0GmfIrt+PTEeQEWTTZiQ7flTlFlHstBVPsCbFky04MGbGI41Fg9wAyH114NCn9qkwOQFLVMowDhZsSLdx8s6t9b6HdscHyjcLeP2r5Z/UTHUuZgE/3wYwqhvU5pCoL4O+vLjPaW1t6si0GkFK709rJrAyzcAQKDmHU56uay9uY1kjNXu4XVE7i4TiSWIY84MiMyJRC/ZI9RMgTlT7rgXni7EQgPpprwPorCA4IkUw+xIQfD+Ude6hDfVZN+iBGAyLpAa2oPo6EPT+hwRLBwhjI5g1QL8Ele5YCmkbiiszuRpBVxbsrk67QhV6xdZXQt/pBxLrcX6bQivB0/+klpl3P7JaOqv11Cfx43T23chH4p+4QCRmHQ5ZXnfBQuWPFbJVPUHro90Dlvr+Qb6XXLroAIPSo9AWa6C7B0BFlfAX0ymSZakXdDE1j0uRmGk= +10.212.41.188 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBLKQOKMdy9KVP5trZWz5vR1xTXMq3tQAcrzvjo6QVz2tiRKfTwU9h+zj+qRKm3twUAcxFTwat1q9DgIuLBhbsN8= +10.212.41.188 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGsJxZhlwr7LSndxux7Fnz6GTK3F4MmsPhBQDRC5Y5A8 +10.212.41.188 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCF8De+A6Z/Drab6zoJILEzZZ7sZUth8oDUR4lNKqLmKXmM0xiuw5hA3TKFvCp8w7WEos2JDvAt9Hc4uR5gUPVdwu6Yg6VrPWmUv8Nnvo6N4/yIh2zRYHypEpMVXGzVyUJ2DKFOweMKLxK+poZWCVio7dKn18JTWvrVT6lrcKv2y84B9om0EWAun2GkcsaqGP4/b4O8ZMjnrYmoLbRzKwMU+q7GC6eGjAhq60kdZKylS++pyJbCJjZWO9A9mG+TAFqVvsoxnoq8hbcReHwZ1PTiVyq0ce3rhIjgYYUxgU4X735SB9oJvvBenhI4u0A90GXo3sPgQtll94jQ27cvtlMMRNk8CwFaPX4xWTwF1Cpt4Q3hTd6psO92DrDgQ2oddF32DLbASO72eOg2Tp4clQZlLBC/ocLIsV4JTcL1GSRuOal8vgJws9RM4tpJ3ncZjhAskaQVbjWolUaf4UiJSD6EkAwIjpg39z/haiUchPfFol29pupWU0cuqtV0djkzQxc= +10.212.41.217 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCNKVTimtGrS8YWu+9tDDH6owrExNtVDGDyoXN2alR7wVeSQ+Gkd/ZqYpMbCY/ZJ3N/WSJIEvfnb6n1bgfEiDfQ= +10.212.41.217 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHvn/eEVzfWCx8LTu3pt246VuQm3CzEjELmfoWLWc+ez +10.212.41.217 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC/b26LwmMX6j0Sk7vA3Za4W2qBB1EhJ9iA3+ft8eP/VJ7b+VmUhe8ffEMmeweMIPiGogupSchcbJw/FqxKQjjPy15EGTR5buGWISK2U+UiSlfwQ/d4dZ5LK8j3ABjUZR03a+pN4tKAbaUce62kuOmP0QAYJO6DD2GNNZuFJi69Q1PtpZyPxRd6pOM6yK14thQncJ86AWqR+tHZU+vowFW/cmpScODuqkQIqCO26PUltVc5+lT7oDjbXlznH9y1tG2cdaK8p16K7zD8D/+3MWYTmefp/MfkZAMBHYZpHivckIEZ5/eEtsw7fU/ZEpA7NqsV7cAzcR0i3wcJxXl84qR9Pi4M4t9Xs+UIay/17DTWGB6x9SzUsyEYBkb+fzR+Dca2FCELJGKMwXaVwtOKUWpWEIH78toucyWnaTdAOxPrxsxQ0jPTRHl6CP1SLUS0mkVAIEhNX3WGNwd78n8PFlPbKA7g2ayy/ZmF7AMGt7wSDmRqQ4iK8scFNdoLZYupmE8= +10.212.41.224 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPu3Uv++GRMy5aHbXo6l8CU7HB78q3Lt3pIG0Lr+xNUS5jo1tTU7921MnO/bamurJtx8c9pRHRbcSq6NnW8C4VA= +10.212.41.224 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIK0R2csVtVOJDesZOb5AkgobtGC6cNUJ3bPgX7bC25eD +10.212.41.224 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDKWsaUynIrxqFI92SZ9xAtpiYaCtneAyz3V+sEs3hlul8/fzD0HiBTZLC8bW4dtFiRX+imHNSfLgBJQ0qlLcvKgdIDc3Q6aEcrDk4TkRltPFiZaAZsQdVBGW8I/5OGi+2C401X+lJY/RX4/ypSXZ13UskrS0W0r67zgxpm08+HvHTbJ5KuMbkBEhTEJK2uktcVuwv02kyS+a4CwSR8sa+0EPAYmkHD8SsrUJSOL9T/rcIXGC5Y/mfDH2SuEK6Dr/W3vDkhIlta2Pvdh8aGcpP6hRamuv9oQ8RwwvC67nGBNfyQ6zoeCqP+oSuCZayfbHt9kJ+pEM4Q5Rib/0gaGvyAwOA10NFA14hrygOsdmcExd/1w4+Vw1is1QoR+gtdE1AokrynezKxKpqsOS6Jam0sMml2yklWN3xGDE0h8v2h6SYvMNBxu6dnGXD6kVVZBeLgE9049dsUSaj8RfkY7PMQ6CE4oqxxYs3Y/PGD9REtzZeuCtvx62dhpSWoc1Owa/0= +10.212.41.26 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBE4FzdRc86on7nNBE4bi1HyaSeODpUwuTkIfjkUP5WrSA21gCT1MKALaOPg1ucTh6pI2c8OMSX31g4wA1qr6OMQ= +10.212.41.26 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAmVx9wqm85uqSNtHP+zJCEtSfdBK5frBIM6js6b0TMJ +10.212.41.26 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDu414GXEqJsLib6a3cw9Wn95JiuMYpHts1XBpnGPFSMAHvUWu9bbz8u7JzWECMX3XKCWkEoAPiHsbNKpq4B8ebPBYxJDnYVBw1eV9AbmM8qULc7VeKQz3jAZD7fEm7ls1X6ZLYoHNZdFg8MzdJKoLFS728YvzfQiD+O1QuDoka7z9BClBZDsRZx/EvXMTbBHuoDRl3EDRC28XhQL3FRkOLIPXQwx5mO0IpxSzmrK/l6KTjG8jZwDYlvumt1MHtT1Bywa0gntw207SI6kYPKWMQxZaf+/8WxLZQtloLGDePJhvbahwldcprOUSUSZ/CxO8FqysXiSasvEPz51ZZ8x2sF0xM+j1WulIAvtMqWBaefeorFfU+Q8ci1ZmRIEkNgkZljzcp47Rp15Up9YS4gWkH5YX8Yltt5UZXQh2EicNlZBjfIbB195FyKMWPgAp5ORCa5cxY+TSHerz/jofmUFi1DdpCmnTi0jWODqOFu3xb5ZOT7+hZCumlb6SSHbDmJuM= +10.212.41.29 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBfC/9gzaGl0KoxfpySByo/SYTCZfQFf8zP/Qeb7x8QOScadcRu8tN/CUwQfQ8QdVIHk0Pq3dEVjAhhp0skGNiM= +10.212.41.29 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIO7JCu7px9xKzWDIVK6Yf5FSeozmPvaiu4uOabIMWNp+ +10.212.41.29 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDVtcmEp15W9e1DnRP5HQ2jYSYvo+wFRDGCYVJ14WVuJHQ2pnmvY9iR9/rncUTB/Gp+4lyMuvds8nKArWHu0GqjscYO8zjuMVpUtl4qu/zf44NyDwEhTpIafBhFEcda10/y896CQKDBTAGUOk0WUSkBGlCf/cD8hxgyKV8+XvsjxPq3H6ddoDF2g2wOnWGwBf9E1eYkUmwF/2pvlwFAfZkJJi3bpVX20umoxVGLwNQiFP7dFuA4YXxQHtDcKHL048xxST4bN3vk7PYAyxwE0riYlUbD/8TljH/95mh9CWoweZJMH/h54Lbn0oZkBlqsxl67dQaVS4hBdaLrHGqyTWTTcpoqyo3262LD0lOq4oDkSp6DunNGJTMjjjF2IrCLEQnJokm2l6DZQLCDi/eQp1PslQo5ZsHUL/KJpP7/6pxa0VVJOQ8/rNtBSZLQ4b52nfxZHWQH5AJZvS+eObWSlH/S/pb+v1EbK71Fcj3ehK6jsAPTE7QWQHEC6e+YW1Efozs= +10.212.41.30 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPxQM2ddXdmknjTTtx78MnBwtA+Gj48nzc2xplkg8I7gOQHq5IqAnNcUYSbelCLDZ/BqQphWgAJ4HWAbPyVGVIA= +10.212.41.30 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKD1UBAfFCufDJ/en34Z2ZWPL5psLvHhZUYLkG3a4VE7 +10.212.41.30 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQC3Ih2y16VOd7yNJ65wwrETPwAMjzw9bj4P7e6JyVZmtWyTTcgSRBcctvHeC9eJ+wHjV/MBxUSlQ1ZFgfDnB2lT3EnJxc2bx11PEhKAcCpMBXEbO1OykCatvk9C3sM+yPAhzOJ8ajv5eSHB1FTV3OLwj21GjfnWo08GBVOjv/wK8zxOp90tyg3H+QXW8qmvUQbsPt426zPy61ytR3qOEoCAGWqsfQe/D6hYloApD29F+ohgEJB0zcZEgAUrBSzIKZzIaw4w778cTme0X7+vIRzApZwvQmSm1IqJcKkJTnhEcHXMnhkOW51yzllujRWculKeh3jL8JKpU7jIOBm/1YrY3Ue6L4ojgSBmHHRtORC3H4mjTPraHq2frXjpBbzj+VCfhi8RAKMAU1vsf3ZyAoVR3/rdSWrYQCPjZjEnwoFtiHB2XRXaxLXaLwuPbqTib1Y0GHjyB5IGb+CEfRaBahV/1gtvUzDzDYqXf2+oLs+2p7372oG0suxHGZlyw7gtm5M= +10.212.41.52 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBDlJD/mrzPPe0G6muq6LOEUuS6mWtcLd2I6PqUTCYBzgK7+QLZzq7W9H0iIsWj1HlIt+YRWc5tN8DFMegN5U7zE= +10.212.41.52 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJcnC3Rbfhm6kB9XwBSELlaAHO4ED1Z3Sq92b5J420rH +10.212.41.52 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCdWnsEZDD24mOXpLO28CA8ux6l1bQ/XRUrqP6iGxUXAVvMHRlW+QF/yMJUMwaUy7l1SOsgL1htU3gmcddpvmTpx4a/JsQAtUkxdoVKnMkTHSUVqpRp7GN2EbBlldd756Xo/etRIUGHJg0duEHnxHIL3gmsmNlftSmJvZw1+5Syq9LknE/OF0dKyxdtc94B+lGrdJBn3mEhI4JqVLI/9ZgaTA5BY1TQ3MKagDVJ5+0UR7JDf8xAw1KDT5B/OM2tdkORt8iditvCCqkZ6RrBZSpCcqTqgw0HpvakqNnl9ZLdrbJJLjg0bRMrPViI5RnJFwy5quEVHc9Vbpg29NTfb9YCzguDr+lBWTotlgbP4dYe1h6sTMg5d0Sdic9f+Z8d/Xpg/6PWe2Q5yv4ip6UqxtqpH3df2eooujmc5nu8iUgG1x9+rS1H8ZXRWvdgqFzAKeHHQ1070NcZl7nNdrPEVdN0S4Cyep29HXc2Dj6Ktyhmgx4wa8SAn7XZt8yZe0Wfjek= +10.212.41.70 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBIRdgpJzGhn+Ig7QKLWTxXzBjxoXwcmUsFVtQXY2mNc+vQXKg9IGXWKfo0zEGguR8UKSgpOaBLC3nuPIaDG8KKg= +10.212.41.70 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG7kauTmJj0k6+f44+ZLsXq5YqGWiLcwr41J0kvsxs9+ +10.212.41.70 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDMkLX/FyEGipkQbzfZooWjhrTUwmcnGLBanA5V5sb0Ez8QBj+QTGUIiMHBAYm8PrQupapB/ttBcB3d4e/7HXwyUfBPcItuUSU4H7Imtc3PZ+BsHe9GxYy8fVYxQDRAgIvh5X6X185d3adqt2wp3B6WXlpUds0WZf68ONxeOAynSsrE9Pik6tu04OJ6IzleEOKt8X84EbqHrwEf3LcilZuZvtSDqcOgPIA95nqhNPW0/7gVRElHwJz3CVUK7Bm3qXG2fmaYPoi+7nNyMfT9YBJ6T+48YVnO0c8P2RnDvbsaNJYEEfPMf0j4ojG6wOhxpLsKMElhjP/gtHwi7JkydamNgMd5IdFTu8pxjYQG7y51vIhxIf83KJsM/TL0ai/GY1mPIbayBJxoWz+klB6S9DSERbxETnqykyYt5DreuknuAjwMT8vhqEiTD8ytFH9W/iZiZS1zMs6v3fOp5cJ5XAgJE324Wy3c8ETuhkxKxQbaEFsur8hU6lwVR6HEkGF6HCU= +10.212.41.75 ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBI41QEBw5WroSM4gxSzC25zzjrta8zCYRpHcWoA54WokEla2/M0P0qE8YU8pnjQBFAru/e2BZ8QV2nAbkAQ/irU= +10.212.41.75 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBysYdwshC5ewNT/WJMCoVp8RHXzB0PpeZH1oe/poq5M +10.212.41.75 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCUTI+CGFpx9kWFgyeVurFWOPNFTDlCsv6DcRoYLScZIaWkipk27S1mrcXFkDjkfp8g3I67MROCIsjEamyAj8OVee0aGaLiT8xmAb+O9FbtiyYhNwKawn/W5qNrBqO1W3EZKDLoCUR4je1Awhf0eCCi/o25aDxaoJw8mLCQ8nfEY0apqSf9vTnXNTBYkzifNVSYKQ1j1WROSK1eJx149gEebxfJYgQ8EIeojx/RtkpL+tpQvaHhTY/ssUbRo/Xz9xEM6PP0UqMEkuKktasinJqBiNXREpvcJv4tsuSh7qyIjDcpXRi2jGBagbaKQRRQh3zqofsQN5kvfOqp32QtPPjt4YbUyOWxnP52amjnJbsbof5UMqh0KDG2YEL+8UmIlY8FIzFaqeF2T8s9YqHeUbf2gWhVLmkYvLJ5rwqyu1Lr8TxLjJMUa59gwd88N32+0X9X7qlI4IcQL/ckprfvEXtOR9/faK9b5nDDoKmu9ul3vl152Svp+EDJkLXeWRQUT4M= \ No newline at end of file From 8b12cd80c7f311d5f6145cf34cb16795a2d9e584 Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Tue, 14 Nov 2023 19:56:20 +0530 Subject: [PATCH 19/24] Remove CDN from bakcup prod env config --- environments/backup-production/public.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/environments/backup-production/public.yml b/environments/backup-production/public.yml index 4f80e9027b..66efc0907c 100644 --- a/environments/backup-production/public.yml +++ b/environments/backup-production/public.yml @@ -210,7 +210,7 @@ localsettings: SMS_QUEUE_ENABLED: False SUMOLOGIC_URL: "" STATIC_ROOT: - STATIC_CDN: 'https://d2wbnffibuhek0.cloudfront.net' # TODO: check if we need to set it + STATIC_CDN: "" STATIC_TOGGLE_STATES: mobile_ucr_linked_domain: always_enabled: From ee384005db0acee0c0b8f968f69550dbe5e63ab1 Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Fri, 17 Nov 2023 20:07:29 +0530 Subject: [PATCH 20/24] update es data hosts to 5 in backup-production env which matches prod config --- environments/backup-production/terraform.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/environments/backup-production/terraform.yml b/environments/backup-production/terraform.yml index 0c965fd1bf..8093612315 100644 --- a/environments/backup-production/terraform.yml +++ b/environments/backup-production/terraform.yml @@ -88,7 +88,7 @@ servers: volume_size: 20 group: "elasticsearch" os: jammy - count: 7 + count: 5 - server_name: "es_b1{i}-bk-production" server_instance_type: t3a.xlarge @@ -100,7 +100,7 @@ servers: volume_size: 20 group: "elasticsearch" os: jammy - count: 7 + count: 5 - server_name: "couch_a0-bk-production" server_instance_type: t3a.small From 510478207e1c2dffaff4ad7ede6f6bd94bf6dad0 Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Fri, 17 Nov 2023 22:05:09 +0530 Subject: [PATCH 21/24] run aws-fill-inventory --- environments/backup-production/aws-resources.yml | 10 +--------- environments/backup-production/inventory.ini | 12 ------------ 2 files changed, 1 insertion(+), 21 deletions(-) diff --git a/environments/backup-production/aws-resources.yml b/environments/backup-production/aws-resources.yml index 2b5b5847c7..906d9c8a44 100644 --- a/environments/backup-production/aws-resources.yml +++ b/environments/backup-production/aws-resources.yml @@ -18,10 +18,6 @@ es_a1003-bk-production: 10.212.41.30 es_a1003-bk-production.instance_id: i-078a98e8ba5c724f4 es_a1004-bk-production: 10.212.41.224 es_a1004-bk-production.instance_id: i-001feba4103a8fcc8 -es_a1005-bk-production: 10.212.41.132 -es_a1005-bk-production.instance_id: i-0bfad15df64af1f12 -es_a1006-bk-production: 10.212.41.168 -es_a1006-bk-production.instance_id: i-0e96ea7207651f2a0 es_b1000-bk-production: 10.212.40.245 es_b1000-bk-production.instance_id: i-0d9d95077b59be7cf es_b1001-bk-production: 10.212.40.68 @@ -32,10 +28,6 @@ es_b1003-bk-production: 10.212.40.15 es_b1003-bk-production.instance_id: i-0843e919706a66004 es_b1004-bk-production: 10.212.40.90 es_b1004-bk-production.instance_id: i-0b3ee03210106b082 -es_b1005-bk-production: 10.212.40.80 -es_b1005-bk-production.instance_id: i-0c874383efa695a27 -es_b1006-bk-production: 10.212.40.86 -es_b1006-bk-production.instance_id: i-0df01841987ebe251 esmaster_a0-bk-production: 10.212.41.26 esmaster_a0-bk-production.instance_id: i-0501db0ab5efd51b5 esmaster_b0-bk-production: 10.212.40.20 @@ -69,7 +61,7 @@ pillow_a000-bk-production: 10.212.11.49 pillow_a000-bk-production.instance_id: i-0754a06433fbd5e05 proxy_a0-bk-production: 10.212.21.167 proxy_a0-bk-production.instance_id: i-0b40a4c2c5a349d3a -proxy_a0-bk-production.public_ip: 3.16.89.228 +proxy_a0-bk-production.public_ip: 13.59.76.26 rabbit_a0-bk-production: 10.212.41.130 rabbit_a0-bk-production.instance_id: i-0dc29b125d34a9e29 web_a000-bk-production: 10.212.11.97 diff --git a/environments/backup-production/inventory.ini b/environments/backup-production/inventory.ini index c368eed66c..d9d0a5fbd7 100644 --- a/environments/backup-production/inventory.ini +++ b/environments/backup-production/inventory.ini @@ -207,18 +207,12 @@ webworkers 10.212.41.30 hostname=es-a1003-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-078a98e8ba5c724f4 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_a1004] 10.212.41.224 hostname=es-a1004-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-001feba4103a8fcc8 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws -[es_a1005] -10.212.41.132 hostname=es-a1005-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0bfad15df64af1f12 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws -[es_a1006] -10.212.41.168 hostname=es-a1006-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0e96ea7207651f2a0 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_a1:children] es_a1000 es_a1001 es_a1002 es_a1003 es_a1004 -es_a1005 -es_a1006 [es_b1000] 10.212.40.245 hostname=es-b1000-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0d9d95077b59be7cf datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws @@ -230,18 +224,12 @@ es_a1006 10.212.40.15 hostname=es-b1003-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0843e919706a66004 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_b1004] 10.212.40.90 hostname=es-b1004-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0b3ee03210106b082 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws -[es_b1005] -10.212.40.80 hostname=es-b1005-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0c874383efa695a27 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws -[es_b1006] -10.212.40.86 hostname=es-b1006-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0df01841987ebe251 datavol_device=/dev/sdf datavol_device1=/dev/sdf is_datavol_ebsnvme=yes root_encryption_mode=aws [es_b1:children] es_b1000 es_b1001 es_b1002 es_b1003 es_b1004 -es_b1005 -es_b1006 [esmaster_a0] 10.212.41.26 hostname=esmaster-a0-bk-production ufw_private_interface=ens5 ansible_python_interpreter=/usr/bin/python3 ec2_instance_id=i-0501db0ab5efd51b5 root_encryption_mode=aws elasticsearch_node_name=esmaster_a0 From 5e15b018d0d923208a2f14a4930d1f1e7abff932 Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Fri, 17 Nov 2023 23:34:37 +0530 Subject: [PATCH 22/24] remove hardcoded es memory conf from backup prod env --- environments/backup-production/public.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/environments/backup-production/public.yml b/environments/backup-production/public.yml index 66efc0907c..19344b639f 100644 --- a/environments/backup-production/public.yml +++ b/environments/backup-production/public.yml @@ -34,7 +34,6 @@ elasticsearch_endpoint: '{{ groups.elasticsearch.0 }}' elasticsearch_cluster_name: 'prodhqes-1.x' elasticsearch_version: 5.6.16 elasticsearch_download_sha256: 6b035a59337d571ab70cea72cc55225c027ad142fbb07fd8984e54261657c77f. -elasticsearch_memory: '4096m' #elasticsearch_node_name: '???' elasticsearch_fielddata_cache_size: "40%" elasticsearch_delete_old_logs: True From 659c8fe38cc063c03715b3d2903a05c7902b5dc9 Mon Sep 17 00:00:00 2001 From: Daniel Roberts Date: Fri, 17 Nov 2023 15:55:45 -0600 Subject: [PATCH 23/24] Use seperate repeaters db in backup-production (just like in production) --- environments/backup-production/postgresql.yml | 6 ++++++ environments/backup-production/public.yml | 1 + 2 files changed, 7 insertions(+) diff --git a/environments/backup-production/postgresql.yml b/environments/backup-production/postgresql.yml index fe33d8478d..991a4624a1 100644 --- a/environments/backup-production/postgresql.yml +++ b/environments/backup-production/postgresql.yml @@ -69,6 +69,12 @@ dbs: pgbouncer_hosts: - pgbouncer_a0 + repeaters: + host: rds_pgmain0 + pgbouncer_endpoint: pgmain_nlb + pgbouncer_hosts: + - pgbouncer_a0 + form_processing: proxy: host: pgbouncer_a0 diff --git a/environments/backup-production/public.yml b/environments/backup-production/public.yml index 19344b639f..d81cb4ecf3 100644 --- a/environments/backup-production/public.yml +++ b/environments/backup-production/public.yml @@ -192,6 +192,7 @@ localsettings: J2ME_ADDRESS: "" LOCAL_CUSTOM_DB_ROUTING: auditcare: auditcare + repeaters: repeaters LOCAL_MIDDLEWARE: - 'django.middleware.security.SecurityMiddleware' PILLOWTOP_MACHINE_ID: hqdb0 From 21bc17b0f9406cf9cda771705a8d2f7717fe2adf Mon Sep 17 00:00:00 2001 From: Amit Phulera Date: Wed, 29 Nov 2023 11:26:51 +0530 Subject: [PATCH 24/24] remove unnecessary comment --- environments/backup-production/terraform.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/environments/backup-production/terraform.yml b/environments/backup-production/terraform.yml index 8093612315..49f461796f 100644 --- a/environments/backup-production/terraform.yml +++ b/environments/backup-production/terraform.yml @@ -67,7 +67,7 @@ servers: group: "elasticsearch" os: jammy volume_size: 20 - volume_encrypted: yes # I have added it to be consistent with production + volume_encrypted: yes - server_name: "esmaster_c0-bk-production" server_instance_type: t3a.xlarge