Peb tab tom hloov kho qhov chaw lag luam: qhia peb tias zoo dua?

Peb tab tom hloov kho qhov chaw lag luam: qhia peb tias zoo dua?

Xyoo no peb tau teeb tsa peb tus kheej lub hom phiaj tseem ceeb los txhim kho cov khoom.

Qee cov haujlwm yuav tsum tau npaj ua ntej, uas peb sau cov lus tawm tswv yim los ntawm cov neeg siv: peb caw cov neeg tsim khoom, cov thawj coj ua haujlwm, cov thawj coj hauv pab pawg, thiab cov kws tshaj lij Kubernetes mus rau qhov chaw ua haujlwm.

Hauv qee qhov, peb muab cov servers hauv cov lus teb rau cov lus teb, ib yam li cov ntaub ntawv nrog cov tub ntxhais kawm tsis pom kev kawm. Peb muaj kev sib tham tsis khoom heev tham txog UI / UX, rov qab ntawm cov ntawv qhia kev kawm rau phau ntawv siv, thiab cov phiaj xwm loj los txhim kho cov neeg siv kev paub.

Cov kev hloov pauv feem ntau xav tau ntau lub sijhawm txhim kho, tab sis kiab khw - ib zaj dab neeg txawv kiag li. Nrog rau qhov tshwm sim ntawm snapshots, peb muaj lub sijhawm los nyiam cov neeg ua haujlwm sab nraud uas tuaj yeem npaj cov duab kom peb tuaj yeem suav nrog hauv khw muag khoom hauv ib hnub.

Yuav ua li cas pab tau kiab khw Peb yuav qhia RUVDS thiab dab tsi nws yuav entail siv cov piv txwv ntawm peb cov duab tshiab npaj los ntawm peb cov neeg siv khoom siv - GitLab

Yuav ua li cas los tsim Gitlab template ntawm Centos 8

