1.环境以及规划

机器:centos7.5 ; 文件系统为ext4;内存16g;cpu8核,共三个节点;

      ip             hostname                    roles

 10.40.20.66        vm----         tidb  tipd  tikv
10.40.20.67 vm---- tidb tipd tikv
10.40.20.92 vm---- tipd tikv

2 .本地下载tidb-ansible-master.zip,上传到中控机,然后重命名为tidb-ansible;

3.安装ansible:

sudo yum -y install python-pip curl

sudo yum -y install sshpass

cd tidb-ansible

sudo pip install -r requirements.txt     
[tidb@vm----:/opt/Jinja2-2.9.]$ cat /home/tidb/tidb-ansible/requirements.txt
ansible>=2.4.
jinja2>=2.9.
jmespath>=0.9.
sudo pip install -r requirements.txt会报错缺少依赖包,由于集群没外网,去http://mirrors.aliyun.com/pypi/simple/镜像去下载python依赖包到本地,再上传到中控机:
Jinja2-2.9.6.tar.gz;jmespath-0.9.1.tar.gz;MarkupSafe-0.23.tar.gz ,注意版本匹配;
各个python包解压后里面都有一个setup.py脚本,使用如下命令安装:
python setup.py install

4.创建tidb用户,设置免密码登录,配ntp同步;
ansible -i hosts.ini all -m shell -a  "ntpstat" -b

ansible -i hosts.ini all -m shell -a  "ntpq -p" -b
5.编辑host.ini:
[tidb@vm----:~/tidb-ansible]$ cat hosts.ini
[servers]
10.40.20.66
10.40.20.67
10.40.20.92 [all:vars]
username = tidb
ntp_server = pool.ntp.org

6.编辑invertory.ini:

## TiDB Cluster Part
[tidb_servers]
10.40.20.66
10.40.20.67 [tikv_servers]
10.40.20.66
10.40.20.67
10.40.20.92 [pd_servers]
10.40.20.66
10.40.20.67
10.40.20.92 [spark_master] [spark_slaves] ## Monitoring Part
# prometheus and pushgateway servers
[monitoring_servers]
10.40.20.66 [grafana_servers]
10.40.20.66 # node_exporter and blackbox_exporter servers
[monitored_servers]
10.40.20.66
10.40.20.67
10.40.20.92 [alertmanager_servers]
10.40.20.66 [kafka_exporter_servers] ## Binlog Part
[pump_servers:children]
tidb_servers [drainer_servers] ## Group variables
[pd_servers:vars]
# location_labels = ["zone","rack","host"] ## Global variables
[all:vars]
deploy_dir = /data/tidb/deploy ## Connection
# ssh via normal user
ansible_user = tidb cluster_name = leochen-cluster tidb_version = v2.0.7 # process supervision, [systemd, supervise]
process_supervision = systemd timezone = Asia/Shanghai enable_firewalld = False
# check NTP service
enable_ntpd = True
set_hostname = False ## binlog trigger
enable_binlog = False
# zookeeper address of kafka cluster for binlog, example:
# zookeeper_addrs = "192.168.0.11:2181,192.168.0.12:2181,192.168.0.13:2181"
zookeeper_addrs = ""
# kafka cluster address for monitoring, example:
# kafka_addrs = "192.168.0.11:9092,192.168.0.12:9092,192.168.0.13:9092"
kafka_addrs = "" # store slow query log into seperate file
enable_slow_query_log = False # enable TLS authentication in the TiDB cluster
enable_tls = False # KV mode
deploy_without_tidb = False # Optional: Set if you already have a alertmanager server.
# Format: alertmanager_host:alertmanager_port
alertmanager_target = "" grafana_admin_user = "admin"
grafana_admin_password = "admin" ### Collect diagnosis
collect_log_recent_hours = enable_bandwidth_limit = True
# default: 10Mb/s, unit: Kbit/s
collect_bandwidth_limit =

7.安装tidb集群:

安装前检验

执行以下命令如果所有 server 返回 tidb 表示 ssh 互信配置成功。

