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