天天看點

初識 TDSQL PostgreSQL 及部署指南

TDSQL for PostgreSQL 版本(原 TBase)是騰訊自主研發的分布式資料庫系統,集高擴充性、高SQL相容度、完整的分布式事務支援、多級容災能力以及多元度資源隔離等能力于一身。TDSQL PostgreSQL 版強大的安全和容災能力,已經成功應用在金融、政府、電信、醫療等行業的核心業務系統。同時,TDSQL PostgreSQL 版采用無共享的叢集架構,為使用者提供容災、備份、恢複、監控、安全、審計等全套解決方案,适用于GB~PB級的海量 HTAP 場景。

TDSQL PostgreSQL 介紹

  TDSQL PostgreSQL版(TDSQL for PostgreSQL)是騰訊自主研發的分布式資料庫系統。TDSQL PostgreSQL版 集高擴充性、SQL 高相容度、完整的分布式事務支援、多級容災及多元度資源隔離等功能于一身,采用無共享的叢集架構,提供容災、備份、恢複、監控、安全、審計等全套解決方案,适用于 GB級-PB 級的海量 HTAP 場景。

HTAP 特性

  混合事務分析處理(英語:Hybrid transactional/analytical processing),簡稱HTAP,Gartner公司發明的名詞,指既可以用做聯機資料處理,也可以用做線上資料分析的混合應用資料庫架構。1.來自維基百科

  事務和分析混合處理技術(Hybrid Transactional/Analytical Processing,HTAP)要求資源訴求沖突的兩種業務類型在同一個資料庫執行個體中完成處理。傳統的資料庫因各方面的限制,偏向于 OLTP 或 OLAP 的場景,兩者很難兼得。TDSQL PostgreSQL版 經過專門的設計能很好的支援 HTAP,同時具備高效的 OLTP 處理能力和專業的 OLAP 能力,降低業務複雜度和成本。

  TDSQL PostgreSQL版 在叢集的協調節點(Coordinator Node,CN)提供 OLTP 和 OLAP 兩個平面視角。OLTP 業務運作在存儲節點(Datanode,DN)的主節點,OLAP 業務運作在 DN 的備節點,二者資料同步采用流複制的方式。核心優化器會根據查詢所在的平面選用對應的優化器,同時 OLTP 和 OLAP 平面針對不同的負載采用合适的存儲格式。

多周邊生态支援

TDSQL PostgreSQL版 具有豐富的周邊生态:

  • 支援強大的地理資訊系統(GIS)。通過叢集化的 PostGis 插件,支援存儲空間地理資料,使 TDSQL PostgreSQL版 成為一個空間資料庫,能夠通過 SQL 語言高效的進行空間資料管理、數量測量和幾何拓撲分析
  • TDSQL PostgreSQL版 不僅是一個分布式關系型資料庫系統,同時還支援非關系資料類型 JSON。
  • 支援 Foreign Data Wrappers(FDW)功能,該功能實作了部分的 SQL/MED 規定,允許使用者使用普通 SQL 查詢來通路位于 PostgreSQL 之外的資料。

      FDW 功能提供一套程式設計接口,使用者可進行插件式的二次開發,建立外部資料源和資料庫間的資料通道。大多數情況下使用者可用 oracle_fdw、mysql_fdw、postgres_fdw,非關系型資料庫的 redis_fdw、mongodb_fdw,以及大資料的 hive_fdw、hdfs_fdw 等。基于 FDW 功能和已有插件,TDSQL PostgreSQL版 提供強大的資料庫聯邦能力,通過 TDSQL PostgreSQL版 能夠通路已有的多個資料源的資料。

産品功能

高效分布式 JOIN 計算

 業務分析場景,通常會有 2 個 或 多個 表關聯(JOIN)的邏輯,此邏輯在單機模式中是一個簡單的操作,但在叢集模式下,由于資料分布在1個或多個實體節點中,處理會相對複雜。在很多分布式解決方案中,JOIN 會把資料拉取到一個節點,進行關聯計算,不僅耗費了大量網絡資源,且語句的執行耗時會很高。

  TDSQL PostgreSQL版 通過如下方式對分布式 JOIN 進行高效計算,基于高效的全局查詢計劃和資料重分布的技術支撐,TDSQL PostgreSQL版 能輕易發揮并行計算的優勢,高效完成 JOIN 過程。

