Bagaimana untuk mengkonfigurasi repositori kod tempatan yang sangat tersedia (seperti GitLab) di Linux

WBOY
Lepaskan: 2023-07-05 18:27:10
asal
2300 orang telah melayarinya

Cara mengkonfigurasi repositori kod tempatan yang sangat tersedia (seperti GitLab) pada Linux

Apabila pembangunan perisian dan kerja berpasukan menjadi semakin kompleks, permintaan untuk pengurusan kod dan kawalan versi juga semakin meningkat. Sebagai platform pengehosan kod sumber terbuka, GitLab digunakan secara meluas dalam pembangunan kerjasama pasukan. Untuk meningkatkan kebolehpercayaan dan kestabilan gudang kod, kami boleh mengkonfigurasi gudang kod tempatan yang sangat tersedia supaya ia boleh bertukar secara automatik kepada pelayan sandaran apabila pelayan tunggal gagal, memastikan kerja pasukan tidak terjejas.

Artikel ini akan mengambil mengkonfigurasi GitLab pada sistem Linux sebagai contoh untuk memperkenalkan cara melaksanakan repositori kod tempatan yang sangat tersedia.

1. Pasang dan konfigurasikan GitLab

  1. Pasang GitLab

Terdapat banyak cara untuk memasang GitLab pada sistem Linux Di sini kami mengambil CentOS sebagai contoh dan menggunakan yum untuk memasangnya.

Mula-mula, tambah sumber perisian GitLab:

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

Kemudian, pasang GitLab:

sudo yum install -y gitlab-ee
Salin selepas log masuk
  1. Konfigurasikan GitLab

Selepas pemasangan selesai, kami perlu melakukan beberapa konfigurasi asas dan kata laluan pada GitLab , dan Ikat nama domain, dsb.

Konfigurasikan dengan mengedit fail konfigurasi /etc/gitlab/gitlab.rb: /etc/gitlab/gitlab.rb进行配置:

sudo vi /etc/gitlab/gitlab.rb
Salin selepas log masuk
Salin selepas log masuk

找到以下行,将其取消注释并修改为对应的值:

external_url 'http://yourdomain.com'
Salin selepas log masuk

保存并退出配置文件后,重新配置GitLab:

sudo gitlab-ctl reconfigure
Salin selepas log masuk
Salin selepas log masuk

二、配置高可用的本地代码仓库

为了实现高可用的本地代码仓库,我们需要设置一个主服务器和一个备用服务器,并通过负载均衡将流量分发到这两台服务器上。

下面是一个示例的配置,主服务器地址为192.168.0.1,备用服务器地址为192.168.0.2。

  1. 安装和配置负载均衡

在主服务器和备用服务器上都安装和配置一个负载均衡器。这里我们使用Nginx作为负载均衡器。

首先,安装Nginx:

sudo yum install -y nginx
Salin selepas log masuk

然后,编辑Nginx的配置文件/etc/nginx/nginx.conf

sudo vi /etc/nginx/nginx.conf
Salin selepas log masuk

在http模块中添加以下配置:

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;
        }
    }
}
Salin selepas log masuk

保存并退出配置文件后,重新启动Nginx服务:

sudo systemctl restart nginx
Salin selepas log masuk
  1. 配置主服务器和备用服务器

在主服务器和备用服务器上都进行如下配置。

首先,编辑GitLab的配置文件/etc/gitlab/gitlab.rb

sudo vi /etc/gitlab/gitlab.rb
Salin selepas log masuk
Salin selepas log masuk

找到以下行,将其修改为对应的值:

external_url 'http://yourdomain.com'
gitlab_rails['gitlab_shell_ssh_port'] = 10022
Salin selepas log masuk

然后,关闭GitLab自带的Nginx服务,在/etc/gitlab/gitlab.rb添加以下行:

nginx['enable'] = false
Salin selepas log masuk

保存并退出配置文件后,重新配置GitLab:

sudo gitlab-ctl reconfigure
Salin selepas log masuk
Salin selepas log masuk

最后,修改SSH配置文件/etc/ssh/sshd_config,将SSH的监听端口改为10022:

sudo vi /etc/ssh/sshd_config
Salin selepas log masuk

找到以下行,将其修改为对应的值:

Port 10022
Salin selepas log masuk

保存并退出配置文件后,重新启动SSH服务:

sudo systemctl restart sshd
Salin selepas log masuk

三、测试高可用配置

完成以上配置后,我们可以进行一些测试来验证高可用的配置是否生效。

  1. 测试负载均衡

在浏览器中输入http://yourdomain.com,查看是否能够正常访问GitLab页面。刷新页面多次,确认每次访问到的是不同的服务器。

  1. 测试主备切换

