Environment Preparation

Requirement Operating system:centos8.x

Libc Requirement

ls -l /lib64/libc.so.6

 """
  /lib64/libc.so.6 -> libc-2.28.so
 """

Determine the main operating IP, and all Ansible deployment operations will be performed on the main operating IP. In this example, the main operating IP is 172.20.3.200.

Set up passwordless sudo login for non-sudo users

If the password is the same for each machine and the root username and password are used in inventory/hosts, then this step is not necessary.

vim /etc/sudoers

"""
dingo    ALL=(ALL)       NOPASSWD:ALL
"""

Passwordless login using IP address

If the password is the same for each machine and the root username and password are used in inventory/hosts, then the following steps are not necessary.

  1. Generate SSH public and private keys

ssh-keygen -f ~/.ssh/id_rsa -N '' -t rsa -q -b 2048
  1. Copy the public key to all host nodes, including the local node

ssh-copy-id root@ip
ssh-copy-id root@ip
ssh-copy-id root@ip
  1. Test if passwordless login is successful

ssh root@ip

Directory Structure Planning

Directory Types

Path

Program installation path

${installer_root_path}

Data path

${installer_root_path}/data

Log path

${installer_root_path}/log

dingo-store script path

${installer_root_path}/dingo-store/scripts

dingo-store deployment path
(including separate data and log directories)

${installer_root_path}/dingo-store/dist

User group planning

Deployment Method

User name

Gorup name

ansible deploy

dingodb

dingodb

Component list and port usage

Component

Version

Port

Remarks

DingoDB

0.6.0

raft:22101/20101
server:22001/20001
executor:3307/8765

Real-time analytics database

Prometheus

2.14.0

19115

Real-time analytics databaseTime-series database, metric monitoring

node_exporter

0.18.1

19100

Prometheus component, monitoring node information

process_exporter

0.7.10

19090

Prometheus component, monitoring process information

grafana

8.3.3

3000

Data visualization platform

Ansible install

Online install

 #Ensure that Python environment is installed on each machine using Python 3
 #Install Ansible on the main IP, if it is not already installed.
 
pip3 install pip -U
pip3 install ansible==2.9.27 # Install with fixed version number, non-mandatory

pip3 install pyopenssl -U

Offline machine install

# Preparation of files:
wget -r -nH http://ip:9000  # Download all required package files with one click

ansible_installer_centos8.sh Place the files separately and proceed with Ansible installation
Place other files in the deployment package dingo-deploy/artifacts directory

#  Installing Ansible requires root user
bash ansible_installer_centos8.sh # This needs to be executed on all three machines to ensure that the path to Python 3 is consistent on each machine

#Note to modify inventory/hosts before deployment
ansible_python_interpreter=/usr/local/miniconda3/bin/python

# Replace all Ansible and Python commands below with full path, for example:
/usr/local/miniconda3/bin/ansible-playbook playbook.yml