ansible -i inventory.ini all -m shell -a 'whoami'

执行以下命令如果所有 server 返回 root 表示 tidb 用户 sudo 免密码配置成功。

ansible -i inventory.ini all -m shell -a 'whoami' -b

下载安装包,上传到downloads目录:

[tidb@vm----:~/tidb-ansible/downloads]$ ll
total
-rw-r--r-- tidb tidb Nov : alertmanager-0.14..tar.gz
-rw-r--r-- tidb tidb Nov : blackbox_exporter-0.12..tar.gz
-rw-r--r-- tidb tidb Nov : fio-3.8.tar.gz
-rw-r--r-- tidb tidb Nov : grafana-4.6..tar.gz
-rw-r--r-- tidb tidb Nov : grafana_collector-latest.tar.gz
-rw-r--r-- tidb tidb Nov : kafka_exporter-1.1..tar.gz
-rw-r--r-- tidb tidb Nov : node_exporter-0.15..tar.gz
-rw-r--r-- tidb tidb Nov : prometheus-2.2..tar.gz
-rw-r--r-- tidb tidb Nov : pushgateway-0.4..tar.gz
-rw-r--r-- tidb tidb Nov : spark-2.1.-bin-hadoop2..tgz
-rw-r--r-- tidb tidb Nov : tidb-binlog-latest.tar.gz
-rw-r--r-- tidb tidb Nov : tidb-insight.tar.gz
-rw-r--r-- tidb tidb Nov : tidb-tools-latest.tar.gz
-rw-r--r-- tidb tidb Nov : tidb-v2.0.7.tar.gz
-rw-r--r-- tidb tidb Nov : tispark-latest.tar.gz
-rw-r--r-- tidb tidb Nov : tispark-sample-data.tar.gz

8.编辑bootstrap.yml文件,不符合的可以暂时注释掉,测试环境机器配置不高;

9.ansible-playbook bootstrap.yml;

10.ansible-playbook deploy.yml;

11.ansible-playbook start.yml;

12 . 使用 MySQL 客户端连接测试,TCP 4000 端口是 TiDB 服务默认端口。 

[tidb@vm-10-40-20-66:~/tidb-ansible/downloads]$ mysql -u root -h 10.40.20.66 -P 4000
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 107
Server version: 5.7.10-TiDB-v2.0.7 MySQL Community Server (Apache License 2.0)

Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database |
+--------------------+
| INFORMATION_SCHEMA |
| PERFORMANCE_SCHEMA |
| mysql |
| test |
+--------------------+
4 rows in set (0.00 sec)

13.通过浏览器访问监控平台:

地址: http://10.40.20.66:3000 默认帐号密码是: admin / admin 

   

 14.集群销毁:

ansible-playbook unsafe_cleanup.yml

