天天看點

db postgres citus 10

Citus transforms Postgres into a distributed database, to give your application high performance—at any scale.

分布式PostgreSQL資料庫CitusDB CitusDB采用PostgreSQL的插件形式(not a fork),即享受PostgreSQL的強大支援,又同時擁有分布式資料庫能力。

​​citus real-time 分析demo( 來自官方文檔)​​

citus 對于多租戶以及實時應用的開發都是比較好的,官方也提供了demo

參考項目 ​​https://github.com/rongfengliang/citus-hasuar-graphql​​

在CentOS中部署多節點Citus叢集的詳細步驟

https://www.jb51.net/article/135450.htm

1 在所有節點執行以下步驟

Step 01 添加Citus Repostory

# Add Citus repository for package manager
curl https://install.citusdata.com/community/rpm.sh | sudo bash      

Step 02 安裝Citus并且初始化DB

# install PostgreSQL with Citus extension
sudo yum install -y citus72_10
# initialize system database (using RHEL 6 vs 7 method as necessary)
sudo service postgresql-10 initdb || sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
# preload citus extension
echo "shared_preload_libraries = 'citus'" | sudo tee -a /var/lib/pgsql/10/data/postgresql.conf      

Step 03 配置postgresql.conf

sudo vi /var/lib/pgsql/10/data/postgresql.conf      
# Uncomment listen_addresses for the changes to take effect
listen_addresses = '*'      

Step 04 配置pg_hba.conf

sudo vi /var/lib/pgsql/10/data/pg_hba.conf      
local   all             all                                          peer      
local   replication     all                                          peer      
host    all             all             192.168.99.1/24              trust      
host    all             all             0.0.0.0/0                    md5      

Step 05 配置防火牆

  檢視

firewall-cmd --zone=public --query-port=5432/tcp      

  添加5432端口(--permanent永久生效,沒有此參數重新開機後失效)

firewall-cmd --zone=public --add-port=5432/tcp --permanent      

  重新載入

firewall-cmd --reload      

Step 06 啟動服務

# start the db server
sudo service postgresql-10 restart
# and make it start automatically when computer does
sudo chkconfig postgresql-10 on      

Step 07 給需要的資料庫安裝Citus擴充

sudo -i -u postgres psql -c "CREATE EXTENSION citus;"      

Step 08 設定密碼

postgres=# \password postgres          #給postgres使用者設定密碼
Enter new password: 
Enter it again:      

2 在coordinator節點額外執行以下步驟

Step 01 添加worker節點資訊

  添加worker節點的IP位址(或者DNS名稱)和端口号到pg_dist_node表。

sudo -i -u postgres psql -c "SELECT * from master_add_node('192.168.99.101', 5432);"
sudo -i -u postgres psql -c "SELECT * from master_add_node('192.168.99.102', 5432);"      

Step 02 驗證安裝是否成功

sudo -i -u postgres psql -c "SELECT * FROM master_get_active_worker_nodes();"      

Step 03 開始使用

sudo -i -u postgres psql      

end