30分钟

TDSQL(PostgreSQL版)安装部署实验

写在前边

​本次实验是基于腾讯CVM(腾讯云虚拟主机)部署的TBase企业版集群,需要部署开源版集群的请移步开源部署方案

实验简介

  1. 申请腾讯CVM
  2. 执行一键式安装脚本,并进行数据库的初始化。
  3. 使用OSS管控系统查看集群状态。

1 申请腾讯CVM主机

1.1 登陆腾讯云官网https://cloud.tencent.com,登录并申请两台CVM。要求在同一可用区,网络互通,每台配置8核8G内存,50G系统盘。操作系统CentOS 7.x。

(以下申请CVM步骤截图仅供参考,实际操作只需满足上述配置要求即可,其他配置如可用区等可根据实际情况选择,如果仅仅培训期间短时间实验,建议选择按量计费,减少费用支出)

cvm1.png
cvm2.png
cvm3.png
cvm4.png
cvm5.png
cvm_end.png

注:

此处需要申请两台相同的CVM。

本任务接下来的操作需要在两台CVM上都进行配置。

2 环境准备

2.1 使用ssh远程工具,通过两台CVM的公网IP地址,分别登录到两台CVM上

2.2 实验环境可忽略的步骤(生产环境需要配置)

  • 时间同步设置(腾讯云CVM本身已进行时间同步,可以不配置)
# 使用vim编辑器打开文件
vim /etc/security/limits.conf
添加以下内容:
#准许单个进程打开文件数
* soft    nofile  131072  
* hard    nofile  131072  
#准放运行的进程数
* soft    nproc   131072  
* hard    nproc   131072  
#限制内核文件的大小
* soft    core    unlimited  
* hard    core    unlimited  

使配置生效:
rm /etc/security/limits.d/* -f
  • 修改内核参数sysctl.conf(生产环境)
#使用vim编辑器打开文件
vim /etc/sysctl.conf

# 添加以下内容:
#所有在消息队列中的消息总和的最大值(msgmnb=64k)
kernel.msgmnb = 65536
#指定内核中消息队列中消息的最大值(msgmax=64k)
kernel.msgmax = 65536
#共享内存总量,以页为单位(4K/页),默认这个值足够大了
kernel.shmall = 4294967296 
#单个共享内存段的最大值 ,这个值需要大到让应用的内存段不用分成多个创建,否则性能会下降
kernel.shmmax=137438953472  
#可以创建的内存段数 ,默认这个值足够大了
kernel.shmmni = 4096 

#4个数据分别对应:SEMMSL、SEMMNS、SEMOPM、SEMMNI这四个核心参数
#SEMMSL :用于控制每个信号集的最大信号数量,建议最小值为postgresql最大连接数+10
#SEMOPM: 每个 semop 系统调用可以执行的信号操作的数量。建议设置 SEMOPM 等于SEMMSL 。
#SEMMNI :内核参数用于控制整个 Linux 系统中信号集的最大数量,建议128
#SEMMNS:用于控制整个 Linux 系统中信号(而不是信号集)的最大数,为SEMMSL * SEMMNI

kernel.sem = 50100 64128000 50100 1280

#准许系统所有进程一共可以打开的文件数量
fs.file-max = 6553600
#系统允许的最大异步IO队列长度
fs.aio-max-nr = 1048576

#增大locale port数量,默认是从32768开始
net.ipv4.ip_local_port_range = 1024 65535

#keepalive认定探测失效时间,默认是2小时,7200秒
net.ipv4.tcp_keepalive_time = 60   
#在认定连接失效之前,发送多少个TCP的keepalive探测包。缺省值是9
net.ipv4.tcp_keepalive_probes = 6  
#每隔多少秒重新发送keepalive探测包,默认是75秒 
net.ipv4.tcp_keepalive_intvl = 10

net.ipv6.conf.all.forwarding=1
net.ipv4.ip_forward=1
vm.dirty_background_bytes = 102400000
  • 关闭防火墙,并使防火墙开机不自启
systemctl stop firewalld
systemctl disable firewalld
  • 关闭SELinux,并使SELinux开机自动进入disabled状态
setenforce 0
vim /etc/selinux/config
#将其中的SELinux=后面改为disabled,保存退出
  • 修改主机名
hostnamectl set-hostname tbase01	#第1台CVM命名为tbase01
hostnamectl set-hostname tbase02	#第2台CVM命名为tbase02
  • 修改/etc/ssh/sshd_config配置
vim /etc/ssh/sshd_config
#进入文件,将其中的UseDNS后面改为no
#重启服务使修改立即生效
systemctl restart sshd

3 应用程序部署

  • 上传tbase安装包到CVM上,运行安装程序,实现TBase部署。

通过ssh工具上传tbase安装包到第一台CVM的/root目录下

  • 解压安装包

tar -zxf package_name.tar.gz

  • 配置安装选项role.conf
vim tbase_mgr/conf/role.info
#eth ip idc_name root password role( OssCenterMaster OssCenterSlave OssAgent Confdb Alarm TStudio Zookeeper)
#Notice: The machine that will be installed OssCenterMaster or OssCenterSlave can't be installed OssAgent

eth0 172.16.0.3 idc_1 root xxxxxxxx  OssCenterMaster|Confdb|TStudio|Etcd
eth0 172.16.0.13 idc_1 root xxxxxxxx  OssCenterSlave|Confdb|Alarm

!修改注意

eth0			改为CVM实际网卡名称(可用ifconfig或ip a查看)
172.16.0.3		分别改为每台CVM的IP地址(内网地址即可,可用ifconfig查看)
idc_1					idc信息,默认不改动
root					表示用root执行,默认不改动
xxxxxx					root密码,按实际的设置填写
OssCenterMaster等    	每台CVM上部署的角色,按本文档的内容填写即可
  • 运行安装程序#进入解压后的tbase_mgr目录,运行tbase_mgr.sh安装脚本即可 ./tbase_mgr.sh install
运行安装程序.png

3 TBase实例初始化

TBase支持资源模板和资源池两种方式初始化实例,本次实验选择的是资源池的初始化算法。

  • 登录OSS集群管理平台 访问TBase的OSS集群管理平台地址(一键安装软件步骤后提示的OSS地址,默认为tbase01的IP地址的8080端口)。登录用户名:admin 密码:Admin@TbaseV2。由于是首次登录,需要先更改密码,再重新登录一次。
initial1.png
  • 上传证书 登录后需要上传有效的证书文件,证书检验通过后即可使用oss管理界面点击或拖拽上传均可。
initial2.png
  • 添加服务器 注意后面需要添加多次,将用到的机器都添加进去。
initial3.png
initial4.png
  • 资源池管理
initial5.png
initial6.png
initial7.png
  • 添加租户
zuhu1.png
  • 添加实例
shili1.png
shili2.png
shili3.png
shili4.png
shili5.png
shili6.png
shili7.png
  • 实例审批和初始化
shenpi1.png

此处如果申请信息有误(申请的配置超过了实际的配置等),通过验证会失败。请根据实际报错判断问题。点击“通过”后还需要点击“确认”。

  • 实例初始化完成,查看集群状态

使用上在实例申请时建立的管理员(默认密码Tx2018@qq.com)登录进入集群管理平台,界面如下:

initial_end.png

至此位置,TBase安装部署完成。