创立四台云主机或者本地四台 Centos7.6 的 VM 虚拟机
(四台云主机)
1、环境规划
2、装置部署
2.1 设置主机名
别离在四台机器上执行。
hostnamectl set-hostname tdsql1
hostnamectl set-hostname tdsql2
hostnamectl set-hostname tdsql3
hostnamectl set-hostname tdsql4
2.2 设置主机名
vim /etc/hosts
172.21.0.5 tdsql1
172.21.0.6 tdsql2
172.21.0.13 tdsql3
172.21.0.15 tdsql4
2.3 设置 NTP 工夫同步
以 tdsql1 为主时钟服务器,tdsql2,tdsql3,tdsql4 向 tdsql1 做工夫校准
[root@tdsql1 ~]# vim /etc/ntp.conf
server 127.127.1.0 iburst
[root@tdsql1 ~]# systemctl restart ntpd.service #重启时钟同步服务
2.4 配置 tdsql2 3 4 时钟同步
[root@tdsql2 ~]# vim /etc/ntp.conf
server 172.21.0.5
restrict 172.21.0.5 mask255.255.255.0 nomodify notrap
[root@tdsql3 ~]# vim /etc/ntp.conf
server 172.21.0.5
restrict 172.21.0.5 mask255.255.255.0 nomodify notrap
[root@tdsql4 ~]# vim /etc/ntp.conf
server 172.21.0.5
restrict 172.21.0.5 mask255.255.255.0 nomodify notrap
systemctl restart ntpd.service #在 tdsql2 3 4 主机上重启 NTP 服务。
ntpdate -u 172.21.0.5 #在 tdsql2 3 4 主机上同步一次 tdsql1 主机工夫。
2.5 配置免密登录
(治理机 172.21.0.15 tdsql4 上操作)
ssh-keygen -t rsa
ssh-copy-id 172.21.0.5
ssh-copy-id 172.21.0.6
ssh-copy-id 172.21.0.13
ssh-copy-id 172.21.0.15
在 tdsql4 上执行验证是否胜利配置了免密登录。
ssh tdsql1
ssh tdsql2
ssh tdsql3
ssh tdsql4
2.6 筹备数据目录门路
(所有机器 tdsql1 tdsql2 tdsql3 tdsql4)
mkdir -p /data
mkdir -p /data1
2.7 上传 / 下载 ansible/tdsql 安装包
下载到 tdsql4 治理主机上
[root@tdsql4 ~]# mkdir /tdsql
[root@tdsql4 ~]# cd /tdsql
wget https://tencent-cloud-product…
wget https://tencent-cloud-product…
2.8 初始化机器环境
[root@tdsql4 tdsql]# cd /tdsql/
[root@tdsql4 tdsql]# unzip ansible_tdsql_install_20200623.zip
[root@tdsql4 tdsql]# cd ansible_install/script/
2.8.1 装置 yum 源
[root@tdsql4 tdsql]# sh init_os_for_yum_install.sh
2.8.2 装置 python3
[root@tdsql4 tdsql]# sh install_python3_for_x86.sh
[root@tdsql4 tdsql]# source /etc/profile
[root@tdsql4 tdsql]# python3 –version
2.8.3 装置 ansible
[root@tdsql4 tdsql]# sh install_ansible.sh
2.8.4 解压 tdsql 安装包
[root@tdsql4 tdsql]# cd /tdsql
[root@tdsql4 tdsql]# unzip tdsql_packet_10.3.14.6.0_x86_D014.zip
2.9 批改 tdsql_hosts 配置文件
[root@tdsql4 tdsql]# mv /tdsql/tdsql_install/tdsql_hosts /tdsql/tdsql_install/tdsql_hosts.bak #备份配置文件。
[root@tdsql4 tdsql]# vim /tdsql/tdsql_install/tdsql_hosts #从新创立配置文件。
================== 复制内容 ===================
[tdsql_allmacforcheck]
tdsql_tdsql1 ansible_ssh_host=172.21.0.5
tdsql_tdsql2 ansible_ssh_host=172.21.0.6
tdsql_tdsql3 ansible_ssh_host=172.21.0.13
tdsql_tdsql4 ansible_ssh_host=172.21.0.15
[tdsql_zk]
tdsql_zk1 ansible_ssh_host=172.21.0.5
tdsql_zk2 ansible_ssh_host=172.21.0.6
tdsql_zk3 ansible_ssh_host=172.21.0.13
[tdsql_scheduler]
tdsql_scheduler1 ansible_ssh_host=172.21.0.6
tdsql_scheduler2 ansible_ssh_host=172.21.0.13
[tdsql_oss]
tdsql_oss1 ansible_ssh_host=172.21.0.6
tdsql_oss2 ansible_ssh_host=172.21.0.13
[tdsql_chitu]
tdsql_chitu1 ansible_ssh_host=172.21.0.6
tdsql_chitu2 ansible_ssh_host=172.21.0.13
[tdsql_monitor]
tdsql_monitor1 ansible_ssh_host=172.21.0.6
tdsql_monitor2 ansible_ssh_host=172.21.0.13
[tdsql_db]
tdsql_db1 ansible_ssh_host=172.21.0.5
tdsql_db2 ansible_ssh_host=172.21.0.6
tdsql_db3 ansible_ssh_host=172.21.0.13
[tdsql_proxy]
tdsql_proxy1 ansible_ssh_host=172.21.0.5
tdsql_proxy2 ansible_ssh_host=172.21.0.6
tdsql_proxy3 ansible_ssh_host=172.21.0.13
[tdsql_hdfs]
tdsql_hdfs1 ansible_ssh_host=172.21.0.15
[tdsql_lvs]
tdsql_lvs1 ansible_ssh_host=172.21.0.6
tdsql_lvs2 ansible_ssh_host=172.21.0.13
[tdsql_kafka]
tdsql_kafka1 ansible_ssh_host=172.21.0.5
tdsql_kafka2 ansible_ssh_host=172.21.0.6
tdsql_kafka3 ansible_ssh_host=172.21.0.13
[tdsql_consumer]
tdsql_consumer1 ansible_ssh_host=172.21.0.15
[tdsql_es]
tdsql_es1 ansible_ssh_host=172.21.0.15
[tdsql_intercity]
tdsql_intercity1 ansible_ssh_host=172.21.0.15
[tdsql_newdb]
tdsql_newdb1 ansible_ssh_host=1.1.1.1
tdsql_newdb2 ansible_ssh_host=2.2.2.2
tdsql_newdb3 ansible_ssh_host=3.3.3.3
[tdsql_ansible_test]
tdsql_ansible_test1 ansible_ssh_host=1.1.1.1
tdsql_ansible_test2 ansible_ssh_host=2.2.2.2
tdsql_ansible_test3 ansible_ssh_host=3.3.3.3
================== 复制内容 ===================
2.10 批改 ansible 配置
[root@tdsql4group_vars]#mv/tdsql/tdsql_install/group_vars/all /tdsql/tdsql_install/group_vars/all.bak #备份 all 配置文件
vim /tdsql/tdsql_install/group_vars/all #创立配置文件
================== 复制内容 ===================
tdsql_env_cpu: x86
tdsql_env_os: yum_install
tdsql_zk_num: 3
tdsql_sche_netif: eth0
tdsql_os_pass: a+complex+password
tdsql_zk_rootdir: /tdsqlzk
tdsql_metadb_ip: 172.21.0.5
tdsql_metadb_port: 15001
tdsql_metadb_ip_bak: 172.21.0.6
tdsql_metadb_port_bak: 15001
tdsql_metadb_user: tdsqlpcloud
tdsql_metadb_password: tdsqlpcloud
tdsql_hdfs_num: 1
tdsql_hdfs_ssh: 22
tdsql_hdfs_datadir: /data2/hdfs,/data3/hdfs,/data4/hdfs
tdsql_hdfsdatadir_count: 3
tdsql_kafka_logdir: /data2/kafka,/data3/kafka,/data4/kafka
tdsql_es_mem: 2
tdsql_es_log_days: 7
tdsql_es_base_path: /data/application/es-install/es
tdsql_intercity_zkrootdir: /tdsqlcross
tdsql_intercity_netif: eth0
tdsql_zk_clientport: 2118
tdsql_zk_serverport1: 2338
tdsql_zk_serverport2: 2558
tdsql_oc_server_pass: K2JatUv5llBbMrske/k2YbqC
tdsql_oc_client_pass: LGhVs0v5nVxcOLQie/k9bb2I
tdsql_clouddba_metadb_pass: h5Wyg2Xy
tdsql_oss_metadb_pass: q9Cjn0Wl
================== 复制内容 ===================
2.11 装置 ZooKeeper
装置大略须要 15-25 分钟。
本步骤实现后, 赤兔平台即装置实现。
[root@tdsql4 group_vars] cd /tdsql/tdsql_install
[root@tdsql4 group_vars] sh playbooks/tdsql_encrypt.sh
[root@tdsql4 group_vars] ansible-playbook -i tdsql_hosts playbooks/tdsql_part1_site.yml
Failed= 0 都为 0 示意装置过程中没有谬误。
留神: 如果遇到异样信息能够到 tdsql4 主机 cat /var/log/ansible.log 门路下查看日志。
3、配置赤兔
赤兔平台在 tdsql2 tdsql3 主机上, 通过腾讯云服务器治理页面确认下, 公网 IP 地址, 拜访赤兔平台初始化页面。
网页拜访装置赤兔模块的机器地址, 进行赤兔初始化。
http://82.157.61.93/tdsqlpcloud
82.157.61.93/tdsqlpcloud
3.1 环境检测
全副显示”通过”, 点击下一步。
3.2 集群接入
填写, 集群名称,OSS 服务列表(tdsql2、tdsql3 的内网 IP 地址), 点击测试服务器连贯。
装置向导会主动补齐,Zookeeper 列表和 Zookeeper 节点信息, 并显示集群信息。点击下一步。
3.3 集群初始化
集群初始化须要配置 5 类资源。
3.3.1 IDC
IDC 举荐命名规定:
IDC_城市名首字母_区名首字母_机房编号_序号
3.3.2 机型规格
注:数据磁盘大小:总磁盘容量的 65% ; 日志磁盘大小:总磁盘容量的 25%
注:机型名称:PROXY(必须为大写)
3.3.3 设施资源
3.3.3.1 上报网关资源
3.3.3.2 上报 DB 资源
3.3.4 网关组
是否指定 IP, 此处选: 否。会主动搜寻出每个 IDC 中配置的网关 IP。
3.3.5 非分布式实例
3.3.5.1 根底设置
3.3.5.2 容灾设置
3.3.5.3 初始化数据库实例
3.3.6 集群初始化实现后参考图
3.4 为系统配置数据库
明码:tdsqlpcloud
3.5 登陆验证
网页拜访赤兔治理平台(应用谷歌浏览器)。
http://82.157.61.93/tdsqlpcloud
赤兔管理员:admin/123456
依据失去的连贯参数,用 mysql 客户端测试一下赤兔监控库是否能够连贯
mysql -h172.21.0.5 -P15001 -utdsqlpcloud -p’tdsqlpcloud’
3.6 监控实例的 proxy ip 地址
装置完赤兔后,获取到赤兔的监控实例的 proxy ip 地址,放到 ansible 的配置文件。
[root@tdsql4 tdsql_full_install_ansible]# vim /tdsql/tdsql_install/group_vars/all
metadb_ip: 172.21.0.5 #赤兔监控库的 proxy ip 主
metadb_port: 15001 #赤兔监控库的 proxy port 主
metadb_ip_bak: 172.21.0.6 #赤兔监控库的 proxy ip 备
metadb_port_bak: 15001 #赤兔监控库的 proxy port 备
metadb_user: tdsqlpcloud #赤兔监控库的用户名
metadb_password: tdsqlpcloud #赤兔监控库的明码
执行装置 part2_site.yml
cd /tdsql/tdsql_install
sh playbooks/tdsql_encrypt.sh #生产密文明码,依据明文主动帮大家生成
ansible-playbook -i tdsql_hosts playbooks/tdsql_part2_site.yml
4、其它组件装置
4.1 HDFS 装置
1. 在 dfs 机器上设置主机名
[root@tdsql4 tdsql_install]# vim /etc/hosts
172.21.0.15 tdsql4
2. 查看 tdsql_hosts 文件
[root@tdsql4 tdsql_install]# vim tdsql_hosts
[hdfs]
hdfs1 ansible_ssh_host=172.21.0.15
本试验 hdfs 采纳伪分布式装置, 只在 tdsql4 一台机器上装置 hdfs。
3. 批改 hdfs 变量
[root@tdsql4 tdsql_install]# vim /tdsql/tdsql_install/group_vars/all
tdsql_hdfs_num: 1
tdsql_hdfs_ssh: 22
tdsql_hdfs_datadir: /data2/hdfs,/data3/hdfs,/data4/hdfs
tdsql_hdfsdatadir_count: 3
4.hdfs 目录及权限
[root@tdsql4 tdsql_install]# mkdir -p /data2/hdfs
[root@tdsql4 tdsql_install]# mkdir -p /data3/hdfs
[root@tdsql4 tdsql_install]# mkdir -p /data4/hdfs
[root@tdsql4 tdsql_install]# chown -R tdsql:users /data2
[root@tdsql4 tdsql_install]# chown -R tdsql:users /data3
[root@tdsql4 tdsql_install]# chown -R tdsql:users /data4
5. 装置 hdfs 单点
[root@tdsql4 tdsql_install]# cd /tdsql/tdsql_install
[root@tdsql4 tdsql_install]# ansible-playbook -i tdsql_hosts playbooks/tdsql_hdfs_single.yml
6. 切换到 tdsql 用户
[root@tdsql4 tdsql_install]# su – tdsql
7. 用 tdsql 用户在 hdfs1 机器上,格式化 namenode
[tdsql@tdsql4 ~]$ hdfs namenode -format
8. 用 tdsql 用户在 hdfs1 机器上,启动 namenode 和 datanode
[tdsql@tdsql4 ~]$ hdfs –daemon start namenode
[tdsql@tdsql4 ~]$ hdfs –daemon start datanode
/*
附:用 tdsql 用户敞开 hdfs 过程
hdfs –daemon stop datanode
hdfs –daemon stop namenode
*/
9. 用 tdsql 用户执行以下命令
查看 /tdsqlbackup 目录是否曾经被主动创立,权限是否如下
[tdsql@tdsql4 ~]$ hadoop fs -ls /
如果目录不在或者权限不对,用上面命令批改:
[tdsql@tdsql4 ~]$ hadoop fs -mkdir /tdsqlbackup
[tdsql@tdsql4 ~]$ hadoop fs -chown tdsql.supergroup /tdsqlbackup
查看所有 datanode 节点状态,及上报的容量状况
[tdsql@tdsql4 ~]$ hdfs dfsadmin -report
4.2 装置 lvs
1. 配置 tdsql_hosts 文件
vim tdsql_hosts
[lvs]
lvs1 ansible_ssh_host=172.21.0.5
lvs2 ansible_ssh_host=172.21.0.6
2. 装置 lvs
ansible-playbook -i tdsql_hosts playbooks/tdsql_lvs.yml
3. 赤兔前台操作 lvs
上报 lvs 机器信息(2 台 lvs 机器信息都要上报)
接入层治理 –> LVS 设施资源管理 –> 上报 [LVS 设施资源]
进入虚拟机,查看网卡信息:
ifconfig -a
inet 172.21.0.5 netmask 255.255.240.0 #子网掩码:20
创立 VIP
VIP:布局一个 vip 的地址,vip 的地址要和 lvs 机器的通信 ip 地址在同一个网段内。
设施 IP 列表:填入 lvs 机器的通信 ip 地址,一行一个
4.3 装置 kafka
1. 查看 tdsql_hosts 文件
[root@tdsql4 tdsql_install]# vim /tdsql/tdsql_install/tdsql_hosts
[kafka]
kafka1 ansible_ssh_host=172.21.0.5
kafka2 ansible_ssh_host=172.21.0.6
kafka3 ansible_ssh_host=172.21.0.13
2. 批改多源同步变量
[root@tdsql4 tdsql_install]# vim /tdsql/tdsql_install/group_vars/all
kafka_logdir: /data2/kafka,/data3/kafka,/data4/kafka
3. 执行装置多源同步
[root@tdsql4 tdsql_install]# cd /tdsql/tdsql_install
[root@tdsql4 tdsql_install]# ansible-playbook -i tdsql_hosts playbooks/tdsql_kafka.yml
4. 验证是否装置胜利
[root@tdsql1 ~]# cat /data/application/kafka/logs/server.log —- 查看 kafka 启动信息
[root@tdsql2 ~]# cat /data/application/kafka/logs/server.log —- 查看 kafka 启动信息
[root@tdsql3 ~]# cat /data/application/kafka/logs/server.log —- 查看 kafka 启动信息
4.4 装置 consumer
1. 配置 tdsql_hosts 文件
[root@tdsql4 tdsql_install]# vim /tdsql/tdsql_install/tdsql_hosts
[consumer]
consumer1 ansible_ssh_host=172.21.0.15
2. 执行装置 consumer
[root@tdsql4 tdsql_install]# cd /tdsql/tdsql_install
[root@tdsql4 tdsql_install]# ansible-playbook -i tdsql_hosts playbooks/tdsql_consumer.yml
3. 启动消费者服务
在 consumer 的机器上,应用上面命令启动消费者服务
[root@tdsql4 tdsql_install]# cd /data/application/consumer/bin/
[root@tdsql4tdsql_install]#./binlogconsumermgn–zklist 172.21.0.5:2118,172.21.0.6:2118,172.21.0.13:2118 –zkrootpath /tdsqlzk –kafkazklist 172.21.0.5:2118,172.21.0.6:2118,172.21.0.13:2118 –kafkazkrootpath /kafka –dev eth0
4.5 装置 ES
1. 配置 tdsql_hosts 文件(不能与赤兔同一台机器)
[root@tdsql4 tdsql_install]# vim /tdsql/tdsql_install/tdsql_hosts
[es]
es1 ansible_ssh_host=172.21.0.15
2. 批改变量文件
[root@tdsql4 tdsql_install]# vim /tdsql/tdsql_install/group_vars/all
es_mem: 2
es_log_days: 7
es_base_path: /data/application/es-install/es
3. 执行装置 es
[root@tdsql4 tdsql_install]# cd /tdsql/tdsql_install
[root@tdsql4 tdsql_install]# ansible-playbook -i tdsql_hosts playbooks/tdsql_es_si
4. 启动命令(在 es 机器上操作):
[root@tdsql4 tdsql_install]# source /etc/profile
tdsql 用户启动:
[root@tdsql4 tdsql_install]# su – tdsql
[root@tdsql4 tdsql_install]# source /etc/profile
[root@tdsql4 tdsql_install]# cd /data/application/es-install/es/master/tools
[root@tdsql4 tdsql_install]# nohup ./start-elasticsearch.sh &
[root@tdsql4 tdsql_install]# cd /data/application/es-install/es/data/tools
[root@tdsql4 tdsql_install]# nohup ./start-elasticsearch.sh &
root 用户启动:
[tdsql@tdsql4 tools]$ exit
[root@tdsql4 tdsql_install]# cd /data/application/es-install/logstash/tools
[root@tdsql4 tdsql_install]# nohup ./start-logstash.sh &
[root@tdsql4 tdsql_install]# cd /data/application/es-install/es-cleaner
[root@tdsql4 tdsql_install]# nohup ./start-es-cleaner.sh &
[root@tdsql4 tdsql_install]# cd /data/application/es-install/kibana-5.6.4-linux-x86_64/bin
[root@tdsql4 tdsql_install]# nohup ./kibana &
5. 检测是否失常启动
ps -ef |grep elasticsearch | grep -v ‘grep’ |wc -l
输入为:4
ps -ef |grep logstash | grep -v ‘grep’ |wc -l
输入为:2
ps -ef |grep es-cleaner | grep -v ‘grep’ |wc -l
输入为:1
ps -ef |grep ‘node/bin/node’ | grep -v ‘grep’ |wc -l
输入为:1