Pigsty Install Procedure

Install procedure of pigsty installation on full 4 nodes sandbox

prepare

请参考 拉起沙箱环境过程记录 拉起本地4节点虚拟机沙箱,当然您也可以用其他办法创建几台虚拟机,或直接使用现有的物理机乃至云虚拟机进行部署。

登录管理节点,并确保可以ssh sudo其他节点:

1. $ ssh meta
2. [vagrant@meta ~]$ ssh 10.10.10.10 sudo hostname -a
3. Warning: Permanently added '10.10.10.10' (ECDSA) to the list of known hosts.
4. meta
5. [vagrant@meta ~]$ ssh 10.10.10.11 sudo hostname -a
6. Warning: Permanently added '10.10.10.11' (ECDSA) to the list of known hosts.
7. node-1
8. [vagrant@meta ~]$ ssh 10.10.10.12 sudo hostname -a
9. Warning: Permanently added '10.10.10.12' (ECDSA) to the list of known hosts.
10. node-2
11. [vagrant@meta ~]$ ssh 10.10.10.13 sudo hostname -a
12. Warning: Permanently added '10.10.10.13' (ECDSA) to the list of known hosts.
13. node-3

download

下载最新的Pigsty源码包至本地,大小约1MB。

1. [vagrant@meta ~]$ bash -c "$(curl -fsSL http://download.pigsty.cc/get)"
2. [INFO] download pigsty.tgz from http://download.pigsty.cc/v1.5.1/pigsty.tgz
3. % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
4. Dload  Upload   Total   Spent    Left  Speed
5. 100  897k  100  897k    0     0  1195k      0 --:--:-- --:--:-- --:--:-- 1195k
6. [INFO] extract /tmp/pigsty.tgz to /home/vagrant/pigsty
7. [HINT] proceed with cd ~/pigsty; ./configure; ./infra.yml;

使用源码包中自带的download脚本,下载离线软件包(可选)

1. [vagrant@meta ~]$ cd ./pigsty
2. [vagrant@meta pigsty]$ ./download pkg
3. [ OK ] download from CDN http://download.pigsty.cc/v1.5.1/pkg.tgz to /tmp/pkg.tgz
4. % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
5. Dload  Upload   Total   Spent    Left  Speed
6. 100 1075M  100 1075M    0     0  10.6M      0  0:01:40  0:01:40 --:--:-- 10.0M
7. [ OK ] repo = extract from /tmp/pkg.tgz
8. [ OK ] repo file = /etc/yum.repos.d/pigsty-local.repo

configure

使用标准的 demo 模板进行 配置过程

1. [vagrant@meta pigsty]$ ./configure -m demo
2. [ OK ] cache = download from internet
3. configure pigsty v1.5.1 begin
4. [ OK ] kernel = Linux
5. [ OK ] machine = x86_64
6. [ OK ] release = 7.8.2003 , perfect
7. [ OK ] sudo = vagrant ok
8. [ OK ] ssh = vagrant@127.0.0.1 ok
9. [WARN] Multiple IP address candidates found:
10. (1) 10.0.2.15        inet 10.0.2.15/24 brd 10.0.2.255 scope global noprefixroute dynamic eth0
11. (2) 10.10.10.10        inet 10.10.10.10/24 brd 10.10.10.255 scope global noprefixroute eth1
12. [ OK ] primary_ip = 10.10.10.10 (from demo)
13. [ OK ] admin = vagrant@10.10.10.10 ok
14. [ OK ] mode = demo (manually set)
15. [ OK ] spec = mini (cpu = 2)
16. [ OK ] config = demo @ 10.10.10.10
17. [ OK ] cache = /tmp/pkg.tgz exists
18. [ OK ] repo = /www/pigsty ok
19. [ OK ] repo file = /etc/yum.repos.d/pigsty-local.repo
20. [ OK ] utils = install from local file repo
21. [ OK ] ansible = ansible 2.9.27
22. configure pigsty done. Use 'make install' to proceed

install

使用 make install 在本机上完成安装,这实际上是执行了 infra.yml 剧本

make install