Txhawm rau nruab Gitlab, Yura xaiv tus neeg rau zaub mov nrog 8 GB RAM thiab 2 CPU cores (4 GB thiab 1 CPU ua tau, tab sis qhov no koj yuav tau siv cov ntaub ntawv sib pauv, thiab Gitlab kev ua tau zoo hauv qhov no yog qhov qis dua.

Peb tab tom hloov kho qhov chaw lag luam: qhia peb tias zoo dua?

Cia peb nco ntsoov tias cov pob tsim nyog rau kev txhim kho Gitlab raug teeb tsa:

sudo dnf install -y curl policycoreutils

Cia peb qhib kev nkag mus rau cov chaw nres nkoj 80 thiab 443:

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo systemctl reload firewalld

Cia peb ntxiv Gitlab repository:

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

Yog tias tus neeg rau zaub mov muaj lub npe DNS teeb tsa, ces Gitlab tuaj yeem nruab siv nws. Yog tias koj teev tus https:// prefix, Gitlab yuav cia li tsim Lets Encrypt daim ntawv pov thawj.

Hauv peb qhov xwm txheej, vim Peb tab tom ua tus qauv rau lub tshuab virtual, tom qab ntawd Yura teeb tsa qhov chaw nyob (uas tuaj yeem hloov pauv yav tom ntej yam tsis muaj teeb meem):

sudo EXTERNAL_URL="http://0.0.0.0" dnf install -y gitlab-ee

Tom qab ntawd, koj tuaj yeem tshawb xyuas tias cov kev pabcuam Gitlab ua haujlwm los ntawm kev mus rau

http://vps_ip_address/

lub kaw lus yuav hais kom koj teeb tus password thawj zaug rau tus thawj tswj hwm tus account hauv paus.

Nyob rau theem no, peb yuav siv lub snapshot ntawm tus neeg rau zaub mov, thiab tom qab ntawd peb yuav teeb tsa nws siv nws.

Peb tab tom hloov kho qhov chaw lag luam: qhia peb tias zoo dua?

Nws yog txhua yam!

Nyiaj tshwj xeeb: peb yuav qhia koj txog dab tsi nthuav koj tuaj yeem ua los ntawm kev nthuav dav virtual nrog GitLab duab.

Saib xyuas Gitlab siv Grafana

Peb xyoos dhau los, pab pawg Gitlab tau siv qhov kev tshuaj xyuas los tswj ntau tus lej ntsuas ntsig txog Gitlab cov kev pabcuam.

Txij thaum ntawd los, Gitlab tau pib xa nws cov pob teeb tsa nrog Prometheus kom nws cov neeg siv tau txais txiaj ntsig los ntawm kev saib xyuas lub peev xwm muab los ntawm Prometheus.

Prometheus yog qhov qhib (Apache 2.0) lub sijhawm series DBMS sau rau hauv Mus thiab pib tsim ntawm SoundCloud. Hauv lwm lo lus, qhov khoom no khaws koj cov ntsuas. Ib qho nthuav feature ntawm Prometheus yog tias nws tus kheej rub cov ntsuas los ntawm cov kev pabcuam muab (ua rub). Vim li no, Prometheus tsis tuaj yeem tau txhaws nrog cov kab lossis qee yam zoo li ntawd, uas txhais tau hais tias kev saib xyuas yuav tsis dhau los ua lub hauv paus ntawm lub cev. Qhov project kuj tseem nthuav vim tias nws hauv paus tsis muaj kev ntsuas kab rov tav lossis muaj ntau yam.

Ib me ntsis dhau ib xyoo dhau los, pab pawg Gitlab tau xaus lus tias kev ntsuas tsis yooj yim heev yam tsis muaj dashboards. Yog li lawv tau koom ua ke Grafana nrog kev hloov kho dashboards los pab lawv cov neeg siv pom cov ntaub ntawv yam tsis tas yuav nruab Grafana manually.

Txij li version 12.0, Gitlab tau koom ua ke Grafana, teeb tsa nrog SSO los ntawm lub neej ntawd, thiab muaj nyob rau ntawm qhov URL no.

Muaj ob qhov sib txawv ntawm Gitlab kev koom ua ke nrog Prometheus:

  • GitLab Saib Xyuas (Omnibus)
  • Saib xyuas cov ntawv thov GitLab ib tus neeg hauv Kubernetes pawg

Yuav siv li cas

"Omnibus" yog dab tsi GitLab hu nws lub ntsiab installation pob.

Peb tab tom hloov kho qhov chaw lag luam: qhia peb tias zoo dua?

Yuav teeb Grafana li cas

Grafana tus ID nkag mus thiab lo lus zais yog neeg xiam oob khab los ntawm lub neej ntawd (tsuas yog SSO nkag nkag tau raug tso cai), tab sis yog tias xav tau nkag mus rau hauv tus account nrog tus thawj tswj hwm txoj cai lossis tuaj yeem nkag mus nrog username thiab password, koj yuav tsum tau ua qhov no hauv Gitlab configuration file /etc/gitlab/gitlab .rb los ntawm kev kho cov kab sib txuas:

grafana['disable_login_form'] = false

Thiab reconfigure Gitlab los siv cov kev hloov pauv:

sudo gitlab-ctl reconfigure

Yog tias koj pib Gitlab siv peb lub tshuab virtual los ntawm peb lub khw, koj yuav tsum muab koj qhov URL rau lub server los ntawm kev hloov cov kab sib txuas hauv /etc/gitlab/gitlab.rb:

external_url = 'http://gitlab.mydomain.ru'

Ua reconfiguration:

sudo gitlab-ctl reconfigure

Thiab hloov Redirect URI rau Grafana raws li hauv

Chaw Tswj Xyuas> Daim Ntawv Thov> GitLab Grafana

gitlab.mydomain.ru/-/grafana/login/gitlab

Peb tab tom hloov kho qhov chaw lag luam: qhia peb tias zoo dua?

Thawj zaug koj nkag mus siv SSO, Gitlab yuav thov kev tso cai tso cai rau Grafana tus ID nkag mus.

Peb tab tom hloov kho qhov chaw lag luam: qhia peb tias zoo dua?

Kev ntsuas

Hauv Grafana, npaj txhij-ua dashboards ntawm cov kev pabcuam tseem ceeb tau teeb tsa thiab muaj nyob rau hauv qeb Gitlab Omnibus.

Peb tab tom hloov kho qhov chaw lag luam: qhia peb tias zoo dua?
Dashboard Txheej txheem cej luam

Peb tab tom hloov kho qhov chaw lag luam: qhia peb tias zoo dua?
Service Platform Metrics dashboard

  • Txheej txheem cej luam - ib tug txheej txheem cej luam dashboard qhia cov xwm txheej ntawm cov kev pab cuam, queues thiab neeg rau zaub mov kev pab pab
  • Gitaly - kev saib xyuas kev pabcuam uas muab RPC nkag mus rau Gitlab repositories
  • NGINX VTS - txheeb cais ntawm kev pabcuam tsheb thiab HTTP codes ib qhov kev thov
  • PostgreSQL - txheeb cais ntawm qhov muaj thiab thauj khoom ntawm PostgreSQL database
  • Praefect - cia load xyuas nrog siab muaj Praefect
  • Rails App - saib lub dashboard rau Rails daim ntawv thov
  • Redis - saib xyuas lub nra ntawm Redis kev pabcuam
  • Registry - daim ntawv teev npe saib xyuas
  • Kev Pabcuam Platform Metrics - kev pabcuam kev ntsuas uas qhia txog kev siv cov peev txheej los ntawm Gitlab, muaj kev pabcuam, tus naj npawb ntawm RPC thov thiab cov lej yuam kev.

Kev sib koom ua ke yog qhov dav heev thiab cov neeg siv Gitlab muaj peev xwm txheeb xyuas qhov pom ntawm Gitlab metrics tawm ntawm lub thawv.

Ntawm Gitlab, ib pab neeg sib cais yog lub luag haujlwm rau kev tswj hwm thiab hloov kho cov dashboards, thiab raws li Ben Kochie, SRE engineer ntawm Gitlab, qhov chaw pib thiab npaj dashboards yuav haum rau cov neeg siv feem ntau.

Thiab tam sim no qhov tseem ceeb tshaj plaws: cia peb tsim kev lag luam ua ke

Peb xav caw tag nrho Habr zej zog los koom nrog kev tsim lub khw. Muaj peb txoj hauv kev uas koj tuaj yeem koom nrog:

Npaj cov duab koj tus kheej thiab tau txais 3000 rubles rau koj qhov nyiaj tshuav

Yog tias koj npaj txhij mus rau hauv kev sib ntaus sib tua tam sim ntawd thiab tsim cov duab uas koj ploj lawm, peb yuav credit rau koj nrog 3000 rubles rau koj qhov nyiaj tshuav, uas koj tuaj yeem siv rau ntawm servers.

Yuav ua li cas los tsim koj tus kheej duab:

  1. Tsim ib tus account nrog peb ntawm qhov chaw
  2. Qhia rau kev txhawb nqa paub tias koj yuav tsim thiab sim cov duab
  3. Peb yuav credit rau koj 3000 rubles thiab pab kom muaj peev xwm tsim cov duab thaij duab
  4. Order lub virtual server nrog kev ua haujlwm huv
  5. Nruab lub software ntawm no VPS thiab teeb tsa nws
  6. Sau cov lus qhia lossis tsab ntawv rau kev siv software
  7. Tsim ib qho snapshot rau configured server
  8. Txiav txim tus neeg rau zaub mov virtual tshiab los ntawm kev xaiv cov duab tsim yav dhau los hauv "Server template" daim ntawv teev npe.
  9. Yog tias tus neeg rau zaub mov tau tsim tiav, hloov cov ntaub ntawv tau txais ntawm theem 6 mus rau kev txhawb nqa
  10. Yog tias muaj qhov yuam kev, koj tuaj yeem tshawb xyuas nrog kev txhawb nqa rau vim li cas thiab rov teeb tsa

Rau cov tswv lag luam: muab koj cov software

Yog tias koj yog tus tsim tawm software uas tau siv thiab siv ntawm VPS, peb tuaj yeem suav koj hauv khw. Nov yog qhov peb tuaj yeem pab koj coj cov neeg siv khoom tshiab, kev khiav tsheb thiab kev paub. Sau rau peb

Tsuas yog qhia peb ib daim duab hauv cov lus pom

Sau nrog cov software twg koj xav kom tuaj yeem xa cov tshuab virtual hauv ib nias?

Koj nco dab tsi hauv khw RUVDS?

Txhua lub tuam txhab hwm tus kheej yuav tsum muaj dab tsi suav nrog hauv lawv lub khw?

Peb tab tom hloov kho qhov chaw lag luam: qhia peb tias zoo dua?

Peb tab tom hloov kho qhov chaw lag luam: qhia peb tias zoo dua?

Tsuas yog cov neeg siv sau npe tuaj yeem koom nrog hauv daim ntawv ntsuam xyuas. Kos npe rau hauvthov.

Cov duab twg peb yuav tsum suav nrog hauv khw ua ntej?

  • 50,0%LEMP 10

  • 15,0%Drupal 3

  • 10,0%Joomla 2

  • 5,0%Dokku 1

  • 0,0%PacVim 0

  • 0,0%Runcloud 0

  • 5,0%code-server1

  • 15,0%Ghost3

  • 5,0%WikiJs 1

  • 0,0%Hais lus 0

  • 0,0%Rstudio 0

  • 5,0%OpenCart 1

  • 35,0%Zaj 7

  • 40,0%Laravel 8

  • 20,0%Ruby on Rails 4

  • 55,0%NodeJs 11

20 cov neeg siv pov npav. 12 cov neeg siv txwv tsis pub siv.

Tau qhov twg los: www.hab.com

Ntxiv ib saib