通过TiUP 离线组件包部署
集群ssh免密互通
确定ssh端口
关闭swap
echo "vm.swappiness = 0">> /etc/sysctl.conf
swapoff -a && swapon -a
sysctl -p
防火墙关闭或放开相关端口
组件 | 默认端口 | 说明 |
---|---|---|
TiDB | 4000 | 应用及 DBA 工具访问通信端口 |
TiDB | 10080 | TiDB 状态信息上报通信端口 |
TiKV | 20160 | TiKV 通信端口 |
TiKV | 20180 | TiKV 状态信息上报通信端口 |
PD | 2379 | 提供 TiDB 和 PD 通信端口 |
PD | 2380 | PD 集群节点间通信端口 |
TiFlash | 9000 | TiFlash TCP 服务端口 |
TiFlash | 8123 | TiFlash HTTP 服务端口 |
TiFlash | 3930 | TiFlash RAFT 服务和 Coprocessor 服务端口 |
TiFlash | 20170 | TiFlash Proxy 服务端口 |
TiFlash | 20292 | Prometheus 拉取 TiFlash Proxy metrics 端口 |
TiFlash | 8234 | Prometheus 拉取 TiFlash metrics 端口 |
Pump | 8250 | Pump 通信端口 |
Drainer | 8249 | Drainer 通信端口 |
CDC | 8300 | CDC 通信接口 |
Monitoring | 9090 | Prometheus 服务通信端口 |
Monitoring | 12020 | NgMonitoring 服务通信端口 |
Node_exporter | 9100 | TiDB 集群每个节点的系统信息上报通信端口 |
Blackbox_exporter | 9115 | Blackbox_exporter 通信端口,用于 TiDB 集群端口监控 |
Grafana | 3000 | Web 监控服务对外服务和客户端(浏览器)访问端口 |
Alertmanager | 9093 | 告警 web 服务端口 |
Alertmanager | 9094 | 告警通信端口 |
集群时间同步, 使用ntp服务
主机 | ip | 服务 |
---|---|---|
node1 | 192.168.11.12 | TiDB PD TiKV TiFlash |
node2 | 192.168.11.13 | TiDB PD TiKV TiFlash |
node3 | 192.168.11.14 | TiDB PD TiKV TiFlash |
node4 | 192.168.11.15 | TiKV TiFlash Monitoring Grafana Alertmanager |
export version=v6.5.0
tar xzvf tidb-community-server-${version}-linux-amd64.tar.gz && \
sh tidb-community-server-${version}-linux-amd64/local_install.sh && \
source /root/.bashrc
tar xf tidb-community-toolkit-${version}-linux-amd64.tar.gz
ls -ld tidb-community-server-${version}-linux-amd64 tidb-community-toolkit-${version}-linux-amd64
cd tidb-community-server-${version}-linux-amd64/
cp -rp keys ~/.tiup/
tiup mirror merge ../tidb-community-toolkit-${version}-linux-amd64
tiup cluster template > topology.yaml
vim topology.yaml
*注意: tiflash默认端口包括9000和8123, 如果服务器部署了lightningdb, 会有端口冲突, 注意修改tiflash_servers
的tcp_port
和http_port
global:
user: "root"
ssh_port: 22
deploy_dir: "/opt/tidb-deploy"
data_dir: "/data/tidb-data"
server_configs: {}
pd_servers:
- host: 192.168.11.12
client_port: 2379
peer_port: 2380
- host: 192.168.11.13
client_port: 2379
peer_port: 2380
- host: 192.168.11.14
client_port: 2379
peer_port: 2380
tidb_servers:
- host: 192.168.11.12
port: 4000
status_port: 10080
- host: 192.168.11.13
port: 4000
status_port: 10080
- host: 192.168.11.14
port: 4000
status_port: 10080
tikv_servers:
- host: 192.168.11.12
port: 20160
status_port: 20180
- host: 192.168.11.13
port: 20160
status_port: 20180
- host: 192.168.11.14
port: 20160
status_port: 20180
- host: 192.168.11.15
port: 20160
status_port: 20180
tiflash_servers:
- host: 192.168.11.12
tcp_port: 9000
http_port: 8123
flash_service_port: 3930
flash_proxy_port: 20170
flash_proxy_status_port: 20292
metrics_port: 8234
- host: 192.168.11.13
tcp_port: 9000
http_port: 8123
flash_service_port: 3930
flash_proxy_port: 20170
flash_proxy_status_port: 20292
- host: 192.168.11.14
tcp_port: 9000
http_port: 8123
flash_service_port: 3930
flash_proxy_port: 20170
flash_proxy_status_port: 20292
- host: 192.168.11.15
tcp_port: 9000
http_port: 8123
flash_service_port: 3930
flash_proxy_port: 20170
flash_proxy_status_port: 20292
monitoring_servers:
- host: 192.168.11.15
port: 9090
grafana_servers:
- host: 192.168.11.15
port: 3000
alertmanager_servers:
- host: 192.168.11.15
web_port: 9093
cluster_port: 9094
tiup cluster check ./topology.yaml --user root
tiup cluster check ./topology.yaml --apply --user root
tiup cluster deploy tidb-test v6.5.0 ./topology.yaml --user root
tiup cluster display tidb-test
普通启动
tiup cluster start tidb-test
预期结果输出 Started cluster tidb-test successfully,表示启动成功。使用普通启动方式后,可通过无密码的 root 用户登录数据库。
安全启动
tiup cluster start tidb-test --init
Started cluster `tidb-test` successfully.
The root password of TiDB database has been changed.
The new password is: 'y_+3Hwp=*AWz8971s6'.
Copy and record it to somewhere safe, it is only displayed once, and will not be stored.
The generated password can NOT be got again in future.
注意
- 使用安全启动方式后,不能通过无密码的 root 用户登录数据库,你需要记录命令行返回的密码进行后续操作。
- 该自动生成的密码只会返回一次,如果没有记录或者忘记该密码,请参照忘记 root 密码修改密码。
tiup cluster display tidb-test
预期结果输出:各节点 Status 状态信息为 Up 说明集群状态正常。
无密码登录
mysql --host 127.0.0.1 --port 4000 -uroot
有密码登录
mysql --host 127.0.0.1 --port 4000 -uroot -p
创建用户
CREATE USER 'root'@'%' IDENTIFIED BY 'yisa123456';
授权
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
http://pd_host:2379 初始用户名为root, 密码为空
tiup cluster stop tidb-test
停止所有节点所有服务
tiup cluster stop tidb-test -R [pd/tidb/tikv/tiflash]
停止所有节点的某服务
tiup cluster stop tidb-test -N [node1,node2,...] -R [pd/tidb/tikv/tiflash]
停止某节点的某服务