环境:centos7.6、ansible2.5、tidb3.0.2
连接地址:https://docs.pingcap.com/zh/tidb/v3.0/scale-tidb-using-ansible(官网的扩容缩荣操作)
扩容 TiKV 节点
例如,如果要添加两个 TiDB 节点(node44-node48),IP 地址为 172.168.20.44-48,可以进行如下操作:
思路:修改配置文件——>初始化新增节点-——>部署新增节点
1、修改配置文件
编辑 inventory.ini 文件和 hosts.ini 文件,添加节点信息。 编辑 inventory.ini: [tidb_servers] 。。。 [pd_servers] 。。。 [tikv_servers] 172.168.20.40 172.168.20.41 172.168.20.42 172.168.20.44 172.168.20.45 172.168.20.46 172.168.20.47 172.168.20.48 [monitored_servers] 。。。 172.168.20.44 172.168.20.45 172.168.20.46 172.168.20.47 172.168.20.48 [monitoring_servers] 172.16.10.3 [grafana_servers] 172.16.10.3 编辑 hosts.ini: [servers] 。。。 172.168.20.44 172.168.20.45 172.168.20.46 172.168.20.47 172.168.20.48 [all:vars] username = tidb ntp_server = pool.ntp.org
2、初始化新增节点
1、配置ntp时间同步服务 https://www.cnblogs.com/wukc/p/13279847.html 2、创建用户tidb useradd tidb echo your-passwd|passwd --stdin tidb 3、配置tidb用户sudo免密码,将tidb ALL=(ALL) NOPASSWD: ALL添加到文件末尾即可。 chmod 755 /etc/sudoers cat >> /etc/sudoers <<EOF tidb ALL=(ALL) NOPASSWD: ALL EOF chmod 440 /etc/sudoers 4、时区修改 timedatectl set-timezone Asia/Shanghai 5、安装bash补全命令 yum -y install bash-completion 6、关闭selinux和firewalld 7、在中控机上配置部署机器 tidb的SSH(tidb、root都配置一下) ssh-keygen #一直回车 ssh-copy-id tidb@172.21.136.197 #配置免密登录(几台机器复制几个) 8、在部署目标机器上配置 CPUfreq 调节器模式 (虚拟机就不用这一步了) 执行以下 cpupower 命令,可查看系统支持的调节器模式: cpupower frequency-info --governors analyzing CPU 0: available cpufreq governors: performance powersave 本例中系统支持设置 performance 和 powersave 模式。如果返回 Not Available,表示当前系统不支持配置 CPUfreq,跳过该步骤即可。 cpupower frequency-info --governors analyzing CPU 0: available cpufreq governors: Not Available 查看系统当前的 CPUfreq 调节器模式 执行以下 cpupower 命令,可查看系统当前的 CPUfreq 调节器模式: cpupower frequency-info --policy analyzing CPU 0: current policy: frequency should be within 1.20 GHz and 3.20 GHz. The governor "powersave" may decide which speed to use within this range. 如上述代码所示,本例中的当前配置是 powersave 模式。 修改调节器模式 你可以通过以下两种方法来修改调节器模式。本例中,当前调节器模式为 powersave,以下命令会将模式变更为 performance。 使用 cpupower frequency-set --governor 命令来修改。 cpupower frequency-set --governor performance
3、扩容节点
1、在中控机上部署目标机器的初始化: ansible-playbook bootstrap.yml -l 172.168.20.44,172.168.20.45... --extra-vars "dev_mode=True" #跳过磁盘检测 注意: 如果 inventory.ini 中为节点配置了别名,如 node101 ansible_host=172.16.10.101,执行 ansible-playbook 时 -l 请指定别名,以下步骤类似。例如:ansible-playbook bootstrap.yml -l node101,node102 2、部署新增节点: ansible-playbook deploy.yml -l 172.168.20.44,172.168.20.45... 3、启动新节点服务: ansible-playbook start.yml -l 172.168.20.44,172.168.20.45... 4、更新 Prometheus 配置并重启: ansible-playbook rolling_update_monitor.yml --tags=prometheus 5、打开浏览器访问监控平台:http://172.168.20.43:3000,监控整个集群和新增节点的状态。