tidb测试环境安装,离线部署的更多相关文章

  1. 家用PC机打造VSphere5.1 测试环境:之部署VCenter Server 5.1

    家用PC机打造VSphere5.1 测试环境前言:实践出真知,同样学习VMware VSphere 的朋友,也需要不断的测试总结,再测试再总结只有不断的积累才能学好,但是动辄几万的服务器不是所有朋友都 ...

  2. [转载]SharePoint 2013测试环境安装配置指南

    软件版本 Windows Server 2012 标准版 SQL Server 2012 标准版 SharePoint Server 2013 企业版 Office Web Apps 2013 备注: ...

  3. legend3---Windows 7/8/10 系统下Laravel框架的开发环境安装及部署详解(Vagrant + Homestead)

    legend3---Windows 7/8/10 系统下Laravel框架的开发环境安装及部署详解(Vagrant + Homestead) 一.总结 一句话总结: 1.安装的话就是下载好git,va ...

  4. 《ArcGIS Runtime SDK for Android开发笔记》——(5)、基于Android Studio构建ArcGIS Android开发环境(离线部署)(转)

    1.前言 在上一篇的内容里我们介绍了基于Android Studio构建ArcGIS Runtime SDK for Android开发环境的基本流程,流程中我们采用的是基于Gradle的构建方式,在 ...

  5. tidb测试环境搭建

    tidb ansible 部署方式环境检查过于严格,测试环境往往达不到标准,需调整一些参数才能部署成功. 基于tidb2.0版本需要调整的参数 [tidb@ansible01 tidb-ansible ...

  6. AlwaysOn可用性组测试环境安装与配置(一)--SQL群集环境搭建

    一.测试环境介绍 1. 宿主使用工作站(HYPR-V)基本配置如下: 处理器:Intel(R) Core(TM) i5-4470 CPU @ 3.20GHz 3.20GHz 内存(RAM):8.00G ...

  7. Jenkins~配合Docker及dotnetCore进行生产和测试环境的灵活部署

    回到目录 首先要清楚本文是讲dotnetcore项目在生产和测试环境部署的,这在过去的frameworks项目里,我们可以通过设置web.config的环境变量,然后再发布时指定具体的变量,去实现生产 ...

  8. 利用docker搭建测试环境--安装

    软件测试过程中,总会碰到测试环境不够用的尴尬情况.即时有了机器还要经历装系统,配置环境,调试等一系列繁琐的问题.虽然市面上也有一些批处理话的工具(如salt,fabric等),但是还是需要实体机器作为 ...

  9. python爬虫之MongoDB测试环境安装

    一.   下载 从http://www.mongodb.org/downloads地址中下载:mongodb-linux-x86_64-2.4.11.tar 二.  安装 1>设置mongoDB ...

随机推荐

  1. 激活pycharm

    1. 修改hosts文件: 添加下面一行到hosts文件,目的是屏蔽掉Pycharm对激活码的验证**0.0.0.0 account.jetbrains.com ** windwos系统hosts文件 ...

  2. BZOJ1048:[HAOI2007]分割矩阵(记忆化搜索DP)

    Description 将一个a*b的数字矩阵进行如下分割:将原矩阵沿某一条直线分割成两个矩阵,再将生成的两个矩阵继续如此分割(当然也可以只分割其中的一个), 这样分割了(n-1)次后,原矩阵被分割成 ...

  3. ZooKeeper学习之路 (四)ZooKeeper开发环境eclipse配置

    一.eclipse中配置zookeeper开发环境 1)将zookeeper eclipse plugin中的6个jar包放到eclipse安装目录下的plugins文件中,重启eclipse (2) ...

  4. 随手练——HDU-1210 洗牌问题(模拟)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1210 模拟的题目真不知道怎么写的话,就把真实情况展示出来,有图才有真相: 测试代码: #include ...

  5. WEB安全 ACCESS 注入、盲注脚本

    http://www.xxx.cn/cp.asp?classid=3http://www.xxx.cn/cp.asp?classid=3 and //有拦截关键字http://www.xxx.cn/c ...

  6. shell一次性执行多条命令

    1.每个命令之间用;隔开说明:各命令的执行给果,不会影响其它命令的执行.换句话说,各个命令都会执行,但不保证每个命令都执行成功. 2.每个命令之间用&&隔开说明:若前面的命令执行成功, ...

  7. Linux文件目录命令

    Linux文件目录命令 pwd,查看当前工作目录的完整路径 pwd:/root ls,用来打印当前目录的清单,可以指定其他目录 -a:列出目录下所有的文件,包括以"."开头的隐藏文 ...

  8. 【luogu P1373 小a和uim之大逃离】 题解

    题目链接:https://www.luogu.org/problemnew/show/P1373 想不出来状态 看了一眼题解状态明白了 dp[i][j][h][1/0] 表示在i,j点差值为h是小A还 ...

  9. JNI由浅入深_5_基本类型应用

    1.基本类型应用 对于JNI处理基本类型还是比较简单的,下面是Java代码: <span style="font-size:14px;"> public native ...

  10. Kafka个人总结

    Kafka 应对场景:消息持久化.吞吐量是第一要求.状态由客户端维护.必须是分布式的.Kafka 认为 broker 不应该阻塞生产者,高效的磁盘顺序读写能够和网络 IO 一样快,同时依赖现代 OS ...