多核并行計算

  TDSQL PostgreSQL版 在節點内部采用了并行計算,同時啟動多個程序來協同完成一個查詢,可充分利用伺服器的多核處理能力來快速、高效地完成查詢。通常情況下,TDSQL PostgreSQL版 會啟動多個程序來完成查詢,查詢時間會大大縮短,如果有更多的資源可供使用,查詢時間則會呈線性優化。

TDSQL PostgreSQL版 會根據查詢表大小來決定是否進行并行查詢,表的資料量超過門檻值後,才會采用并行計算,當需要并行計算時,會根據表大小得出并行度,即需要的程序個數。

資料安全保障功能

資料加密

 TDSQL PostgreSQL版 提供兩種資料加密方式:

  • 業務側加密

      業務調用 TDSQL PostgreSQL版 内置的加密函數,将加密結果寫入資料庫,正常讀取的也是加密後的資料,然後在應用裡執行解密。

  • TDSQL PostgreSQL版 内置加密

      加密過程對業務側透明,優點如下:

      

    • 加密操作(函數調用)與業務側解耦合,業務隻負責寫入原始資料到資料庫核心,後續的加密計算在資料庫内部完成,進而業務側操作上無感覺。
    • 加密算法由資料庫維護,包括加密算法的選擇、密鑰管理,都由安全員獨立操作完成。

      TDSQL PostgreSQL版 核心加密計算支援異步加密,保證系統在吞吐不變的情況下,達成資料加密。支援的加密算法有 AES128、AES192、AES256、國密SM4。

      同時 TDSQL PostgreSQL版 支援透明資料脫敏功能,在使用者無感覺的情況下,對非授權使用者傳回被脫敏的資料。

      從以上兩個次元實作更細粒度的資料通路控制,增強對現有通路的控制,且對現有業務系統無感覺。

全方位審計

 TDSQL PostgreSQL版 從多個次元提供全方位的審計能力,審計采用旁路檢測方式,對資料庫運作影響極小。審計類型如下:

  • 語句審計:針對某一種特定的語句進行審計。
  • 對象審計:針對某個資料庫對象的操作進行審計。
  • 使用者審計:針對某個資料庫使用者的操作進行審計。
  • 細粒度審計(Fine-Grained Audit,FGA):進階審計選項,使用表達式來作為審計條件,可設定審計被觸發時的動作,例如,發郵件打電話等。

資料治理功能

  資料治理包括資料傾斜的治理和冷熱資料分級存儲。資料傾斜的治理用以解決資料分布不均帶來的存儲及性能壓力,冷熱資料分級存儲用以降低業務的存儲成本、提升熱資料的性能。

資料傾斜治理

  該方案首先把系統的 DN 分為 group,每個 group 包含一個或多個 DN;每個 group 有一個 shardmap;建 sharded 表時,可以指定存儲的 group;CN 可以通路所有的 group,且 CN 上存儲所有表的通路方式資訊。

  對于系統中資料量較大的使用者進行特别識别,并為其建立白名單,使用不同的資料分布邏輯:

  • 普通使用者使用預設的資料分布邏輯,即 Shardid = Hash(merchantid) % #shardmap
  • 大使用者使用定制的資料分布邏輯,即 Shardid = Hash(merchantid) % #shardmap + fcreate_time dayoffset from 1970-01-01

      通過在大使用者 group 分布邏輯中加入日期偏移,來實作同一個使用者的資料在 group 内部多個節點間均勻分布,進而有效解決資料分布不均勻問題。

冷熱資料分離

  核心原生支援資料的冷熱分離,業務無需感覺底層存儲媒體的不同,對外提供統一的資料庫視圖。

  • 冷熱資料使用不同的節點 group 存儲,節點組内部使用的實體機型配置不同,進而達到冷熱分離節省成本的目的。
  • 背景定時任務根據使用者配置的冷熱資料規則,自動進行資料遷移,系統即可實作自動的冷熱分離,業務無需關心叢集的冷熱資料存儲情況。

