目录
基础环境说明
TDSQL 集群架构设计
基础部署
1.配置主机名
2.添加主机名IP映射
3.开启时间同步
4.规划存储目录
TDSQL下载
TDSQL配置
1.配置免密登录
2.修改tdsql_hosts文件
3.配置tdsql密码
4.修改ansible变量
5.安装ansible
TDSQL安装
赤兔初始化
1.环境检测
2.集群配置
3.集群初始化
4.新增IDC配置
5.新增db机器的机型
6.新增网关机器的机型
7.上报db设备资源
8.上报网关资源
9.新增网关组
10.创建实例
11.配置数据库
12.授权许可文件
基础环境说明
操作系统CentOS 7.9
服务器资源
4台虚拟主机(CPU:4C/MEM:8G/HDD:100G)
TDSQL 集群架构设计
三台主机为集群主机
另外一台192.168.5.132为主控机
基础部署
1.配置主机名
# 每台主机分别设置主机名hostname td129hostname td130hostname td131hostname td132
2.添加主机名IP映射
# 每台主机都执行vim /etc/hosts192.168.5.129 td129192.168.5.130 td130192.168.5.131 td131192.168.5.132 td132
3.开启时间同步
安装ntp软件包
# 所有主机都要安装yum -y install ntp
配置时间同步服务主机
以td129主机为时间同步服务主机,其他主机从该主机同步时间
# td129主机添加配置vim /etc/ntp.confserver 127.127.1.0 iburstsystemctl restart ntpd.service
其他主机配置时间同步
# 剩余三台主机都执行vim /etc/ntp.confserver 192.168.5.129restrict 192.168.5.129 mask 255.255.255.0 nomodify notrapsystemctl restart ntpd.service
4.规划存储目录
# 所有主机执行mkdir -p /datamkdir -p /data1
TDSQL下载
下载腾讯云独立输出TDSQL(软件介质)
wget https://tdsql1031730-1300276124.cos.ap-/tdsql_10.3.17.3.0.zipunzip tdsql_10.3.17.3.0.zip
TDSQL配置
1.配置免密登录
在主控机节点td132上配置到所有主机免密登录
cd /root/tdsql_10.3.17.3.0/tdsql_install/scriptsvim ip_passwd_lis
sh nokey.sh
执行完成后,免密登录配置完成。
2.修改tdsql_hosts文件
避免中文乱码,首先执行
export LANG='en_US.UTF-8'
修改tdsql_hosts文件
cd /root/tdsql_10.3.17.3.0/tdsql_installvim tdsql_hosts[tdsql_allmacforcheck]tdsql_mac1 ansible_ssh_host=192.168.5.129tdsql_mac2 ansible_ssh_host=192.168.5.130tdsql_mac3 ansible_ssh_host=192.168.5.131tdsql_mac4 ansible_ssh_host=192.168.5.132[tdsql_zk]tdsql_zk1 ansible_ssh_host=192.168.5.129tdsql_zk2 ansible_ssh_host=192.168.5.130tdsql_zk3 ansible_ssh_host=192.168.5.131[tdsql_scheduler]tdsql_scheduler1 ansible_ssh_host=192.168.5.130tdsql_scheduler2 ansible_ssh_host=192.168.5.131[tdsql_oss]tdsql_oss1 ansible_ssh_host=192.168.5.130tdsql_oss2 ansible_ssh_host=192.168.5.131[tdsql_chitu]tdsql_chitu1 ansible_ssh_host=192.168.5.130tdsql_chitu2 ansible_ssh_host=192.168.5.131[tdsql_monitor]tdsql_monitor1 ansible_ssh_host=192.168.5.130tdsql_monitor2 ansible_ssh_host=192.168.5.131[tdsql_db]tdsql_db1 ansible_ssh_host=192.168.5.129tdsql_db2 ansible_ssh_host=192.168.5.130tdsql_db3 ansible_ssh_host=192.168.5.131[tdsql_proxy]tdsql_proxy1 ansible_ssh_host=192.168.5.129tdsql_proxy2 ansible_ssh_host=192.168.5.130tdsql_proxy3 ansible_ssh_host=192.168.5.131[tdsql_hdfs]tdsql_hdfs1 ansible_ssh_host=192.168.5.129[tdsql_lvs]tdsql_lvs1 ansible_ssh_host=192.168.5.130tdsql_lvs2 ansible_ssh_host=192.168.5.131[tdsql_kafka]tdsql_kafka1 ansible_ssh_host=192.168.5.129tdsql_kafka2 ansible_ssh_host=192.168.5.130tdsql_kafka3 ansible_ssh_host=192.168.5.131[tdsql_consumer]tdsql_consumer1 ansible_ssh_host=192.168.5.129[tdsql_es]tdsql_es1 ansible_ssh_host=192.168.5.129[tdsql_mc]tdsql_mc1 ansible_ssh_host=1.1.1.1tdsql_mc2 ansible_ssh_host=1.1.1.1tdsql_mc3 ansible_ssh_host=1.1.1.1[tdsql_newdb]tdsql_newdb1 ansible_ssh_host=1.1.1.1tdsql_newdb2 ansible_ssh_host=2.2.2.2tdsql_newdb3 ansible_ssh_host=3.3.3.3[tdsql_ansible_test]tdsql_ansible_test1 ansible_ssh_host=1.1.1.1tdsql_ansible_test2 ansible_ssh_host=2.2.2.2tdsql_ansible_test3 ansible_ssh_host=3.3.3.3
3.配置tdsql密码
# 操作系统账号tdsql的明文密码
# 如果有规划要部署两个集群做DCN同步, 则这两个集群的tdsql密码要一致
tdsql_os_pass: a+complex+password
4.修改ansible变量
cd /root/tdsql_10.3.17.3.0/tdsql_install/group_varsvim all# scheduler,oss机器网卡tdsql_sche_netif: ens32# 操作系统账号tdsql的明文密码# 如果有规划要部署两个集群做DCN同步, 则这两个集群的tdsql密码要一致tdsql_os_pass: a+complex+password# 赤兔监控库配置, 赤兔初始化完成后需要将监控库信息在这里更新tdsql_metadb_ip: 192.168.5.130tdsql_metadb_port: 15001tdsql_metadb_ip_bak: 192.168.5.131tdsql_metadb_port_bak: 15001tdsql_metadb_user: hanlontdsql_metadb_password: 123456# 多源同步消费服务的机器网卡tdsql_consumer_netif: ens32# 一致性读MC机器的网卡, 需要安装MC时配置tdsql_mc_netif: ens32
5.安装ansible
在主控机安装ansible
cd /root/tdsql_10.3.17.3.0/tdsql_install/scriptssource environment_setsh install_ansible.sh
验证ansible安装是否成功
ansible --versionansible 2.9.6config file = /etc/ansible/ansible.cfgconfigured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']ansible python module location = /usr/local/lib/python3.8/site-packages/ansible-2.9.6-py3.8.egg/ansibleexecutable location = /usr/local/bin/ansiblepython version = 3.8.2 (default, May 1 , 01:36:39) [GCC 4.8.5 0623 (Red Hat 4.8.5-44)]
ansible安装成功
TDSQL安装
使用tdsql安装zookeeper
cd /root/tdsql_10.3.17.3.0/tdsql_installansible-playbook -i tdsql_hosts playbooks/tdsql_part1_site.yml
安装大约需要9分钟,日志在/var/log/ansible.log,最终显示failed任务数为0表示安装成功。
赤兔初始化
网页访问安装chitu模块的机器地址,进行chitu初始化
http://192.168.5.130/tdsqlpcloud
勾选同意,下一步
1.环境检测
安装完成后,环境检测都是“通过”的,然后下一步
2.集群配置
第一步:集群命名,这个名称是全局唯一的,这里我命名为testcluster
第二步:配置OSS服务列表,前面配置了几个OSS节点,这里就填几个,格式如提示那样“IP:PORT”形式
第三步:测试OSS服务连接,点击旁边的“测试服务连接”按钮,zookeeper列表会自动显示,zookeeper节点目录也会自动显示
第四步:检查集群信息,点击“测试服务连接”后,集群信息也是自动显示,这里检查一下
第五步:点击下一步
3.集群初始化
接下来对每一项内容初始化
4.新增IDC配置
命名规则可以这样定义:城市+机房+房间号+机架号
IDC是策略上的配置,要对应到实际的机架信息上。比如有2个DB机器,为了保证DB实例跨机架,新增2个IDC
IDC权重:IDC权重皆使用默认值100
5.新增db机器的机型
机型:TS80,根据实际情况设定。(机型的名字要全部大写)CPU、内存和磁盘:设置机型的时候要依据实际的机器配置 CPU:设置为实际机器一致内存:设置为实际机器的75%磁盘:设置为实际机器的90%磁盘包括:数据盘和日志盘,比例为3:1目录结构 数据目录:/data1/tdengine/data日志目录:/data1/tdengine/log安装包目录:/data/home/tdsql/tdsqlinstall数据库安装目录:/data/tdsql_run预留资源百分比:固定不变6.新增网关机器的机型
网关机型已经自动创建好,不需要手动创建,请勿修改!!!
7.上报db设备资源
IP:填写实际的DB机器的通信ip地址
机型:选择刚才创建的机型,如TS80
IDC:根据实际情况,选择其归属于哪一个IDC(不同DB机器要划分到不同IDC中)
fenceid、frame、zone:默认
8.上报网关资源
IP:填写实际的PROXY机器的通信ip地址
IDC:同一网关组内的网关可以划分在不同的IDC中,或者相同的IDC中
9.新增网关组
因为之前上报了2台proxy机器,且这2台proxy机器划分在不同的IDC中,所以这里选择“从2个IDC中取2台机器”
10.创建实例
创建一个监控库实例
基础设置如下
容灾设置如下
因为之前设置的是两个DB,这里选择“一主一备”,新增IDC分布,依据之前设置的IDC分布,如果设置的是一个IDC,则关闭IDC校验
实例创建完成,选择“初始化”
11.配置数据库
12.授权许可文件
跳过授权即可
至此安装完成。