Rumah  >  Artikel  >  alat pembangunan  >  Penjelasan terperinci tentang penyelesaian penggunaan teragih gitlab

Penjelasan terperinci tentang penyelesaian penggunaan teragih gitlab

PHPz
PHPzasal
2023-03-31 10:40:261431semak imbas

Dalam proses pembangunan perisian moden, kawalan versi ialah teknologi penting. Git ialah salah satu sistem kawalan versi paling popular pada masa ini, dan Gitlab ialah aplikasi web berasaskan Git. Berbanding dengan platform kawalan versi lain, Gitlab menyediakan fungsi yang lebih lengkap, termasuk pengurusan kod, CI/CD, pengurusan proses, dsb., dan digunakan secara meluas dalam perusahaan.

Walau bagaimanapun, terdapat beberapa kesukaran dalam menggunakan Gitlab dalam organisasi berskala besar. Sebagai contoh, semasa masa beban tinggi, prestasi pelayan GitLab mungkin menjadi tidak mencukupi untuk menyokong keseluruhan pasukan, mengakibatkan pengalaman pengguna yang tidak bertindak balas. Salah satu cara untuk menyelesaikan masalah ini ialah dengan menggunakan penempatan teragih Gitlab.

Penyerahan edaran Gitlab menyediakan penyelesaian berskala untuk memperhalusi sumber merentas berbilang nod untuk meningkatkan prestasi. Arahan GitLab yang diedarkan boleh digunakan merentas berbilang pelayan atau bekas, yang terdiri daripada berbilang tika GitLab dengan sumber dan beban yang dikongsi antara mereka.

Seterusnya, saya akan memperkenalkan penyelesaian penggunaan teragih Gitlab berdasarkan Docker Swarm.

Persediaan

Sebelum memulakan penggunaan, anda perlu menyediakan sumber perkakasan dan perisian berikut:

  • Pelayan Gitlab semasa
  • untuk digunakan pelayan kontena Gitlab baharu (nod)
  • Nod dengan Docker dan Docker Swarm dipasang

Langkah 1: Initialize Swarm

Untuk menggunakan Docker Swarm untuk mengurus bekas Gitlab, Swarm mesti dimulakan terlebih dahulu. Permulaan boleh diselesaikan menggunakan arahan berikut:

$ docker swarm init

Arahan ini akan menjana Token Pengurus Swarm, yang akan digunakan kemudian untuk menyertai Swarm pada nod lain.

Langkah 2: Sediakan storan berterusan

Untuk memastikan keselamatan data, data Gitlab perlu disimpan secara berterusan pada cakera. Ini boleh dicapai menggunakan arahan "volume" Docker. Berikut ialah contoh arahan untuk mencipta volum Docker bernama "gitlab_config" pada cakera setempat:

$ docker volume create --name gitlab_config

Begitu juga, volum Docker baharu boleh dibuat untuk direktori log dan data Gitlab. Cipta dua jilid ini secara berasingan menggunakan arahan berikut:

$ docker volume create --name gitlab_logs
$ docker volume create --name gitlab_data

Langkah 3: Gunakan bekas Gitlab

Kini anda boleh menggunakan bekas Gitlab baharu. Berikut ialah contoh perintah docker service untuk melancarkan bekas Gitlab dengan pilihan tersuai dan sambungan kepada volum yang berterusan:

$ docker service create \
    --name gitlab \
    --mount source=gitlab_config,target=/etc/gitlab \
    --mount source=gitlab_logs,target=/var/log/gitlab \
    --mount source=gitlab_data,target=/var/opt/gitlab \
    --publish published=80,target=80 \
    --publish published=22,target=22 \
    gitlab/gitlab-ce:latest

Langkah Empat: Sertai Nod

Swarm kini tersedia Token Pengurus menambah nod lain pada Swarm. Mula-mula gunakan arahan berikut untuk mendapatkan Token:

$ docker swarm join-token manager

Arahan akan mengeluarkan kandungan berikut:

To add a manager to this swarm, run the following command:

    docker swarm join --token SWMTKN-...... xxx.xxx.xxx.xxx:2377

To add a worker to this swarm, run the following command:

    docker swarm join --token SWMTKN-...... xxx.xxx.xxx.xxx:2377

Salin arahan dan laksanakan pada pelayan lain untuk menambahkannya ke Swarm tengah.

Langkah 5: Letakkan lebih banyak bekas

Untuk mengembangkan kapasiti Gitlab, bekas Gitlab tambahan boleh digunakan pada nod lain. Bekas baharu boleh dimulakan pada nod lain menggunakan perintah docker service berikut yang serupa dengan langkah tiga:

$ docker service create \
    --name gitlab \
    --mount source=gitlab_config,target=/etc/gitlab \
    --mount source=gitlab_logs,target=/var/log/gitlab \
    --mount source=gitlab_data,target=/var/opt/gitlab \
    --publish published=80,target=80 \
    --publish published=22,target=22 \
    gitlab/gitlab-ce:latest

Perhatikan bahawa pilihan --name mesti ditetapkan kepada "gitlab" supaya semua bekas boleh mengenali setiap bekas. lain-lain.

Kesimpulan

Menggunakan Docker Swarm untuk menggunakan bekas Gitlab pada berbilang nod ialah cara untuk mengembangkan kapasiti Gitlab dan meningkatkan prestasi. Arahan pengedaran GitLab boleh digunakan merentas berbilang pelayan untuk memperhalusi sumber dengan berkongsi sumber dan beban. Ini membolehkan pasukan mengurus dan mengekalkan platform Gitlab dengan lebih baik dan meningkatkan kecekapan pembangunan produk.

Atas ialah kandungan terperinci Penjelasan terperinci tentang penyelesaian penggunaan teragih gitlab. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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