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. Input and Output-The input is all the sources of action for your app

    Programs take input and produce output. The output is the result of doing something with the input. ...

  2. laravel 多态映射(打赏为例)

    迁移: public function up() { Schema::create('rewards', function (Blueprint $table) { $table->increm ...

  3. hdu_1009 贪心

    FatMouse' Trade Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)T ...

  4. html5物理定位误差大 解决办法

    学生党在做比赛作品,项目中需求要用到定位功能并以地图形式展现.所以思路就是用h5的geolocation 获取经纬度,通过百度地图api将经纬度转换成详细的地址以及地图.在笔记本电脑做测试,定位总有超 ...

  5. Mybatis Plus启动注入 SQL 原理分析

    1) 问题: xxxMapper 继承了 BaseMapper<T>, BaseMapper 中提供了通用的 CRUD 方法, 方法来源于 BaseMapper, 有方法就必须有 SQL, ...

  6. 使用mongodb提供的dotnet core sdk进行地理位置运算

    mongodb提供地理位置运算功能,比较常用的场景比如,先判断用户所在的街道,然后看看街道附近有啥餐厅,然后算算用户与餐厅的距离什么的,官网里提供了比较详细的demo介绍不同api的用法 此处记录下d ...

  7. Oracle数据库对表基本的操作--增删查改

    --向student表中加入入学时间属性,其数据类型为日期型alter table student add scome date; --删除student表中的入学时间属性alter table st ...

  8. objc中类方法里的self指的是什么

    所有转出“博客园”,请您注明出处:http://www.cnblogs.com/xiaobajiu/p/4121431.html objc中类方法里的self指的是什么 在objc中是可以在类方法中使 ...

  9. vue-nuxt.js部署到宝塔主机服务器

    废话不多说,直接上步骤,如下: 本文章为在 vue环境下使用了nuxt.js 1.搭建环境--由于本人安装的是宝塔主机,因此如下: 由于我直接使用的是宝塔主机,直接去“软件管理”安装 PM2管理器. ...

  10. Delphi 调试连接 任意Android手机/平板/盒子

    Delphi有时候无法连接调试一些手机,解决方案: 1.安装Google USB Driver 2.通过设备管理器查看手机或平板USB的VID,PID 3.修改你的电脑上的android_winusb ...