最近想設置一下gitlab的高可用性,最基礎的莫過於數據庫的主備模式。另外也可以研究數據庫結構,理解gitlab的設計,方便運維。
之前寫過gitlab的搭建和升級,都是通過一鍵安裝的,沒太大難度,但是唯一一個就是其服務都是通過gitlab-ctl命令配置,雖然集中管理比較好,但是當涉及到運維、架構改造方面就不太方便。
系統:Centos7
gitlab版本:14.2.3
gitlab的配置文件:/var/opt/gitlab/gitlab-rails/etc/database.yml
production:
main:
adapter: postgresql
encoding: unicode
collation:
database: gitlabhq_production # 數據庫名
username: "gitlab" # 數據用戶
password:
host: "/var/opt/gitlab/postgresql" # 主機
port: 5432
socket:
sslmode:
sslcompression: 0
sslrootcert:
sslca:
load_balancing: {"hosts":[]}
prepared_statements: false
statement_limit: 1000
connect_timeout:
keepalives:
keepalives_idle:
keepalives_interval:
keepalives_count:
tcp_user_timeout:
application_name:
variables:
statement_timeout:
配置數據庫
1.配置數據庫允許外部訪問權限
vim /var/opt/gitlab/postgresql/data/pg_hba.conf
添加以下行
host all all 0.0.0.0/32 md5
2.配置監聽端口
vim /var/opt/gitlab/postgresql/data/postgresql.conf
修改監聽配置,注悉掉以下行
# listen_addresses = ''
修改爲
listen_addresses = '*'
3.修改密碼
3.1登錄密碼修改
#
su - gitlab-psql
-sh-4.2$ psql -h /var/opt/gitlab/postgresql -d gitlabhq_production 連接到gitlabhq_production庫
$ \password gitlab 修改密碼
3.2配置Gitlab使其使用新設置的密碼
vim /etc/gitlab/gitlab.rb
注悉掉 gitlab_rails['db_password'] 這行,並修改之前改的密碼
gitlab_rails['db_password'] = 'xxxx' # gitlab密碼
讓代碼生效
gitlab-ctl reconfigure
總結:
gitlab配置未必生效,特別涉及到其他系統的配置,根據網上經驗有可能需要其他操作,詳情請移步以下參考網址
(待續完善)
Reference:
https://www.cnblogs.com/UniqueColor/p/7767012.html
https://blog.csdn.net/xyzchenxiaolin/article/details/51851469