多級容災功能

  TDSQL PostgreSQL版 在多個次元保證叢集的容災能力:

強同步複制

    TDSQL PostgreSQL版 支援強同步複制,在節點級保證每個節點的主從資料完全一緻,是整個容災體系的基礎,當主節點(Master)故障發生時,資料庫可切換到從節點(Slave)提供服務且無任何資料丢失。強同步機制要求使用者請求發生,從節點寫入日志成功後,才給使用者傳回成功,保證主從節點的資料時刻一緻。

主從高可用

  TDSQL PostgreSQL版 主從高可用方案主要通過每組節點的多副本備援來實作服務不中斷或中斷時間很短,當一組節點的主節點出現故障不可恢複,将自動從對應的備節點中選出新的主節點工作。在主從高可用基礎上 TDSQL PostgreSQL版 支援:

    • 故障自動轉移

        叢集中主節點故障時,系統自動從對應的從節點中選出新的主節點,故障節點自動被叢集隔離,基于強同步複制政策,主從切換保證主從資料完全一緻,可滿足金融級資料一緻性要求。

    • 故障恢複

        備節點因磁盤故障導緻資料丢失時,資料庫管理者(DBA)可以通過重做備機來恢複備機,可選擇在新的實體節點上添加備機來恢複主從備份關系,保證系統可靠性。

    • 副本切換

        每組主從節點(可以是1主 N 從)的每個節點都包含完整的資料副本,DBA 可根據需求進行切換。

      設定禁止切換:即可設定在某一特殊時期,不處理故障轉移。

    • 設定禁止切換

        即可設定在某一特殊時期,不處理故障轉移。

    • 跨可用區部署:   主節點和從節點分處于不同機房,資料之間通過專線網絡進行實時的資料複制。本地為主節點,遠端為從節點,首先通路本地節點,若本地主節點發生故障或通路不可達,則遠端的從節點升為主節點提供服務。
    • TDSQL PostgreSQL版 支援基于強同步的高可用方案,主節點故障時将自動選出最優從節點立即頂替工作,切換過程對使用者透明,且不改變通路 IP。TDSQL PostgreSQL版 對系統元件支援 7 * 24 小時持續監控,發生故障時,TDSQL PostgreSQL版 将自動重新開機節點或者隔離節點,從從節點選出新主節點提供服務。

      基于時間點的恢複功能

      TDSQL PostgreSQL版 支援基于備份在事務一緻性的時間點恢複資料,防止誤操作帶來的資料丢失。備份分為全量備份(冷備)和增量備份(xlog 備份):
      • 全量備份

          指備份資料庫的全部資料(除了運作日志和 xlog 之外),全量備份通常是周期性,如一天、一周或 N 天。

      • 增量備份

          指增量資料的備份,一般通過 xlog 檔案實作,當資料庫系統産生新的 xlog 檔案後,系統将 xlog 檔案備份到備份伺服器上,增量備份通常是實時的行為。

          當發生事故或災難後,使用者可以利用備份資料來恢複系統。TDSQL PostgreSQL版 是一個全局分布式事務的資料庫系統,各節點之間資料是關聯的,是以恢複系統需要通過一個全局時間點來恢複。

      産品優勢

    • 分布式事務全局一緻性

        TDSQL PostgreSQL版 引入全局事務管理節點(Global Transaction Manager,GTM)來專門處理分布式事務一緻性,通過擁有自主專利的分布式事務一緻性技術,即兩階段送出(Two Phase Commit)和全局時鐘(Global Timestamp)政策來保證在全分布式環境下的事務一緻性。同時 TDSQL PostgreSQL版 提供了分布式事務可靠性保證機制來避免資源阻塞、資料不一緻和協調節點當機等問題。

      SQL 高相容度

        TDSQL PostgreSQL版 在 SQL 相容性上具備很大優勢,相容絕大多數的 PostgreSQL 文法,包括複雜查詢、外鍵、觸發器、視圖、存儲過程等,可滿足大部分企業使用者的需求。同時 TDSQL PostgreSQL版 還相容大部分的 Oracle 資料類型、函數,此特性可友善 Oracle 業務遷移到 TDSQL PostgreSQL版 資料庫。

        TDSQL PostgreSQL版 經過專門設計充分的支援 HTAP,同時具備高效的 OLTP 處理能力和海量的 OLAP 能力,降低業務複雜度和成本。

      多級安全政策

        傳統資料庫系統的超級使用者權限極大,不容易受到制約,也不利于資料庫安全體系的建立,TDSQL PostgreSQL版 的三權分立體系,将傳統 DBA 的角色分解為安全管理者、審計管理者、資料管理者三個互相獨立的角色。安全管理者可以針對業務需求,配置資料加密規則對資料進行加密,保證資料不被洩露。

      高效的資料治理能力

    • 資料治理包括資料傾斜的治理和冷熱資料分級存儲:
      • 資料治理包括資料傾斜的治理和冷熱資料分級存儲
      • 冷熱資料分級存儲用以降低業務的存儲成本、提升熱資料的性能

      應用場景

      HTAP 業務需求系統

        資料庫系統應用中,OLTP 場景涉及資料量小,但要求實時傳回,OLAP 類場景資料量和計算量大,但對實時性要求較低。通用方案是業務将 OLAP 和 OLTP 場景分别用對應的系統來支撐,雖解決了性能問題,但給業務帶來了存儲成本的上升以及業務高昂的改造成本,同時系統間資料同步容易造成資料出錯等問題。

        TDSQL PostgreSQL版 經過專門設計能很好的支援 HTAP,同時具備高效的 OLTP 處理能力和海量的 OLAP 能力,降低業務複雜度和業務成本。

    • 物聯網地理資訊系統

        随着物聯網的到來,很多的傳感器接入資料,如熱點 Wi-Fi 資料、車輛行駛數軌迹資料等,都包含一些經緯度定位資訊,結合這些位置資訊和我們已有的地理資訊進行關聯分析,依托 TDSQL PostgreSQL版 先進的開源地理資訊引擎 PostGIS,可以提供豐富高效的地理資訊處理能力。

      HTAP 實時高并發事務系統

        随着網際網路、移動網際網路、電商等業務的蓬勃發展,使用者不斷增長,給企業的 IT 系統帶來了嚴峻的挑戰,如何利用技術手段使得系統可以并行處理更多的請求,降低延遲和響應時間,提高性能和使用者體驗,成為各大企業必須解決的難題。

        面對流量高峰,TDSQL PostgreSQL版 借助 share nothing 架構,可線上線性平滑地擴充叢集規模,從容應對高并發場景,同時 TDSQL PostgreSQL版 支援全局事務一緻性,保證在高并發場景下的事務一緻性。

      海量存儲計算需求

        網際網路化的使用者激增,伴随着系統的長期運作,資料累積越來越多,給部分行業(如支付業務,因為監管要求,資料必須永久儲存)帶來的存儲成本,以及大資料量場景的性能問題等亟待解決。

        TDSQL PostgreSQL版 的線上線性擴容能力,能夠按需擴充叢集,保證叢集可以支撐到 PB 級别的存儲,同時結合業務曆史資料不常被通路的特點,可将曆史資料自動轉移到廉價儲存設備上,兼顧性能和成本。

      資料高安全依賴型系統

    • 在政務、民生、金融等行業裡,存儲了非常多的個人基本資訊和金融交易資料,保障資料的安全性是首要考慮的問題,一旦發生資料丢失或者洩露,會造成不可估量的損失,是以該類業務對于存儲核心資料的資料庫系統安全非常依賴,包括資料查詢結果加密,資料存儲加密,以及事後審計需求。

        TDSQL PostgreSQL版 能夠提供多級安全政策來保障該類高安全依賴型系統的資料安全。

      多點彙聚業務系統

        政務、銀行、大型國企的組織架構通常采用總部-分部-分支的架構,其某些核心 IT 系統建設也采用總部-分部-分支模式,且各個分支采用的資料庫不同,随着業務互通、人員互通、資訊互通等需求越來越強烈,業務逐漸向總部聚合,是以能否高效的進行資料彙聚,是系統一個很重要的考量名額。

        TDSQL PostgreSQL版 具備高效的異構資料庫複制能力,讓資料能夠很好的在多個資料庫中實作共享。

      資料庫架構

        TDSQL PostgreSQL版 采用無共享 share nothing 架構。資料庫執行個體分為三種節點:
      • 協調節點( Coordinator,CN)

          資料庫服務的對外入口,負責資料的分發和查詢規劃,多個節點位置對等

      • 資料節點(Datanode,DN)

           負責執行協調節點分發的執行請求,實際存儲業務資料

      • 全局事務管理器(GlobalTransactionManager,GTM)

          負責全局事務管理

        TDSQL PostgreSQL版 資料節點部署在強大硬體之上,底層存儲使用本地 NVMe SSD 硬碟,提供強大的 IO 性能,架構如下:
    • 初識 TDSQL PostgreSQL 及部署指南

      部署指南

      • 架構規劃

          以下規劃清單僅作為示範環境配置 web 管理界面的最低要求

      最小硬體安裝要求
      伺服器描述 伺服器配置 伺服器數量 伺服器元件
      管理節點、協調節點、資料節點 8核心2G 200GB 1 CenterMaster|ConfdbMaster|Agent|TStudio
      管理高可用節點、協調節點、資料節點、資料高可用節點 8核心2G 300GB CenterSlave|ConfdbSlave|Agent|Alarm|CGI

        web 管理界面作業系統和網絡及硬碟隻要求

        支援的作業系統版本可以為 Redhat 家族版本,目前明确的版本是 CentOS6.7 和 CentOS7.3

    • 節點主機名稱 用途 作業系統版本 資料盤大小 部署目錄 web 界面/資料節點ip位址
      node01 安裝OssCenterMaster|Confdb|TStudio|Etcd元件 CentOS7.9 300GB /data 10.10.20.70
      node02 安裝OssCenterSlave|Confdb|Alarm|Agent|TStudio|Etcd元件 10.10.20.71
      node03 DN主節點 200GB /data1 10.10.20.72
      node04 DN從節點 10.10.20.73
      node05 CN節點 10.10.20.74
      node06 10.10.20.75
      node07 GTM主節點 10.10.20.76
      node08 GTM從節點 10.10.20.77

      所有節點配置時鐘同步

        這裡采用網際網路時鐘同步伺服器進行始終同步,如果是企業,務必采用自建時鐘同步伺服器進行同步時間,時鐘同步對于 GTM 來說非常重要,如之前我們提到過大使用者資料分布會用到資料建立的時間,是以務必保證所有節點一樣。
    • [root@node01 ~]# for ip in node0{1,2,3,4,5,6,7,8};do ssh $ip "yum install -y ntpdate"; done
      [root@node01 ~]# for ip in node0{1,2,3,4,5,6,7,8};do ssh $ip "ntpdate ntp1.aliyun.com"; done
      19 Aug 17:35:26 ntpdate[1789]: step time server 120.25.115.20 offset -1.970380 sec
      19 Aug 17:35:34 ntpdate[2624]: step time server 120.25.115.20 offset -1.893096 sec
      19 Aug 17:35:41 ntpdate[1682]: step time server 120.25.115.20 offset -1.971179 sec
      19 Aug 17:35:47 ntpdate[1930]: step time server 120.25.115.20 offset -1.539050 sec
      19 Aug 17:35:53 ntpdate[1656]: step time server 120.25.115.20 offset -1.169085 sec
      19 Aug 17:36:00 ntpdate[1650]: step time server 120.25.115.20 offset -1.900679 sec
      19 Aug 17:36:06 ntpdate[1651]: step time server 120.25.115.20 offset -1.684878 sec
      19 Aug 17:36:14 ntpdate[1653]: step time server 120.25.115.20 offset -1.541129 sec
      [root@node01 ~]# for ip in node0{1,2,3,4,5,6,7,8};do ssh $ip "date"; done
      Thu Aug 19 17:36:19 CST 2021
      Thu Aug 19 17:36:19 CST 2021
      Thu Aug 19 17:36:20 CST 2021
      Thu Aug 19 17:36:20 CST 2021
      Thu Aug 19 17:36:20 CST 2021
      Thu Aug 19 17:36:20 CST 2021
      Thu Aug 19 17:36:20 CST 2021
      Thu Aug 19 17:36:20 CST 2021      

      關閉所有節點 SELinux 和 firewalld

    • [root@node01 ~]# for ip in node0{1,2,3,4,5,6};do
      ssh $ip "systemctl stop firewalld;systemctl disable firewalld"
      ssh $ip "sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config"
      done      

      上傳 TBase 軟體包至 /opt/software 目錄

    • [root@node01 software]# ls
      switch_region  tbase_make_rpm  tbase_mgr  tbase_mgr_util  tbase_mirror  upgrade_cos
      [root@node01 software]#       
       這裡有幾個檔案夾,需要說明一下:
      目錄結構 作用描述
      switch_region 區域切換
      tbase_make_rpm tbase rpm包制作
      tbase_mgr 安裝腳本及配置檔案
      tbase_mgr_util tbase擴容工具
      tbase_mirror 安裝tbase的一些依賴和tbase安裝rpm包
      upgrade_cos 更新腳本
        需要說明的是,安裝 web 界面主要使用到 tbase_mgr 和 tbase_mirror 目錄。

      編輯 Tbase 配置檔案

        Tbase 配置檔案位于 tbase_mgr/conf/ 目錄下,檔案名稱為 role.info
    • [root@node01 tbase_mgr]# cat conf/role.info 
      #eth ip idc_name root password role( OssCenterMaster OssCenterSlave OssAgent Confdb Alarm TStudio Etcd)
      #Notice: The machine that will be installed OssCenterMaster or OssCenterSlave can't be installed OssAgent
      
      ens33 10.10.20.70 idc_1 root redhat OssCenterMaster|Confdb|TStudio|Etcd
      ens33 10.10.20.71 idc_1 root redhat OssCenterSlave|Confdb|Alarm|Agent|TStudio|Etcd      
       參數配置格式說明:
      參數 描述
      ens33 伺服器網卡名稱(不同作業系統網卡名稱不同)
      ip 伺服器網卡綁定的 ip 位址
      idc_name 網際網路資料中心所在名稱
      root 作業系統超級使用者名稱
      password 超級使用者密碼
      role 指定節點需要安裝的元件
        元件說明
      元件名稱
      CenterMaster 監控系統主節點
      CenterSlave 監控系統從節點
      ConfdbMaster 監控中繼資料庫主節點
      ConfdbSlave 監控中繼資料庫從節點
      CGI TBase OSS web 元件
      Alarm 告警平台元件
      TStudio Tbase IDE環境
      Agent 監控TBase叢集。安裝Dn或者Cn的節點必須安裝Agent

      Note:

        Tbase 安裝至少需要兩台主機,同時CenterMaster、CenterSlave、ConfdbMaster、ConfdbSlave、Agent、Alarm、CGI 、TStudio為必選角色。

      執行自動化部署腳本

        Tbase 提供了一鍵化安裝腳本,隻要配置好上面的 role.conf 檔案,接下來即可執行位于 tbase_mgr/tbase_mgr.sh 腳本。
    • Note:

        該腳本中 第116行 中,%shellLocaiton 需修改為 $shellLocation。

        執行該腳本前,請手動安裝 dos2unix 包

    • [root@node01 tbase_mgr]# for ip in node0{1,2,3,4,5,6};do
      ssh $ip "yum install -y dos2unix"
      done      
      執行安裝腳本
    • [root@node01 tbase_mgr]# sh tbase_mgr.sh install
      
      Hey, Welcome and now we will install TBase OSS by the flowing steps: 
      
          0.  Check role configuration read from conf/role.info ... 
      
          1.  Install some base rpm packages such as dos2unix/createrepo/expect and so on ... 
      
          2.  Check root password and do some initalization on all machines read from conf/role.info ... 
      
          3.  Check package requires ... 
      
          4.  Create OS user tbase specifided in conf/oss/oss_init.conf  ... 
      
          5.  Create yum repository which store all the rpm packages needed by TBase OSS ... 
      
          6.  Install and Start Etcds ... 
      
          7.  Install and Start all Confdb ... 
      
          8.  Install and Start Alarm Server ... 
      
          9.  Install and Start OssCenterMaster and all OssCenterSlaves ... 
      
          10. Install and Start all Agents ... 
      
          11. Install default tbase_pgxz package... 
      
          12. Install and Start Tstudio ... 
      
      Ready to continue (Yy|Nn) ?
      ##################################################
      #                                                #
      #            ^_^ Congratulations ^_^             #
      #                                                #
      ##################################################
      
      
      Successed to install TBase OSS, visit http://10.10.20.70:8080 to continue ...
      
      
      Successed to install TStudio, visit http://10.10.20.70:5050 
      
      default account: [email protected] password: postgres      
        安裝過程中會出現一些關于 rpm 包依賴的問題,是以在安裝前,對安裝腳本中的代碼會做一些調整,以保證原有的 yum 源倉庫不會因為備份導緻依賴無法解決而導緻的安裝失敗。安裝成功後,會給出相關的 web 界面通路 url,可以根據該 url 登入到管理平台界面。

      登入 web 管理界面

         通過上面安裝完成提示的 web 界面登入入口 ,将該 url 複制到浏覽器位址欄進行CN 協調節點、DN 資料節點和 GTM 節點的配置,其中 web 登入使用者名稱為:

      admin,使用者登入密碼預設為 Admin@TbaseV2,在 Tbase 中,所有的新建立使用者都需要在首次登入時修改密碼。具體如下:

      登入 web 界面

    • 初識 TDSQL PostgreSQL 及部署指南
       登入成功後跳轉到修改密碼
      初識 TDSQL PostgreSQL 及部署指南
      登入成功後需要上傳許可證書才能使用該管理平台
    • 初識 TDSQL PostgreSQL 及部署指南
       上傳證書
      初識 TDSQL PostgreSQL 及部署指南

        證書上傳完成,點選右上角關閉,将會出現管理界面

      管理界面概覽

    • 初識 TDSQL PostgreSQL 及部署指南

       資源模闆

        資源模闆界面,可以選擇建立一個供後面在建立伺服器時直接可用的模闆,以節省建立相同伺服器時手動填寫資訊的步驟,如下,建立一個 8 核心 2G 的模闆

      初識 TDSQL PostgreSQL 及部署指南
        建立完成後,在模闆清單中将會出現如上模闆
    • 初識 TDSQL PostgreSQL 及部署指南
       軟體包管理界面及軟體資訊
      初識 TDSQL PostgreSQL 及部署指南
        點選上圖中右側的詳情可以檢視分布式資料庫包 tbase-pgxz 軟體的詳細資訊,如下:
      初識 TDSQL PostgreSQL 及部署指南
    • 機型管理

        機型管理是在後面添加伺服器時可選的機型,那麼要注意,如果添加了機型,再選擇模闆時,将會驗證模闆和機型中相應的 CPU 核心數和 記憶體 驗證,建議建立的模闆和添加的機型相應的配置一緻,否則将會抛錯,這裡采用的是虛拟機,故不建立機型。

      伺服器管理

        建立需要被管理的伺服器,建立的伺服器數量要多于在部署 Tbase 包時選擇的可用伺服器數量。如配置 2 個 CN 節點,2 個 GTM 節點,一主一從資料 DN 節點,那麼,如果是非共享伺服器,這裡至少需要 6 台伺服器。如下,建立一台伺服器:

    • 初識 TDSQL PostgreSQL 及部署指南

       剩餘的伺服器可以點選上圖左下角的添加一個伺服器來建立,這裡繼續添5台,過程在這裡不寫出。但是添加時,注意對伺服器 IP位址,資源模闆選擇和磁盤資料目錄做修改。這裡的磁盤資料目錄都是 /data1。

        建立完成顯示如下:

      初識 TDSQL PostgreSQL 及部署指南
      伺服器名額、資源池管理和 VIP 管理暫時不做

      租戶管理

        TDSQL for PostgreSQL 采用多資料庫和多租戶來使用資料庫執行個體,每個租戶都可以建立自己的執行個體。這裡建立一個名為 *test* 的租戶,同樣建立後會有一個預設的密碼,密碼為:[email protected],如下:
    • 初識 TDSQL PostgreSQL 及部署指南
      初識 TDSQL PostgreSQL 及部署指南
      初識 TDSQL PostgreSQL 及部署指南
       建立了租戶後就可以添加執行個體了。

      添加執行個體

        執行個體是 TDSQL 中,租戶自己使用的資料庫,是以建立執行個體的動作也應該由租戶完成。切換登入到上面建立的租戶 test 中,如下:

      建立執行個體資料庫

      初識 TDSQL PostgreSQL 及部署指南
      配置執行個體資訊
    • 初識 TDSQL PostgreSQL 及部署指南

       添加使用者和選擇使用者

        在執行個體中,管理使用者隻能建立 3 個,審計和安全使用者隻能建立 1 個。管理使用者可以使用多個執行個體,而審計使用者和安全使用者隻能管理該執行個體。

      初識 TDSQL PostgreSQL 及部署指南
      初識 TDSQL PostgreSQL 及部署指南

      相關資訊确認

        資訊确認後需要審批,審批動作隻能由管理者才能審批。

    • 初識 TDSQL PostgreSQL 及部署指南
       送出審批後在界面将會看到如下資訊:
      初識 TDSQL PostgreSQL 及部署指南

      稽核執行個體

        對于租戶建立的執行個體需要由 admin 管理者賬戶進行審批才能使用,如下,需要登入到 admin 使用者對 test 租戶建立的執行個體 testdb 進行稽核。
    • 初識 TDSQL PostgreSQL 及部署指南
       稽核通過後需要确認,如下:
      初識 TDSQL PostgreSQL 及部署指南
        确認 GTM CN DN 節點配置設定情況:
    • 初識 TDSQL PostgreSQL 及部署指南
      初識 TDSQL PostgreSQL 及部署指南
      初識 TDSQL PostgreSQL 及部署指南
    • 等待一會将會出現如下配置設定成功的界面:
      初識 TDSQL PostgreSQL 及部署指南
        點選詳情,可以檢視節點資訊,如下:
    • 初識 TDSQL PostgreSQL 及部署指南

      叢集管理

        TDSQL for PostgreSQL 對叢集的管理通過在建立執行個體時配置設定的管理使用者來管理,在上面執行個體中,testdb 執行個體配置設定的管理使用者為 adminuser,是以這裡使用 adminuser 登入到叢集管理界面。

      執行個體監控

      叢集監控概覽
    • 初識 TDSQL PostgreSQL 及部署指南
       節點監控概覽
      初識 TDSQL PostgreSQL 及部署指南
      容量監控概覽
    • 初識 TDSQL PostgreSQL 及部署指南

      運維管理

        叢集管理界面,可以對叢集進行啟動和停止管理
      初識 TDSQL PostgreSQL 及部署指南

      節點管理

        節點管理界面,可以對叢集中每個節點(CN DN 和 GTM)節點進行管理和切換,如下:

    • 初識 TDSQL PostgreSQL 及部署指南

       結語

        TDSQL for PostgreSQL 版本(原 TBase)是騰訊自主研發的分布式資料庫系統,集高擴充性、高SQL相容度、完整的分布式事務支援、多級容災能力以及多元度資源隔離等能力于一身。TDSQL PostgreSQL 版強大的安全和容災能力,已經成功應用在金融、政府、電信、醫療等行業的核心業務系統。同時,TDSQL PostgreSQL 版采用無共享的叢集架構,為使用者提供容災、備份、恢複、監控、安全、審計等全套解決方案,适用于GB~PB級的海量 HTAP 場景。