1.检查ansible版本,正常状况下,2.1 rc3须要兼容ansible 2.5以上的版本python
$ ansible --version
2.检查python两个模块jinja2须要升级到2.9.6或以上版本,jmespath须要升级到0.9.0以上版本linux
wget https://pypi.python.org/packages/source/J/Jinja2/Jinja2-2.9.6.tar.gzgit
pip uninstall jinja2github
tar vxf Jinja2-2.9.6.tar.gz spa
cd Jinja2-2.9.6code
python setup.py installorm
3.升级ip
su - tidbget
cd /home/tidb/it
$ mv tidb-ansible tidb-ansible-bak
下载tidb最新版本2.1 rc3 (自行下载或者直接linux下载,所谓的离线升级就是在其余机器上,将这个下载好,而且执行ansible-playbook local_prepare.yml,提早将tidb binary下载到downloads目录)
https://github.com/pingcap/tidb-ansible
上传到/hone/tidb并解压
cd /home/tidb/tidb-ansible/conf
vi tikv.yml
修改 end-point-concurrency
变动为 high-concurrency
、normal-concurrency
和 low-concurrency
值推荐设置成机器物理cpu*0.8(默认应该就是这个配置)
vi tidb-ansible/inventory.ini 确认 tidb_version = v2.1-rc.3
执行下载 binary $ ansible-playbook local_prepare.yml
进行滚动升级 $ ansible-playbook rolling_update.yml
vi inventory.ini
检查文件中 process_supervision
变量:
process_supervision = systemd
若是 ,为兼容 以前的版本,你须要执行 Playbook。若是 ,此步骤不须要执行。
process_supervision = systemdv2.0.0-rc.6migrate_monitor.ymlprocess_supervision = supervise
$ ansible-playbook migrate_monitor.yml
滚动升级tidb 监控组件
$ ansible-playbook rolling_update_monitor.yml