``` 1. [vagrant@meta pigsty]$ make install 2. ./infra.yml

  1. PLAY [Node Identity] ***************

  2. TASK [Overwrite node_cluster] ************

  3. ok: [10.10.10.10]

  4. TASK [Overwrite nodename] ************

  5. ok: [10.10.10.10]

  6. TASK [debug] *************

  7. ok: [10.10.10.10] => {
  8. "msg": "ins=pg-meta-1 cls=pg-meta"
  9. }

  10. PLAY [Infra Bootstrap] *************

  11. TASK [environ : Create pigsty resource dirs on /etc/pigsty] ******

  12. changed: [10.10.10.10] => (item=/etc/pigsty)
  13. changed: [10.10.10.10] => (item=/etc/pigsty/playbooks)
  14. changed: [10.10.10.10] => (item=/etc/pigsty/dashboards)
  15. changed: [10.10.10.10] => (item=/etc/pigsty/datasources)

  16. TASK [environ : Create patronictl resource] **********

  17. changed: [10.10.10.10]

  18. TASK [environ : Get current username] **********

  19. ok: [10.10.10.10]

  20. TASK [environ : Create admin user ssh key pair if not exists] ******

  21. ok: [10.10.10.10]

  22. TASK [environ : Write default user credential to pgpass] *********

  23. changed: [10.10.10.10] => (item=::*:replicator:DBUser.Replicator)
  24. changed: [10.10.10.10] => (item=::*:dbuser_monitor:DBUser.Monitor)
  25. changed: [10.10.10.10] => (item=::*:dbuser_dba:DBUser.DBA)

  26. TASK [environ : Write default meta service to pg_service] ********

  27. changed: [10.10.10.10]

  28. TASK [environ : Write servers.json to home dir] ********

  29. changed: [10.10.10.10]

  30. TASK [Set environment for admin user] **********

  31. changed: [10.10.10.10]

  32. TASK [Enable environment for admin user] *********

  33. changed: [10.10.10.10]

  34. TASK [Create local repo directory] *************

  35. ok: [10.10.10.10]

  36. TASK [Backup & remove existing repos] **********

  37. changed: [10.10.10.10]

  38. TASK [Add required upstream repos] *************

  39. [WARNING]: Using a variable for a task's 'args' is unsafe in some situations (see
  40. https://docs.ansible.com/ansible/devel/reference_appendices/faq.html#argsplat-unsafe)
  41. changed: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'CentOS-$releasever - Base', u'baseurl': [u'https://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/os/$basearch/', u'http://mirrors.aliyun.com/centos/$releasever/os/$basearch/', u'http://mirror.centos.org/centos/$releasever/os/$basearch/'], u'name': u'base'})
  42. changed: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'CentOS-$releasever - Updates', u'baseurl': [u'https://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/updates/$basearch/', u'http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/', u'http://mirror.centos.org/centos/$releasever/updates/$basearch/'], u'name': u'updates'})
  43. changed: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'CentOS-$releasever - Extras', u'baseurl': [u'https://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/extras/$basearch/', u'http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/', u'http://mirror.centos.org/centos/$releasever/extras/$basearch/'], u'name': u'extras'})
  44. changed: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'CentOS $releasever - epel', u'baseurl': [u'https://mirrors.tuna.tsinghua.edu.cn/epel/$releasever/$basearch', u'http://mirrors.aliyun.com/epel/$releasever/$basearch', u'http://download.fedoraproject.org/pub/epel/$releasever/$basearch'], u'name': u'epel'})
  45. changed: [10.10.10.10] => (item={u'gpgcheck': False, u'enabled': True, u'description': u'Grafana', u'baseurl': [u'https://mirrors.tuna.tsinghua.edu.cn/grafana/yum/rpm', u'https://packages.grafana.com/oss/rpm'], u'name': u'grafana'})
  46. changed: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'Prometheus and exporters', u'baseurl': u'https://packagecloud.io/prometheus-rpm/release/el/$releasever/$basearch', u'name': u'prometheus'})
  47. changed: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'PostgreSQL common RPMs for RHEL/CentOS $releasever - $basearch', u'baseurl': [u'http://mirrors.tuna.tsinghua.edu.cn/postgresql/repos/yum/common/redhat/rhel-$releasever-$basearch', u'https://download.postgresql.org/pub/repos/yum/common/redhat/rhel-$releasever-$basearch'], u'name': u'pgdg-common'})
  48. changed: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'PostgreSQL 14 for RHEL/CentOS $releasever - $basearch', u'baseurl': [u'https://mirrors.tuna.tsinghua.edu.cn/postgresql/repos/yum/14/redhat/rhel-$releasever-$basearch', u'https://download.postgresql.org/pub/repos/yum/14/redhat/rhel-$releasever-$basearch'], u'name': u'pgdg14'})
  49. changed: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'TimescaleDB for RHEL/CentOS $releasever - $basearch', u'baseurl': [u'https://packagecloud.io/timescale/timescaledb/el/7/$basearch'], u'name': u'timescaledb'})
  50. changed: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'CentOS-$releasever - SCLo', u'baseurl': u'http://mirrors.aliyun.com/centos/$releasever/sclo/$basearch/sclo/', u'name': u'centos-sclo'})
  51. changed: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'CentOS-$releasever - SCLo rh', u'baseurl': u'http://mirrors.aliyun.com/centos/$releasever/sclo/$basearch/rh/', u'name': u'centos-sclo-rh'})
  52. changed: [10.10.10.10] => (item={u'gpgcheck': False, u'skip_if_unavailable': True, u'name': u'nginx', u'baseurl': u'http://nginx.org/packages/centos/$releasever/$basearch/', u'description': u'Nginx Official Yum Repo'})
  53. changed: [10.10.10.10] => (item={u'gpgcheck': False, u'skip_if_unavailable': True, u'name': u'harbottle', u'baseurl': u'https://download.copr.fedorainfracloud.org/results/harbottle/main/epel-$releasever-$basearch/', u'description': u'Copr repo for main owned by harbottle'})
  54. changed: [10.10.10.10] => (item={u'gpgcheck': False, u'skip_if_unavailable': True, u'name': u'pg_probackup', u'baseurl': u'https://repo.postgrespro.ru/pg_probackup-forks/rpm/latest/centos-$releasever-$basearch', u'description': u'PG_PROBACKUP Centos packages for PostgresPro Standard and Enterprise - $basearch'})
  55. changed: [10.10.10.10] => (item={u'gpgcheck': False, u'skip_if_unavailable': True, u'name': u'docker-ce', u'baseurl': [u'https://mirrors.aliyun.com/docker-ce/linux/centos/$releasever/$basearch/stable', u'https://download.docker.com/linux/centos/$releasever/$basearch/stable'], u'description': u'Docker CE Stable - $basearch'})

  56. TASK [Check repo pkgs cache exists] ************

  57. ok: [10.10.10.10]

  58. TASK [Set fact whether repo_exists] ************

  59. ok: [10.10.10.10]

  60. TASK [Move upstream repo to backup] ************

  61. changed: [10.10.10.10]

  62. TASK [Add local file system repos] *************

  63. changed: [10.10.10.10]

  64. TASK [repo : Remake yum cache if not exists] *********

  65. changed: [10.10.10.10]

  66. TASK [Install repo bootstrap packages] *********

  67. changed: [10.10.10.10]

  68. TASK [Render repo nginx server files] **********

  69. changed: [10.10.10.10] => (item={u'dest': u'/etc/nginx/nginx.conf', u'src': u'nginx.conf.j2'})
  70. changed: [10.10.10.10] => (item={u'dest': u'/etc/nginx/conf.d/default.conf', u'src': u'default.conf.j2'})
  71. changed: [10.10.10.10] => (item={u'dest': u'/www/index.html', u'src': u'index.html.j2'})
  72. changed: [10.10.10.10] => (item={u'dest': u'/www/pigsty.repo', u'src': u'local.repo.j2'})

  73. TASK [Disable selinux for repo server] *********

  74. [WARNING]: SELinux state temporarily changed from 'enforcing' to 'permissive'. State change will take
  75. effect next reboot.
  76. changed: [10.10.10.10]

  77. TASK [Launch repo nginx server] **********

  78. changed: [10.10.10.10]

  79. TASK [Waits repo server online] **********

  80. ok: [10.10.10.10]

  81. TASK [Download repo packages] ************

  82. skipping: [10.10.10.10] => (item=epel-release nginx wget yum-utils yum createrepo sshpass zip unzip)
  83. skipping: [10.10.10.10] => (item=ntp chrony uuid lz4 bzip2 nc pv jq vim-enhanced make patch bash lsof wget git tuned perf ftp lrzsz rsync)
  84. skipping: [10.10.10.10] => (item=numactl grubby sysstat dstat iotop bind-utils net-tools tcpdump socat ipvsadm telnet ca-certificates keepalived)
  85. skipping: [10.10.10.10] => (item=readline zlib openssl openssh-clients libyaml libxml2 libxslt libevent perl perl-devel perl-ExtUtils*)
  86. skipping: [10.10.10.10] => (item=readline-devel zlib-devel uuid-devel libuuid-devel libxml2-devel libxslt-devel openssl-devel libicu-devel)
  87. skipping: [10.10.10.10] => (item=grafana prometheus2 pushgateway alertmanager mtail consul consul_exporter consul-template etcd dnsmasq)
  88. skipping: [10.10.10.10] => (item=node_exporter nginx_exporter blackbox_exporter redis_exporter)
  89. skipping: [10.10.10.10] => (item=ansible python python-pip python-psycopg2)
  90. skipping: [10.10.10.10] => (item=python3 python3-psycopg2 python36-requests python3-etcd python3-consul python36-urllib3 python36-idna python36-pyOpenSSL python36-cryptography)
  91. skipping: [10.10.10.10] => (item=patroni patroni-consul patroni-etcd pgbouncer pg_cli pgbadger pg_activity tail_n_mail)
  92. skipping: [10.10.10.10] => (item=pgcenter boxinfo check_postgres emaj pgbconsole pg_bloat_check pgquarrel barman barman-cli pgloader pgFormatter pitrery pspg pgxnclient PyGreSQL)
  93. skipping: [10.10.10.10] => (item=postgresql14 postgis32_14 citus_14 pglogical_14 timescaledb-2-postgresql-14 pg_repack_14 wal2json_14)
  94. skipping: [10.10.10.10] => (item=pg_qualstats_14 pg_stat_kcache_14 pg_stat_monitor_14 pg_top_14 pg_track_settings_14 pg_wait_sampling_14 pg_probackup-std-14)
  95. skipping: [10.10.10.10] => (item=pg_statement_rollback_14 system_stats_14 plproxy_14 plsh_14 pldebugger_14 plpgsql_check_14 pgmemcache_14)
  96. skipping: [10.10.10.10] => (item=mysql_fdw_14 ogr_fdw_14 tds_fdw_14 sqlite_fdw_14 firebird_fdw_14 hdfs_fdw_14 mongo_fdw_14 osm_fdw_14 pgbouncer_fdw_14)
  97. skipping: [10.10.10.10] => (item=hypopg_14 geoip_14 rum_14 hll_14 ip4r_14 prefix_14 pguri_14 tdigest_14 topn_14 periods_14)
  98. skipping: [10.10.10.10] => (item=bgw_replstatus_14 count_distinct_14 credcheck_14 ddlx_14 extra_window_functions_14 logerrors_14 mysqlcompat_14 orafce_14)
  99. skipping: [10.10.10.10] => (item=repmgr_14 pg_auth_mon_14 pg_auto_failover_14 pg_background_14 pg_bulkload_14 pg_catcheck_14 pg_comparator_14)
  100. skipping: [10.10.10.10] => (item=pg_cron_14 pg_fkpart_14 pg_jobmon_14 pg_partman_14 pg_permissions_14 pg_prioritize_14 pgagent_14)
  101. skipping: [10.10.10.10] => (item=pgaudit16_14 pgauditlogtofile_14 pgcryptokey_14 pgexportdoc_14 pgfincore_14 pgimportdoc_14 powa_14 pgmp_14 pgq_14)
  102. skipping: [10.10.10.10] => (item=pgquarrel-0.7.0-1 pgsql_tweaks_14 pgtap_14 pgtt_14 postgresql-unit_14 postgresql_anonymizer_14 postgresql_faker_14)
  103. skipping: [10.10.10.10] => (item=safeupdate_14 semver_14 set_user_14 sslutils_14 table_version_14)
  104. skipping: [10.10.10.10] => (item=clang coreutils diffutils rpm-build rpm-devel rpmlint rpmdevtools bison flex)
  105. skipping: [10.10.10.10] => (item=docker-ce docker-compose kubelet kubectl kubeadm kubernetes-cni helm)

  106. TASK [repo : Download web url packages] **********

  107. skipping: [10.10.10.10] => (item=https://github.com/Vonng/loki-rpm/releases/download/v2.5.0/loki-2.5.0.x86_64.rpm)
  108. skipping: [10.10.10.10] => (item=https://github.com/Vonng/loki-rpm/releases/download/v2.5.0/promtail-2.5.0.x86_64.rpm)
  109. skipping: [10.10.10.10] => (item=https://github.com/Vonng/pg_exporter/releases/download/v0.5.0/pg_exporter-0.5.0.x86_64.rpm)
  110. skipping: [10.10.10.10] => (item=https://github.com/cybertec-postgresql/vip-manager/releases/download/v1.0.2/vip-manager-1.0.2-1.x86_64.rpm)
  111. skipping: [10.10.10.10] => (item=https://github.com/Vonng/haproxy-rpm/releases/download/v2.5.7/haproxy-2.5.7-1.el7.x86_64.rpm)
  112. skipping: [10.10.10.10] => (item=https://github.com/Vonng/pigsty-pkg/releases/download/misc/redis-6.2.7-1.el7.remi.x86_64.rpm)
  113. skipping: [10.10.10.10] => (item=https://github.com/dalibo/pev2/releases/download/v0.24.0/pev2.tar.gz)
  114. skipping: [10.10.10.10] => (item=https://github.com/Vonng/pigsty-pkg/releases/download/misc/polysh-0.4-1.noarch.rpm)

  115. TASK [Download repo pkg dependencies] **********

  116. skipping: [10.10.10.10] => (item=epel-release nginx wget yum-utils yum createrepo sshpass zip unzip)
  117. skipping: [10.10.10.10] => (item=ntp chrony uuid lz4 bzip2 nc pv jq vim-enhanced make patch bash lsof wget git tuned perf ftp lrzsz rsync)
  118. skipping: [10.10.10.10] => (item=numactl grubby sysstat dstat iotop bind-utils net-tools tcpdump socat ipvsadm telnet ca-certificates keepalived)
  119. skipping: [10.10.10.10] => (item=readline zlib openssl openssh-clients libyaml libxml2 libxslt libevent perl perl-devel perl-ExtUtils*)
  120. skipping: [10.10.10.10] => (item=readline-devel zlib-devel uuid-devel libuuid-devel libxml2-devel libxslt-devel openssl-devel libicu-devel)
  121. skipping: [10.10.10.10] => (item=grafana prometheus2 pushgateway alertmanager mtail consul consul_exporter consul-template etcd dnsmasq)
  122. skipping: [10.10.10.10] => (item=node_exporter nginx_exporter blackbox_exporter redis_exporter)
  123. skipping: [10.10.10.10] => (item=ansible python python-pip python-psycopg2)
  124. skipping: [10.10.10.10] => (item=python3 python3-psycopg2 python36-requests python3-etcd python3-consul python36-urllib3 python36-idna python36-pyOpenSSL python36-cryptography)
  125. skipping: [10.10.10.10] => (item=patroni patroni-consul patroni-etcd pgbouncer pg_cli pgbadger pg_activity tail_n_mail)
  126. skipping: [10.10.10.10] => (item=pgcenter boxinfo check_postgres emaj pgbconsole pg_bloat_check pgquarrel barman barman-cli pgloader pgFormatter pitrery pspg pgxnclient PyGreSQL)
  127. skipping: [10.10.10.10] => (item=postgresql14 postgis32_14 citus_14 pglogical_14 timescaledb-2-postgresql-14 pg_repack_14 wal2json_14)
  128. skipping: [10.10.10.10] => (item=pg_qualstats_14 pg_stat_kcache_14 pg_stat_monitor_14 pg_top_14 pg_track_settings_14 pg_wait_sampling_14 pg_probackup-std-14)
  129. skipping: [10.10.10.10] => (item=pg_statement_rollback_14 system_stats_14 plproxy_14 plsh_14 pldebugger_14 plpgsql_check_14 pgmemcache_14)
  130. skipping: [10.10.10.10] => (item=mysql_fdw_14 ogr_fdw_14 tds_fdw_14 sqlite_fdw_14 firebird_fdw_14 hdfs_fdw_14 mongo_fdw_14 osm_fdw_14 pgbouncer_fdw_14)
  131. skipping: [10.10.10.10] => (item=hypopg_14 geoip_14 rum_14 hll_14 ip4r_14 prefix_14 pguri_14 tdigest_14 topn_14 periods_14)
  132. skipping: [10.10.10.10] => (item=bgw_replstatus_14 count_distinct_14 credcheck_14 ddlx_14 extra_window_functions_14 logerrors_14 mysqlcompat_14 orafce_14)
  133. skipping: [10.10.10.10] => (item=repmgr_14 pg_auth_mon_14 pg_auto_failover_14 pg_background_14 pg_bulkload_14 pg_catcheck_14 pg_comparator_14)
  134. skipping: [10.10.10.10] => (item=pg_cron_14 pg_fkpart_14 pg_jobmon_14 pg_partman_14 pg_permissions_14 pg_prioritize_14 pgagent_14)
  135. skipping: [10.10.10.10] => (item=pgaudit16_14 pgauditlogtofile_14 pgcryptokey_14 pgexportdoc_14 pgfincore_14 pgimportdoc_14 powa_14 pgmp_14 pgq_14)
  136. skipping: [10.10.10.10] => (item=pgquarrel-0.7.0-1 pgsql_tweaks_14 pgtap_14 pgtt_14 postgresql-unit_14 postgresql_anonymizer_14 postgresql_faker_14)
  137. skipping: [10.10.10.10] => (item=safeupdate_14 semver_14 set_user_14 sslutils_14 table_version_14)
  138. skipping: [10.10.10.10] => (item=clang coreutils diffutils rpm-build rpm-devel rpmlint rpmdevtools bison flex)
  139. skipping: [10.10.10.10] => (item=docker-ce docker-compose kubelet kubectl kubeadm kubernetes-cni helm)

  140. TASK [Create local repo] ***********

  141. skipping: [10.10.10.10]

  142. PLAY [Meta Node Init] **************

  143. TASK [Set hostname from nodename] **********

  144. changed: [10.10.10.10]

  145. TASK [node : Fetch hostname from server] *********

  146. skipping: [10.10.10.10]

  147. TASK [node : Exchange hostname among servers] ********

  148. skipping: [10.10.10.10]

  149. TASK [node : Write static dns records to /etc/hosts] *******

  150. changed: [10.10.10.10] => (item=10.10.10.10 meta pigsty p.pigsty g.pigsty a.pigsty c.pigsty l.pigsty)
  151. changed: [10.10.10.10] => (item=10.10.10.10 api.pigsty adm.pigsty cli.pigsty ddl.pigsty lab.pigsty git.pigsty sss.pigsty)

  152. TASK [node : Write extra static dns records to /etc/hosts] *******

  153. TASK [node : Get old nameservers] **********

  154. changed: [10.10.10.10]

  155. TASK [node : Write tmp resolv file] ************

  156. changed: [10.10.10.10]

  157. TASK [node : Write resolv options] *************

  158. changed: [10.10.10.10] => (item=options single-request-reopen timeout:1 rotate)
  159. changed: [10.10.10.10] => (item=domain service.consul)

  160. TASK [node : Write additional nameservers] ***********

  161. changed: [10.10.10.10] => (item=10.10.10.10)

  162. TASK [node : Append existing nameservers] ************

  163. changed: [10.10.10.10] => (item=10.0.2.3)

  164. TASK [node : Swap resolv.conf] ***********

  165. changed: [10.10.10.10]

  166. TASK [node : Node configure disable firewall] ********

  167. ok: [10.10.10.10]

  168. TASK [node : Node disable selinux by default] ********

  169. [WARNING]: SELinux state change will take effect next reboot
  170. ok: [10.10.10.10]

  171. TASK [node : Backup existing repos] ************

  172. changed: [10.10.10.10]

  173. TASK [node : Install upstream repo] ************

  174. skipping: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'CentOS-$releasever - Base', u'baseurl': [u'https://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/os/$basearch/', u'http://mirrors.aliyun.com/centos/$releasever/os/$basearch/', u'http://mirror.centos.org/centos/$releasever/os/$basearch/'], u'name': u'base'})
  175. skipping: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'CentOS-$releasever - Updates', u'baseurl': [u'https://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/updates/$basearch/', u'http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/', u'http://mirror.centos.org/centos/$releasever/updates/$basearch/'], u'name': u'updates'})
  176. skipping: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'CentOS-$releasever - Extras', u'baseurl': [u'https://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/extras/$basearch/', u'http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/', u'http://mirror.centos.org/centos/$releasever/extras/$basearch/'], u'name': u'extras'})
  177. skipping: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'CentOS $releasever - epel', u'baseurl': [u'https://mirrors.tuna.tsinghua.edu.cn/epel/$releasever/$basearch', u'http://mirrors.aliyun.com/epel/$releasever/$basearch', u'http://download.fedoraproject.org/pub/epel/$releasever/$basearch'], u'name': u'epel'})
  178. skipping: [10.10.10.10] => (item={u'gpgcheck': False, u'enabled': True, u'description': u'Grafana', u'baseurl': [u'https://mirrors.tuna.tsinghua.edu.cn/grafana/yum/rpm', u'https://packages.grafana.com/oss/rpm'], u'name': u'grafana'})
  179. skipping: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'Prometheus and exporters', u'baseurl': u'https://packagecloud.io/prometheus-rpm/release/el/$releasever/$basearch', u'name': u'prometheus'})
  180. skipping: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'PostgreSQL common RPMs for RHEL/CentOS $releasever - $basearch', u'baseurl': [u'http://mirrors.tuna.tsinghua.edu.cn/postgresql/repos/yum/common/redhat/rhel-$releasever-$basearch', u'https://download.postgresql.org/pub/repos/yum/common/redhat/rhel-$releasever-$basearch'], u'name': u'pgdg-common'})
  181. skipping: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'PostgreSQL 14 for RHEL/CentOS $releasever - $basearch', u'baseurl': [u'https://mirrors.tuna.tsinghua.edu.cn/postgresql/repos/yum/14/redhat/rhel-$releasever-$basearch', u'https://download.postgresql.org/pub/repos/yum/14/redhat/rhel-$releasever-$basearch'], u'name': u'pgdg14'})
  182. skipping: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'TimescaleDB for RHEL/CentOS $releasever - $basearch', u'baseurl': [u'https://packagecloud.io/timescale/timescaledb/el/7/$basearch'], u'name': u'timescaledb'})
  183. skipping: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'CentOS-$releasever - SCLo', u'baseurl': u'http://mirrors.aliyun.com/centos/$releasever/sclo/$basearch/sclo/', u'name': u'centos-sclo'})
  184. skipping: [10.10.10.10] => (item={u'gpgcheck': False, u'description': u'CentOS-$releasever - SCLo rh', u'baseurl': u'http://mirrors.aliyun.com/centos/$releasever/sclo/$basearch/rh/', u'name': u'centos-sclo-rh'})
  185. skipping: [10.10.10.10] => (item={u'gpgcheck': False, u'skip_if_unavailable': True, u'name': u'nginx', u'baseurl': u'http://nginx.org/packages/centos/$releasever/$basearch/', u'description': u'Nginx Official Yum Repo'})
  186. skipping: [10.10.10.10] => (item={u'gpgcheck': False, u'skip_if_unavailable': True, u'name': u'harbottle', u'baseurl': u'https://download.copr.fedorainfracloud.org/results/harbottle/main/epel-$releasever-$basearch/', u'description': u'Copr repo for main owned by harbottle'})
  187. skipping: [10.10.10.10] => (item={u'gpgcheck': False, u'skip_if_unavailable': True, u'name': u'pg_probackup', u'baseurl': u'https://repo.postgrespro.ru/pg_probackup-forks/rpm/latest/centos-$releasever-$basearch', u'description': u'PG_PROBACKUP Centos packages for PostgresPro Standard and Enterprise - $basearch'})
  188. skipping: [10.10.10.10] => (item={u'gpgcheck': False, u'skip_if_unavailable': True, u'name': u'docker-ce', u'baseurl': [u'https://mirrors.aliyun.com/docker-ce/linux/centos/$releasever/$basearch/stable', u'https://download.docker.com/linux/centos/$releasever/$basearch/stable'], u'description': u'Docker CE Stable - $basearch'})

  189. TASK [node : Install local repo] ***********

  190. changed: [10.10.10.10] => (item=http://pigsty/pigsty.repo)

  191. TASK [Install node basic packages] *************

  192. skipping: [10.10.10.10] => (item=[])

  193. TASK [Install node extra packages] *************

  194. TASK [node : Install meta specific packages] *********

  195. skipping: [10.10.10.10] => (item=[])

  196. TASK [Install node basic packages] *************

  197. changed: [10.10.10.10] => (item=[u'wget,sshpass,ntp,chrony,tuned,uuid,lz4,make,patch,bash,lsof,wget,unzip,git,ftp,vim-minimal,ca-certificates', u'numactl,grubby,sysstat,dstat,iotop,bind-utils,net-tools,tcpdump,socat,ipvsadm,telnet,tuned,nc,pv,jq,perf', u'readline,zlib,openssl,openssl-libs,openssh-clients,python3,python36-requests,node_exporter,consul,etcd,promtail'])

  198. TASK [Install node extra packages] *************

  199. TASK [node : Install meta specific packages] *********

  200. changed: [10.10.10.10] => (item=[u'grafana,prometheus2,alertmanager,loki,nginx_exporter,blackbox_exporter,pushgateway,redis,postgresql14', u'nginx,ansible,pgbadger,python-psycopg2,dnsmasq,coreutils,diffutils,polysh,docker-ce,docker-compose'])

  201. TASK [Install pip3 packages on meta node] ************

  202. changed: [10.10.10.10]

  203. TASK [node : Node configure disable numa] ************

  204. skipping: [10.10.10.10]

  205. TASK [node : Node configure disable swap] ************

  206. skipping: [10.10.10.10]

  207. TASK [node : Node configure unmount swap] ************

  208. skipping: [10.10.10.10] => (item=swap)
  209. skipping: [10.10.10.10] => (item=none)

  210. TASK [node : Node setup static network] **********

  211. changed: [10.10.10.10]

  212. TASK [node : Node configure disable firewall] ********

  213. changed: [10.10.10.10]

  214. TASK [node : Node configure disk prefetch] ***********

  215. skipping: [10.10.10.10]

  216. TASK [node : Enable linux kernel modules] ************

  217. changed: [10.10.10.10] => (item=softdog)
  218. changed: [10.10.10.10] => (item=br_netfilter)
  219. changed: [10.10.10.10] => (item=ip_vs)
  220. changed: [10.10.10.10] => (item=ip_vs_rr)
  221. ok: [10.10.10.10] => (item=ip_vs_rr)
  222. changed: [10.10.10.10] => (item=ip_vs_wrr)
  223. changed: [10.10.10.10] => (item=ip_vs_sh)

  224. TASK [node : Enable kernel module on reboot] *********

  225. changed: [10.10.10.10]

  226. TASK [node : Get config parameter page count] ********

  227. changed: [10.10.10.10]

  228. TASK [node : Get config parameter page size] *********

  229. changed: [10.10.10.10]

  230. TASK [node : Tune shmmax and shmall via mem] *********

  231. skipping: [10.10.10.10]

  232. TASK [node : Create tuned profiles] ************

  233. changed: [10.10.10.10] => (item=oltp)
  234. changed: [10.10.10.10] => (item=olap)
  235. changed: [10.10.10.10] => (item=crit)
  236. changed: [10.10.10.10] => (item=tiny)

  237. TASK [node : Render tuned profiles] ************

  238. changed: [10.10.10.10] => (item=oltp)
  239. changed: [10.10.10.10] => (item=olap)
  240. changed: [10.10.10.10] => (item=crit)
  241. changed: [10.10.10.10] => (item=tiny)

  242. TASK [node : Active tuned profile] *************

  243. changed: [10.10.10.10]

  244. TASK [node : Change additional sysctl params] ********

  245. TASK [node : Copy default user bash profile] *********

  246. changed: [10.10.10.10]

  247. TASK [Setup node default pam ulimits] **********

  248. changed: [10.10.10.10]

  249. TASK [Create node data dir if exists] **********

  250. changed: [10.10.10.10]

  251. TASK [node : Create os user group admin] *********

  252. changed: [10.10.10.10]

  253. TASK [node : Create os user admin] *************

  254. changed: [10.10.10.10]

  255. TASK [node : Grant admin group nopass sudo] **********

  256. changed: [10.10.10.10]

  257. TASK [node : Add no host checking to ssh config] ***********

  258. changed: [10.10.10.10]

  259. TASK [node : Add admin ssh no host checking] *********

  260. ok: [10.10.10.10]

  261. TASK [node : Fetch all admin public keys] ************

  262. changed: [10.10.10.10]

  263. TASK [node : Exchange all admin ssh keys] ************

  264. changed: [10.10.10.10 -> 10.10.10.10] => (item=[u'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDPzzw6XqahkKgDyQunmjTQEfs5+28oPrhW02REQBlhsw58dlTJWnfQEQFB4BTGznT5Xd4wcqp4nNNbiznWikwgD0rhYMFdxmFClyYXCDllSkzpQqFIbDlt+/9MmzSfAA64n0goffgJC1MbiZXBsrSsteNq96qGkDZpaQXp5PIeeoLiVkwI5GICGHIoKj4vnPUjzgLnRo0hr9K+bJ8os972AcbzxEh/dlMs71PRbIvPD46lxWy6zdINk1fd8XBdMmuoynVRuehUsOd72m1umLCK9fXWAilU1oSRT25y5SLQqQZ+dhHyxKL+wuu03vLHWrDGo/+0ocYEqH261JgQInF5 ansible-generated on pg-meta-1', u'10.10.10.10'])

  265. TASK [node : Install public keys] **********

  266. changed: [10.10.10.10] => (item=ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQC7IMAMNavYtWwzAJajKqwdn3ar5BhvcwCnBTxxEkXhGlCO2vfgosSAQMEflfgvkiI5nM1HIFQ8KINlx1XLO7SdL5KdInG5LIJjAFh0pujS4kNCT9a5IGvSq1BrzGqhbEcwWYdju1ZPYBcJm/MG+JD0dYCh8vfrYB/cYMD0SOmNkQ== vagrant@pigsty.com)

  267. TASK [node : Install current public key] *********

  268. ok: [10.10.10.10]

  269. TASK [Setup default node timezone] *************

  270. changed: [10.10.10.10]

  271. TASK [node : Install ntp package] **********

  272. ok: [10.10.10.10]

  273. TASK [node : Install chrony package] ***********

  274. skipping: [10.10.10.10]

  275. TASK [node : Copy the ntp.conf file] ***********

  276. changed: [10.10.10.10]

  277. TASK [node : Copy the chrony.conf template] **********

  278. changed: [10.10.10.10]

  279. TASK [node : Launch ntpd service] **********

  280. changed: [10.10.10.10]

  281. TASK [node : Launch chronyd service] ***********

  282. skipping: [10.10.10.10]

  283. TASK [node : Append /etc/crontab] **********

  284. skipping: [10.10.10.10] => (item=00 01 * * * postgres /pg/bin/pg-backup 2>>/pg/log/backup.log)
  285. skipping: [10.10.10.10] => (item=* * * * * postgres /usr/pgsql/bin/pgbench meta -nv -T10 -c2 2>>/pg/log/bench.log)

  286. TASK [node : Overwrite /etc/crontab] ***********

  287. changed: [10.10.10.10]

  288. TASK [Install docker and docker-compose] *********

  289. ok: [10.10.10.10] => (item=docker-ce)
  290. ok: [10.10.10.10] => (item=docker-compose)

  291. TASK [docker : Get current admin user] *********

  292. changed: [10.10.10.10]

  293. TASK [Add admin user to docker group] **********

  294. changed: [10.10.10.10] => (item=vagrant)
  295. changed: [10.10.10.10] => (item=dba)

  296. TASK [Make sure /etc/docker exists] ************

  297. changed: [10.10.10.10]

  298. TASK [Overwrite /etc/docker/daemon.json] *********

  299. changed: [10.10.10.10]

  300. TASK [Launch docker service unit] **********

  301. changed: [10.10.10.10]

  302. TASK [Check docker image cache exists] *********

  303. ok: [10.10.10.10]

  304. TASK [Load docker image cache if exists] *********

  305. skipping: [10.10.10.10]

  306. TASK [Check for existing consul] ***********

  307. changed: [10.10.10.10]

  308. TASK [consul : Consul exists flag fact set] **********

  309. ok: [10.10.10.10]

  310. TASK [Abort due to existing consul instance] *********

  311. skipping: [10.10.10.10]

  312. TASK [Clean existing consul instance] **********

  313. skipping: [10.10.10.10]

  314. TASK [Stop any running consul instance] **********

  315. changed: [10.10.10.10]

  316. TASK [Make sure consul is installed] ***********

  317. ok: [10.10.10.10]

  318. TASK [Create consul dir] ***********

  319. changed: [10.10.10.10] => (item=/etc/consul.d)
  320. changed: [10.10.10.10] => (item=/data/consul)

  321. TASK [consul : Fetch hostname from server if no node name is given] ******

  322. skipping: [10.10.10.10]

  323. TASK [consul : Setup nodename according to hostname] *******

  324. skipping: [10.10.10.10]

  325. TASK [Make sure consul hcl absent] *************

  326. ok: [10.10.10.10]

  327. TASK [Render consul main conf /etc/consul.d/consul.json] *********

  328. changed: [10.10.10.10]

  329. TASK [Render consul node meta /etc/consul.d/consul-meta.json] ******

  330. changed: [10.10.10.10]

  331. TASK [Get consul bootstrap expect quroum] ************

  332. ok: [10.10.10.10]

  333. TASK [Render consul server /etc/consul.d/consul-server.json] *******

  334. changed: [10.10.10.10]

  335. TASK [Render consul ui conf /etc/consul.d/consul-server.json] ******

  336. changed: [10.10.10.10]

  337. TASK [Copy consul systemd service] *************

  338. changed: [10.10.10.10]

  339. TASK [Launch consul server service] ************

  340. changed: [10.10.10.10]

  341. TASK [Wait for consul server online] ***********

  342. ok: [10.10.10.10]

  343. TASK [Launch consul agent service] *************

  344. skipping: [10.10.10.10]

  345. TASK [Wait for consul agent online] ************

  346. skipping: [10.10.10.10]

  347. TASK [Check for existing etcd] ***********

  348. changed: [10.10.10.10]

  349. TASK [etcd : Etcd exists flag fact set] **********

  350. ok: [10.10.10.10]

  351. TASK [Abort due to etcd exists] **********

  352. skipping: [10.10.10.10]

  353. TASK [Clean existing etcd instance] ************

  354. skipping: [10.10.10.10]

  355. TASK [Stop any running etcd instance] **********

  356. changed: [10.10.10.10]

  357. TASK [Create etcd dir] *************

  358. changed: [10.10.10.10] => (item=/etc/etcd)
  359. changed: [10.10.10.10] => (item=/data/etcd)

  360. TASK [etcd : Get dcs server key as dcs nodename] ***********

  361. ok: [10.10.10.10]

  362. TASK [Copy etcd server service unit] ***********

  363. changed: [10.10.10.10]

  364. TASK [Copy /etc/etcd.d/etcd.conf] **********

  365. changed: [10.10.10.10]

  366. TASK [Launch etcd server service] **********

  367. changed: [10.10.10.10]

  368. TASK [Wait for etcd server online] *************

  369. ok: [10.10.10.10]

  370. TASK [Write etcd endpoint env profile] *********

  371. changed: [10.10.10.10]

  372. PLAY [Setup Infrastructure on meta nodes] ************

  373. TASK [Create local ca directory] ***********

  374. changed: [10.10.10.10]

  375. TASK [Copy ca cert from local files] ***********

  376. skipping: [10.10.10.10] => (item=ca.key)
  377. skipping: [10.10.10.10] => (item=ca.crt)

  378. TASK [Check ca key cert exists] **********

  379. ok: [10.10.10.10]

  380. TASK [ca : Create self-signed CA key-cert] ***********

  381. changed: [10.10.10.10]

  382. TASK [nameserver : Make sure dnsmasq package installed] **********

  383. ok: [10.10.10.10]

  384. TASK [nameserver : Copy dnsmasq /etc/dnsmasq.d/config] *******

  385. changed: [10.10.10.10]

  386. TASK [nameserver : Add dynamic dns records to meta] ********

  387. changed: [10.10.10.10] => (item=10.10.10.2 pg-meta)
  388. changed: [10.10.10.10] => (item=10.10.10.3 pg-test)
  389. changed: [10.10.10.10] => (item=10.10.10.10 pg-meta-1)
  390. changed: [10.10.10.10] => (item=10.10.10.11 pg-test-1)
  391. changed: [10.10.10.10] => (item=10.10.10.12 pg-test-2)
  392. changed: [10.10.10.10] => (item=10.10.10.13 pg-test-3)

  393. TASK [nameserver : Launch meta dnsmasq service] ********

  394. skipping: [10.10.10.10]

  395. TASK [nameserver : Wait for meta dnsmasq online] ***********

  396. skipping: [10.10.10.10]

  397. TASK [Make sure nginx installed] ***********

  398. ok: [10.10.10.10]

  399. TASK [nginx : Create local html directory] ***********

  400. ok: [10.10.10.10] => (item=/www)
  401. changed: [10.10.10.10] => (item=/www/pev2)
  402. changed: [10.10.10.10] => (item=/www/docs)
  403. changed: [10.10.10.10] => (item=/www/logs)
  404. changed: [10.10.10.10] => (item=/www/schema)
  405. changed: [10.10.10.10] => (item=/www/report)

  406. TASK [nginx : Copy pigsty logo file] ***********

  407. changed: [10.10.10.10]

  408. TASK [Render default nginx home page] **********

  409. changed: [10.10.10.10]

  410. TASK [Create nginx haproxy config dir] *********

  411. changed: [10.10.10.10]

  412. TASK [Copy nginx main config] ************

  413. changed: [10.10.10.10]

  414. TASK [Copy nginx default config] ***********

  415. changed: [10.10.10.10]

  416. TASK [Copy nginx upstream conf] **********

  417. skipping: [10.10.10.10] => (item={u'domain': u'pigsty', u'endpoint': u'10.10.10.10:80', u'name': u'home'})
  418. changed: [10.10.10.10] => (item={u'domain': u'g.pigsty', u'endpoint': u'10.10.10.10:3000', u'name': u'grafana'})
  419. changed: [10.10.10.10] => (item={u'domain': u'l.pigsty', u'endpoint': u'10.10.10.10:3100', u'name': u'loki'})
  420. changed: [10.10.10.10] => (item={u'domain': u'p.pigsty', u'endpoint': u'10.10.10.10:9090', u'name': u'prometheus'})
  421. changed: [10.10.10.10] => (item={u'domain': u'a.pigsty', u'endpoint': u'10.10.10.10:9093', u'name': u'alertmanager'})
  422. changed: [10.10.10.10] => (item={u'domain': u'c.pigsty', u'endpoint': u'127.0.0.1:8500', u'name': u'consul'})
  423. changed: [10.10.10.10] => (item={u'domain': u'api.pigsty.cc', u'endpoint': u'127.0.0.1:8884', u'name': u'postgrest'})
  424. changed: [10.10.10.10] => (i

(本文超出站点单文档体积上限,已截断)