FAQ
Module:
How to configure NTP service?
If NTP is not configured, use a public NTP service or sync time with the admin node.
If your nodes already have NTP configured, you can leave it there by setting node_ntp_enabled
to false
.
Otherwise, if you have Internet access, you can use public NTP services such as pool.ntp.org
.
If you don’t have Internet access, at least you can sync time with the admin node with the following:
node_ntp_servers: # NTP servers in /etc/chrony.conf
- pool cn.pool.ntp.org iburst
- pool ${admin_ip} iburst # assume non-admin nodes do not have internet access
How to force sync time on nodes?
Use chronyc
to sync time. You have to configure the NTP service first.
ansible all -b -a 'chronyc -a makestep' # sync time
You can replace all
with any group or host IP address to limit execution scope.
Remote nodes are not accessible via SSH commands.
Consider using Ansible connection parameters if the target machine is hidden behind an SSH springboard machine,
or if some customizations have been made that cannot be accessed directly using ssh ip
.
Additional SSH ports can be specified with ansible_port
or ansible_host
for SSH Alias.
pg-test:
vars: { pg_cluster: pg-test }
hosts:
10.10.10.11: {pg_seq: 1, pg_role: primary, ansible_host: node-1 }
10.10.10.12: {pg_seq: 2, pg_role: replica, ansible_port: 22223, ansible_user: admin }
10.10.10.13: {pg_seq: 3, pg_role: offline, ansible_port: 22224 }
Password required for remote node SSH and SUDO
When performing deployments and changes, the admin user used must have ssh
and sudo
privileges for all nodes. Password-free is not required.
You can pass in ssh and sudo passwords via the -k|-K
parameter when executing the playbook or even use another user to run the playbook via -e
ansible_host
=<another_user>
.
However, Pigsty strongly recommends configuring SSH passwordless login with passwordless sudo
for the admin user.
Create an admin user with the existing admin user.
This will create an admin user specified by node_admin_username
with the existing one on that node.
./node.yml -k -K -e ansible_user=<another_admin> -t node_admin`
Exposing node services with HAProxy
You can expose service with haproxy_services
in node.yml
.
And here’s an example of exposing MinIO service with it: Expose MinIO Service
Why my nodes /etc/yum.repos.d/* are nuked?
Pigsty will try to include all dependencies in the local yum repo on infra nodes. This repo file will be added according to node_repo_modules
.
And existing repo files will be removed by default according to the default value of node_repo_remove
. This will prevent the node from using the Internet repo or some stupid issues.
If you want to keep existing repo files during node init, just set node_repo_remove
to false
.
If you want to keep existing repo files during infra node local repo bootstrap, just set repo_remove
to false
.
Why my shell prompt change and how to restore it?
The pigsty prompt is defined with the environment variable PS1
in /etc/profile.d/node.sh
.
To restore your existing prompt, just remove that file and login again.
Tencent OpenCloudOS Compatibility Issue
OpenCloudOS does not have softdog module, overwrite node_kernel_modules
on global vars:
node_kernel_modules: [ br_netfilter, ip_vs, ip_vs_rr, ip_vs_wrr, ip_vs_sh ]
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.