部署Tidb

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的端口號是4000pd運維端口是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登錄進去後,可以看到目前最新版本的TiDBMySQL內核是:5.7.25


5、訪問控制面板

5.1主頁:


5.2看集羣每個節點的狀態

5.3一段時間(指定)SQL語句分析


5.4慢查詢


監控控制面板這個工具還是挺好用,其他的就不一一截圖了,主要的功能包含有:

·        集羣信息

·        SQL語句分析

·        慢查詢

·        流量可視化

·        集羣診斷

·        日誌搜索

·        高級調試

o   實時性能分析

給運維人員和開發人員使用都非常的友好。

 


本文分享自微信公衆號 - 北極心(TEDWX666)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章