在主服务器上停止GitLab服务:

sudo gitlab-ctl stop
Salin selepas log masuk

然后,再次在浏览器中输入http://yourdomain.comrrreee

Cari baris berikut, nyahkomennya dan ubah suainya kepada nilai yang sepadan:

rrreee

Simpan dan keluar dari konfigurasi fail Akhir sekali, konfigurasi semula GitLab:

rrreee

2. Konfigurasikan repositori kod tempatan yang sangat tersedia 🎜🎜 Untuk mencapai repositori kod tempatan yang sangat tersedia, kita perlu menyediakan pelayan utama dan pelayan sandaran, dan mengedarkan trafik kepada kedua-dua ini melalui pengimbangan beban pada pelayan. 🎜🎜Berikut ialah contoh konfigurasi, alamat pelayan utama ialah 192.168.0.1 dan alamat pelayan sandaran ialah 192.168.0.2. 🎜🎜🎜Pasang dan konfigurasikan pengimbangan beban 🎜🎜🎜Pasang dan konfigurasikan pengimbang beban pada kedua-dua pelayan utama dan sandaran. Di sini kami menggunakan Nginx sebagai pengimbang beban. 🎜🎜Mula-mula, pasang Nginx: 🎜rrreee🎜Kemudian, edit fail konfigurasi Nginx /etc/nginx/nginx.conf: 🎜rrreee🎜Tambah konfigurasi berikut dalam modul http: 🎜rreee🎜Save and exit Selepas mengkonfigurasi fail, mulakan semula perkhidmatan Nginx: 🎜rrreee🎜🎜Konfigurasikan pelayan utama dan pelayan sandaran🎜🎜🎜Konfigurasikan yang berikut pada kedua-dua pelayan utama dan pelayan sandaran. 🎜🎜Mula-mula, edit fail konfigurasi GitLab /etc/gitlab/gitlab.rb: 🎜rrreee🎜Cari baris berikut dan ubah suainya kepada nilai yang sepadan: 🎜rrreee🎜Kemudian, tutup perkhidmatan Nginx GitLab sendiri, tambah baris berikut dalam /etc/gitlab/gitlab.rb: 🎜rrreee🎜Selepas menyimpan dan keluar dari fail konfigurasi, konfigurasi semula GitLab: 🎜rrreee🎜Akhir sekali, ubah suai fail konfigurasi SSH / etc /ssh/sshd_config, tukar port mendengar SSH kepada 10022: 🎜rrreee🎜Cari baris berikut dan ubah suainya kepada nilai yang sepadan: 🎜rrreee🎜Selepas menyimpan dan keluar dari fail konfigurasi, mulakan semula perkhidmatan SSH: 🎜 rrreee 🎜3. Uji konfigurasi ketersediaan tinggi🎜🎜Selepas melengkapkan konfigurasi di atas, kami boleh menjalankan beberapa ujian untuk mengesahkan sama ada konfigurasi ketersediaan tinggi berkuat kuasa. 🎜🎜🎜Uji pengimbangan beban🎜🎜🎜Masukkan http://yourdomain.com dalam penyemak imbas untuk melihat sama ada anda boleh mengakses halaman GitLab seperti biasa. Muat semula halaman beberapa kali untuk mengesahkan bahawa anda mengakses pelayan yang berbeza setiap kali. 🎜🎜🎜Uji penukaran aktif/siap sedia🎜🎜🎜Hentikan perkhidmatan GitLab pada pelayan utama: 🎜rrreee🎜Kemudian masukkan http://yourdomain.com dalam penyemak imbas sekali lagi untuk mengesahkan sama ada ia bertukar secara automatik kepada pelayan siap sedia. 🎜🎜Melalui ujian di atas, kami boleh mengesahkan bahawa repositori kod tempatan yang sangat tersedia telah berjaya dikonfigurasikan dan berkesan. 🎜🎜Apabila mengkonfigurasi repositori kod tempatan yang sangat tersedia, kami menggunakan alatan seperti GitLab dan Nginx dan membuat konfigurasi yang berkaitan. Melalui konfigurasi ini, kami berjaya mengkonfigurasi repositori kod tempatan yang sangat tersedia pada sistem Linux. Dengan cara ini, walaupun pelayan utama gagal, pelayan sandaran boleh mengambil alih, memastikan kerja pasukan tidak terjejas dan meningkatkan kebolehpercayaan dan kestabilan gudang kod. 🎜

Atas ialah kandungan terperinci Bagaimana untuk mengkonfigurasi repositori kod tempatan yang sangat tersedia (seperti GitLab) di Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan