ホームページ >運用・保守 >Linuxの運用と保守 >Linux 上で高可用性ローカル コード リポジトリ (GitLab など) を構成する方法

Linux 上で高可用性ローカル コード リポジトリ (GitLab など) を構成する方法

WBOY
WBOYオリジナル
2023-07-05 18:27:102330ブラウズ

Linux 上で可用性の高いローカル コード リポジトリ (GitLab など) を構成する方法

ソフトウェア開発とチームワークがますます複雑になるにつれて、コード管理とバージョン管理の需要も高まっています。 GitLab は、オープン ソース コード ホスティング プラットフォームとして、チームの共同開発で広く使用されています。コード ウェアハウスの信頼性と安定性を向上させるために、可用性の高いローカル コード ウェアハウスを構成して、単一サーバーに障害が発生した場合に自動的にバックアップ サーバーに切り替えて、チームの作業に影響を与えないようにすることができます。

この記事では、Linux システムでの GitLab の構成を例にして、可用性の高いローカル コード リポジトリを実装する方法を紹介します。

1. GitLab のインストールと構成

  1. GitLab のインストール

GitLab を Linux システムにインストールするにはさまざまな方法があります。ここでは CentOS を例に挙げます。たとえば、yum を使用してインストールします。

まず、GitLab のソフトウェア ソースを追加します:

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash

次に、GitLab をインストールします:

sudo yum install -y gitlab-ee
  1. GitLab を構成します

インストールが完了したら、管理者アカウントとパスワードの設定、ドメイン名のバインドなど、GitLab でいくつかの基本的な構成を実行する必要があります。

設定ファイルを編集して設定します /etc/gitlab/gitlab.rbConfigure:

sudo vi /etc/gitlab/gitlab.rb

次の行を見つけてコメントを解除し、対応する値に変更します。

external_url 'http://yourdomain.com'

構成ファイルを保存して終了した後、GitLab を再構成します:

sudo gitlab-ctl reconfigure

2.高可用性のローカル コード リポジトリを構成する

高可用性のローカル コード リポジトリを実現するには、プライマリ サーバーとバックアップ サーバーをセットアップし、負荷分散を通じて 2 つのサーバーにトラフィックを分散する必要があります。

次の構成例は、プライマリ サーバーのアドレスが 192.168.0.1、バックアップ サーバーのアドレスが 192.168.0.2 です。

  1. ロード バランシングのインストールと構成

プライマリ サーバーとバックアップ サーバーの両方にロード バランサーをインストールして構成します。ここではロードバランサーとしてNginxを使用します。

まず、Nginx をインストールします:

sudo yum install -y nginx

次に、Nginx 構成ファイル /etc/nginx/nginx.conf:

sudo vi /etc/nginx/nginx.conf

を編集します。 module 次の構成を追加します:

http {
    upstream gitlab {
        server 192.168.0.1:80 weight=5;
        server 192.168.0.2:80 weight=1 backup;
    }

    server {
        listen       80;
        server_name  yourdomain.com;

        location / {
            proxy_pass         http://gitlab;
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header   Host $http_host;
        }
    }
}

構成ファイルを保存して終了した後、Nginx サービスを再起動します:

sudo systemctl restart nginx
  1. メイン サーバーとバックアップ サーバーを構成します
#In プライマリ サーバーとバックアップ サーバーの両方で次の設定を実行します。

まず、GitLab 構成ファイル

/etc/gitlab/gitlab.rb:

sudo vi /etc/gitlab/gitlab.rb

次の行を見つけて、対応する値に変更します。
external_url 'http://yourdomain.com'
gitlab_rails['gitlab_shell_ssh_port'] = 10022

次に、GitLab に付属の Nginx サービスを閉じ、

/etc/gitlab/gitlab.rb

に次の行を追加します。 <pre class='brush:php;toolbar:false;'>nginx['enable'] = false</pre>構成ファイルを保存して終了した後、 、GitLab を再構成します:

sudo gitlab-ctl reconfigure

最後に、SSH 構成ファイル

/etc/ssh/sshd_config

を変更し、SSH リスニング ポートを 10022 に変更します: <pre class='brush:php;toolbar:false;'>sudo vi /etc/ssh/sshd_config</pre>次の行を見つけます。対応する値:

Port 10022

構成ファイルを保存して終了した後、SSH サービスを再起動します:

sudo systemctl restart sshd

3. 高可用性構成をテストします

完了後上記の構成では、いくつかのテストを実施して、高可用性構成が機能していることを確認できます。

テスト負荷分散
  1. ブラウザに
http://yourdomain.com

と入力して、GitLab ページに正常にアクセスできるかどうかを確認します。ページを数回更新して、毎回異なるサーバーにアクセスしていることを確認します。

アクティブ/スタンバイ切り替えのテスト
  1. メイン サーバーで GitLab サービスを停止します:
sudo gitlab-ctl stop

次に、ブラウザにもう一度

http: と入力します。 : //yourdomain.com

、バックアップ サーバーに自動的に切り替えるかどうかを確認します。 上記のテストを通じて、高可用性ローカル コード リポジトリが正常に構成され、有効であることを確認できます。

高可用性のローカル コード リポジトリを構成する場合、GitLab や Nginx などのツールを使用して、関連する構成を作成しました。これらの構成により、Linux システム上に可用性の高いローカル コード ウェアハウスを構成することに成功しました。このようにして、メイン サーバーに障害が発生した場合でも、バックアップ サーバーが引き継ぐことができるため、チームの作業が影響を受けず、コード ウェアハウスの信頼性と安定性が向上します。

以上がLinux 上で高可用性ローカル コード リポジトリ (GitLab など) を構成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。