- 关于 TiDB
- 快速上手
- 部署集群
- 数据迁移
- 数据迁移概述
- 从 MySQL 迁移至 TiDB
- 从 CSV 文件迁移至 TiDB
- 运维操作
- 监控与告警
- 故障诊断
- 性能调优
- 系统调优
- 软件调优
- SQL 性能调优
- 教程
- TiDB 生态工具
- TiDB 生态工具功能概览
- TiDB 生态工具适用场景
- TiDB 工具下载
- Backup & Restore (BR)
- TiDB Binlog
- TiDB Lightning
- TiCDC 简介
- Dumpling 使用文档
- sync-diff-inspector
- Loader 使用文档
- Mydumper 使用文档
- Syncer 使用文档
- TiSpark
- 参考指南
- 架构
- 监控指标
- 安全加固
- 权限
- SQL
- SQL 语言结构和语法
- 属性
- 字面值
- Schema 对象名
- 关键字
- 用户自定义变量
- 表达式语法
- 注释语法
- SQL 语句
- ADD COLUMN
- ADD INDEX
- ADMIN
- ALTER DATABASE
- ALTER INSTANCE
- ALTER TABLE
- ALTER USER
- ANALYZE
- BACKUP
- BEGIN
- CHANGE COLUMN
- CHANGE DRAINER
- CHANGE PUMP
- COMMIT
- CREATE [GLOBAL|SESSION] BINDING
- CREATE DATABASE
- CREATE INDEX
- CREATE ROLE
- CREATE SEQUENCE
- CREATE TABLE LIKE
- CREATE TABLE
- CREATE USER
- CREATE VIEW
- DEALLOCATE
- DELETE
- DESC
- DESCRIBE
- DO
- DROP [GLOBAL|SESSION] BINDING
- DROP COLUMN
- DROP DATABASE
- DROP INDEX
- DROP ROLE
- DROP SEQUENCE
- DROP STATS
- DROP TABLE
- DROP USER
- DROP VIEW
- EXECUTE
- EXPLAIN ANALYZE
- EXPLAIN
- FLASHBACK TABLE
- FLUSH PRIVILEGES
- FLUSH STATUS
- FLUSH TABLES
- GRANT
- GRANT
- INSERT
- KILL [TIDB]
- LOAD STATS
- MODIFY COLUMN
- PREPARE
- RECOVER TABLE
- RENAME INDEX
- RENAME TABLE
- REPLACE
- RESTORE
- REVOKE
- REVOKE
- ROLLBACK
- SELECT
- SET DEFAULT ROLE
- SET [NAMES|CHARACTER SET]
- SET PASSWORD
- SET ROLE
- SET TRANSACTION
- SET [GLOBAL|SESSION]
- SHOW [BACKUPS|RESTORES]
- SHOW ANALYZE STATUS
- SHOW [GLOBAL|SESSION] BINDINGS
- SHOW BUILTINS
- SHOW CHARACTER SET
- SHOW COLLATION
- SHOW [FULL] COLUMNS FROM
- SHOW CONFIG
- SHOW CREATE SEQUENCE
- SHOW CREATE TABLE
- SHOW CREATE USER
- SHOW DATABASES
- SHOW DRAINER STATUS
- SHOW ENGINES
- SHOW ERRORS
- SHOW [FULL] FIELDS FROM
- SHOW GRANTS
- SHOW INDEX [FROM|IN]
- SHOW INDEXES [FROM|IN]
- SHOW KEYS [FROM|IN]
- SHOW MASTER STATUS
- SHOW PLUGINS
- SHOW PRIVILEGES
- SHOW [FULL] PROCESSLIST
- SHOW PROFILES
- SHOW PUMP STATUS
- SHOW SCHEMAS
- SHOW STATS_HEALTHY
- SHOW STATS_HISTOGRAMS
- SHOW STATS_META
- SHOW [GLOBAL|SESSION] STATUS
- SHOW TABLE NEXTROWID
- SHOW TABLE REGIONS
- SHOW TABLE STATUS
- SHOW [FULL] TABLES
- SHOW [GLOBAL|SESSION] VARIABLES
- SHOW WARNINGS
- SHUTDOWN
- Split Region 使用文档
- START TRANSACTION
- TRACE
- TRUNCATE
- UPDATE
- USE
- 数据类型
- 函数与操作符
- 约束
- 生成列
- SQL 模式
- 事务
- 垃圾回收 (GC)
- 视图
- 分区表
- 字符集和排序规则
- 系统表
- TiDB 系统表
- INFORMATION_SCHEMA
- TiDB 简介
- ANALYZE_STATUS
- CHARACTER_SETS
- CLUSTER_CONFIG
- CLUSTER_HARDWARE
- CLUSTER_INFO
- CLUSTER_LOAD
- CLUSTER_LOG
- CLUSTER_SYSTEMINFO
- COLLATIONS
- COLLATIONCHARACTERSET_APPLICABILITY
- COLUMNS
- DDL_JOBS
- ENGINES
- INSPECTION_RESULT
- INSPECTION_RULES
- INSPECTION_SUMMARY
- KEYCOLUMNUSAGE
- METRICS_SUMMARY
- METRICS_TABLES
- PARTITIONS
- PROCESSLIST
- SCHEMATA
- SEQUENCES
- SESSION_VARIABLES
- SLOW_QUERY
- STATISTICS
- TABLES
- TABLE_CONSTRAINTS
- TABLESTORAGESTATS
- TIDBHOTREGIONS
- TIDB_INDEXES
- TIDBSERVERSINFO
- TIFLASH_REPLICA
- TIKVREGIONPEERS
- TIKVREGIONSTATUS
- TIKVSTORESTATUS
- USER_PRIVILEGES
- VIEWS
- Metrics Schema
- SQL 语言结构和语法
- UI
- CLI
- 命令行参数
- 配置文件参数
- 系统变量
- 存储引擎
- TiUP
- 遥测
- 错误码与故障诊断
- TiCDC Open Protocol
- 通过拓扑 label 进行副本调度
- 常见问题解答 (FAQ)
- 术语表
离线 TiDB Ansible 部署方案
准备机器
下载机一台
- 该机器需开放外网访问,用于下载 TiDB Ansible、TiDB 及相关软件安装包。
- 推荐安装 CentOS 7.3 及以上版本 Linux 操作系统。
部署目标机器若干及部署中控机一台
- 系统要求及配置参考准备机器。
- 可以无法访问外网。
在中控机上安装系统依赖包
在下载机上下载系统依赖离线安装包,然后上传至中控机。该离线包仅支持 CentOS 7 系统,包含
pip
及sshpass
。在中控机上安装系统依赖包:
tar -xzvf ansible-system-rpms.el7.tar.gz && cd ansible-system-rpms.el7 && chmod u+x install_ansible_system_rpms.sh && ./install_ansible_system_rpms.sh
安装完成后,可通过
pip -V
验证 pip 是否安装成功:pip -V
pip 8.1.2 from /usr/lib/python2.7/site-packages (python 2.7)
注意:
如果你的系统已安装 pip,请确认版本 >= 8.1.2,否则离线安装 TiDB Ansible 及其依赖时,会有兼容问题。
在中控机上创建 tidb 用户,并生成 ssh key
参考在中控机上创建 tidb 用户,并生成 ssh key 即可。
在中控机器上离线安装 TiDB Ansible 及其依赖
以下是 CentOS 7 系统 Ansible 离线安装方式:
建议使用 Ansible 2.4 至 2.7.11 版本,Ansible 及相关依赖版本记录在 tidb-ansible/requirements.txt
文件中。下面步骤以安装 Ansible 2.5 为例。
在下载机上下载 Ansible 2.5 离线安装包,然后上传至中控机。
离线安装 TiDB Ansible 及相关依赖:
tar -xzvf ansible-2.5.0-pip.tar.gz && cd ansible-2.5.0-pip/ && chmod u+x install_ansible.sh && ./install_ansible.sh
安装完成后,可通过
ansible --version
查看版本:ansible --version
ansible 2.5.0
在下载机上下载 TiDB Ansible 及 TiDB 安装包
在下载机上安装 TiDB Ansible:
请按以下方式在 CentOS 7 系统的下载机上在线安装 TiDB Ansible。安装完成后,可通过
ansible --version
查看版本,请务必确认是 Ansible 2.5.0 版本,否则会有兼容问题。yum install epel-release && yum install ansible curl && ansible --version
ansible 2.5.0
下载 tidb-ansible:
使用以下命令从 Github TiDB Ansible 项目上下载 TiDB Ansible 相应版本,默认的文件夹名称为
tidb-ansible
。git clone https://github.com/pingcap/tidb-ansible.git
注意:
部署和升级 TiDB 集群需使用对应的 tidb-ansible 版本,通过改
inventory.ini
文件中的版本来混用可能会产生一些错误。执行
local_prepare.yml
playbook,联网下载 TiDB binary 到下载机:cd tidb-ansible && ansible-playbook local_prepare.yml
将执行完以上命令之后的
tidb-ansible
文件夹拷贝到中控机/home/tidb
目录下,文件属主权限需是tidb
用户。
在中控机上配置部署机器 SSH 互信及 sudo 规则
参考在中控机上配置部署机器 SSH 互信及 sudo 规则即可。
在部署目标机器上安装 NTP 服务
如果你的部署目标机器时间、时区设置一致,已开启 NTP 服务且在正常同步时间,此步骤可忽略,可参考如何检测 NTP 服务是否正常。
参考在部署目标机器上安装 NTP 服务即可。
在部署目标机器上配置 CPUfreq 调节器模式
在部署目标机器上添加数据盘 ext4 文件系统挂载参数
参考在部署目标机器上添加数据盘 ext4 文件系统挂载参数即可。
分配机器资源,编辑 inventory.ini 文件
参考分配机器资源,编辑 inventory.ini 文件即可。
部署任务
ansible-playbook local_prepare.yml
该 playbook 不需要再执行。参考部署任务即可。
测试集群
参考测试集群即可。
注意:
TiDB 默认会定期收集使用情况信息,并将这些信息分享给 PingCAP 用于改善产品。若要了解所收集的信息详情及如何禁用该行为,请参见遥测。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论