1、下載離線安裝包
下載地址
進入官方下載地址,選擇社區版下載,以及選擇對應的版本,我這裏選擇的是最新版4.0.11下載。
https://pingcap.com/download-cn/community/
2、安裝準備
2.1創建普通用戶
#創建用戶
#adduser tidb
#設置密碼
#passwd tidb
2.2配置免密碼登錄
編輯/etc/sudoers文件
vim/etc/sudoers
在文件末尾添加
tidbALL=(ALL) NOPASSWD:ALL
2.3創建tidb用戶ssh key
切換用戶
su- tidb
執行命令,一直按回車鍵就行
ssh-keygen -t rsa
3、安裝部署
3.1 文件上傳到服務器
切換到tidb用戶,新建以下兩個目錄
mkdirtidb-deploy
mkdirtidb-data
第一步下載的離線包,上傳到這個用戶的根目錄解壓:
# tar -zxvf tidb-community-server-${version}-linux-amd64.tar.gz
執行instal文件
sh tidb-community-server-${version}-linux-amd64/local_install.sh
根據完成後提示中的第一點,執行如下命令,具體命令根據提示中的來:
source/home/tidb/.bash_profile
至此,TiDB安裝所需的TiUP組件已經安裝完成,下面進行安裝。
3.2配置初始化參數文件
集羣初始化配置文件需要手動編寫,在tidb用戶根目錄創建 YAML 格式配置文件,下面是我的配置文件 topology.yaml:
global:
user:"tidb"
ssh_port: 22
deploy_dir:"/home/tidb/tidb-deploy"
data_dir:"/home/tidb/tidb-data"
monitored:
node_exporter_port: 9100
blackbox_exporter_port: 9115
server_configs:
tidb:
log.slow-threshold: 300
tikv:
readpool.storage.use-unified-pool:false
readpool.coprocessor.use-unified-pool:true
pd:
replication.enable-placement-rules:true
replication.location-labels:["host"]
tiflash:
logger.level:"info"
pd_servers:
-host: 192.168.1.72
tidb_servers:
-host: 192.168.1.72
tikv_servers:
-host: 192.168.1.72
port: 20160
status_port: 20180
config:
server.labels:{host:"logic-host-1"}
-host: 192.168.1.72
port: 20161
status_port: 20181
config:
server.labels:{host:"logic-host-2"}
-host: 192.168.1.72
port: 20162
status_port: 20182
config:
server.labels:{host:"logic-host-3"}
tiflash_servers:
-host: 192.168.1.72
monitoring_servers:
-host: 192.168.1.72
grafana_servers:
-host: 192.168.1.72
3.3部署集羣
部署命令
tiupcluster deploy tidb-test v4.0.11 ./topology.yaml --user tidb -p
參數說明:
· 通過 TiUP cluster 部署的集羣名稱爲 tidb-test
· 部署版本爲 v4.0.0,其他版本可以執行 tiup list tidb 獲取
· 初始化配置文件爲 topology.yaml
· --user tidb:通過 tidb 用戶登錄到目標主機完成集羣部署,該用戶需要有 ssh 到目標機器的權限,並且在目標機器有 sudo 權限。也可以用其他有 ssh 和 sudo 權限的用戶完成部署。
· [-i] 及 [-p]:非必選項,如果已經配置免密登陸目標機,則不需填寫。否則選擇其一即可,[-i] 爲可登錄到部署機 root 用戶(或 --user 指定的其他用戶)的私鑰,也可使用 [-p] 交互式輸入該用戶的密碼
如無意外,會出現successfully的提示信息。
3.4啓動集羣
啓動命令
tiup cluster start tidb-test
如無意外,會出現successfully的提示信息。
檢查集羣狀態,命令:tiup cluster display tidb-test
Startingcomponent`cluster`:/home/ubuntu/.tiup/components/cluster/v1.3.2/tiup-clusterdisplaytidb-test
Cluster type: tidb
Cluster name: tidb-test
Cluster version: v4.0.11
SSH type: builtin
Dashboard URL: http://192.168.1.72:2379/dashboard
ID Role Host Ports OS/Arch Status DataDir DeployDir
-- ---- ---- ----- ------- ------ -------- ----------
192.168.1.72:3000 grafana 192.168.1.72 3000 linux/x86_64 Up - /home/ubuntu/tidb/tidb-deploy/grafana-3000
192.168.1.72:2379 pd 192.168.1.72 2379/2380 linux/x86_64 Up|L|UI /home/ubuntu/tidb/tidb-data/pd-2379 /home/ubuntu/tidb/tidb-deploy/pd-2379
192.168.1.72:9090 prometheus 192.168.1.72 9090 linux/x86_64 Up /home/ubuntu/tidb/tidb-data/prometheus-9090 /home/ubuntu/tidb/tidb-deploy/prometheus-9090
192.168.1.72:4000 tidb 192.168.1.72 4000/10080 linux/x86_64 Up - /home/ubuntu/tidb/tidb-deploy/tidb-4000
192.168.1.72:9000 tiflash 192.168.1.72 9000/8123/3930/20170/20292/8234 linux/x86_64 Up /home/ubuntu/tidb/tidb-data/tiflash-9000 /home/ubuntu/tidb/tidb-deploy/tiflash-9000
192.168.1.72:20160 tikv 192.168.1.72 20160/20180 linux/x86_64 Up /home/ubuntu/tidb/tidb-data/tikv-20160 /home/ubuntu/tidb/tidb-deploy/tikv-20160
192.168.1.72:20161 tikv 192.168.1.72 20161/20181 linux/x86_64 Up /home/ubuntu/tidb/tidb-data/tikv-20161 /home/ubuntu/tidb/tidb-deploy/tikv-20161
192.168.1.72:20162 tikv 192.168.1.72 20162/20182 linux/x86_64 Up /home/ubuntu/tidb/tidb-data/tikv-20162 /home/ubuntu/tidb/tidb-deploy/tikv-20162
Total nodes: 8
以上輸出的結果中,可以看到tidb的端口號是4000,pd運維端口是2379。我們通過Navicat這種工具連接數據庫是使用4000端口,默認密碼爲空。
3.5 關鍵組件
幾個關鍵組件信息:
· Pd:元數據及控制調度組件
· Tikv:存儲組件
· Tidb:數據庫實例組件
· Tiflash:閃存組件
· Tidb雖然和mysql類似,但是它厲害在分佈式,如果要使用mysql,數據庫變大後,要思考慮分庫分表、使用mycat等數據路由工具,Tidb設計從底層一開始分佈式,類似hdfs的存儲架構,將分佈式做成一種原生的架構。
3.6 tiup cluster 命令說明
1. 部署集羣
部署集羣的命令爲 tiup cluster deploy,一般用法爲:
tiup cluster deploy <cluster-name> <version> <topology.yaml> [flags]
2. 查看集羣列表
集羣部署成功後,可以通過 tiup cluster list 命令在集羣列表中查看該集羣 3. 啓動集羣
集羣部署成功後,可以執行以下命令啓動該集羣。如果忘記了部署的集羣的名字,可以使用 tiup cluster list 命令查看
tiupcluster start prod-cluster
4. 檢查集羣狀態
如果想查看集羣中每個組件的運行狀態,逐一登錄到各個機器上查看顯然很低效。因此,TiUP 提供了 tiup clusterdisplay 命令,用法如下:
tiupcluster display prod-cluster
其他詳細的命令與運維操作,可以在官網文檔中查看
TiUP組件文檔
4、連接測試
因爲TiDB內核是MySQL,所以直接用Navicat工具選擇連接MySQL就行:
使用Navicat登錄進去後,可以看到目前最新版本的TiDB的MySQL內核是:5.7.25
5、訪問控制面板
5.1主頁:
5.2看集羣每個節點的狀態
5.3一段時間(指定)SQL語句分析
5.4慢查詢
監控控制面板這個工具還是挺好用,其他的就不一一截圖了,主要的功能包含有:
· 集羣信息
· SQL語句分析
· 慢查詢
· 流量可視化
· 集羣診斷
· 日誌搜索
· 高級調試
o 實時性能分析
給運維人員和開發人員使用都非常的友好。
本文分享自微信公衆號 - 北極心(TEDWX666)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。