WHEREIS

# 공식사이트 기준 (옴니버스)

 

$sudo yum install -y curl policycoreutils-python openssh-server cronie

 

- 방화벽을 쓰지 않는 환경에서는 필요 없음

sudo lokkit -s http -s ssh

 

- 메일서버가 따로 있을 경우 필요 없음

sudo yum install postfix

sudo service postfix start

sudo chkconfig postfix on

 

- repo 추가  

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

 

* 인터넷이 불가한 망의 경우, 아래 사이트에서 rpm 파일 받아서 설치해도 무방

https://packages.gitlab.com/gitlab/gitlab-ce

 

- 해당 커맨드도 필요 없음 (나중에 설정 가능)

sudo EXTERNAL_URL="https://gitlab.example.com"

 

$yum -y install gitlab-ce    // 위와 같이 repo 를 추가 했을 때

$rpm -ivh <파일명> // rpm 파일을 받았을 때   (맨 위에 의존성 패키지는 먼저 설치해야 함, policycoreutils-python )

----------------------------------------

 

- 아래 커맨드 입력 후, 관련된 데몬이  셋팅 및 구동 됨 

/opt/gitlab/bin/gitlab-ctl reconfigure

 

 

만약, pgsql or redis 혹은 다른 어플리케이션을 독립적으로 설치할 시

해당 파일에 수정이 필요 함.

/etc/gitlab/gitlab.rb 

https://docs.gitlab.com/charts/advanced/external-db/external-omnibus-psql.html

 

 

#한 서버에 설치 후 mail 및 ssl 설정만 한 경우 예시

external_url 'https://abc.ko.com' 
nginx['redirect_http_to_https'] = true 
nginx['ssl_certificate'] = "/etc/gitlab/ssl/STAR.1.com.crt" 
nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/STAR.1.com.key" 
letsencrypt['enable'] =false

 

gitlab_rails['smtp_enable'] = true 
gitlab_rails['smtp_address'] = "smtp.1.com" 
gitlab_rails['smtp_port'] = 25 
gitlab_rails['smtp_domain'] = "smtp.1.com" 
gitlab_rails['smtp_enable_starttls_auto'] = false 
gitlab_rails['smtp_tls'] = false

 

# 기타 튜닝 포인트
# 메모리의 1/4 을 권장 함. 
postgresql['shared_buffers'] = "3072MB"

 

# 모니터링
prometheus['listen_address'] = '192.168.110.86:9090'
prometheus_monitoring['enable'] = true

grafana['enable'] = true
grafana['http_addr'] = '0.0.0.0'
grafana['http_port'] = 3000
grafana['gitlab_auth_sign_up'] = true

 

* postgresql['shared_buffers'] 옵션 설명

shared_buffers (integer)
Sets the amount of memory the database server uses for shared memory buffers. The default is typically 32 megabytes (32MB), but might be less if your kernel settings will not support it (as determined during initdb). This setting must be at least 128 kilobytes. (Non-default values of BLCKSZ change the minimum.) However, settings significantly higher than the minimum are usually needed for good performance. This parameter can only be set at server start.
If you have a dedicated database server with 1GB or more of RAM, a reasonable starting value for shared_buffers is 25% of the memory in your system. There are some workloads where even large settings for shared_buffers are effective, but because PostgreSQL also relies on the operating system cache, it is unlikely that an allocation of more than 40% of RAM to shared_buffers will work better than a smaller amount. Larger settings for shared_buffers usually require a corresponding increase in checkpoint_segments, in order to spread out the process of writing large quantities of new or changed data over a longer period of time.
 
On systems with less than 1GB of RAM, a smaller percentage of RAM is appropriate, so as to leave adequate space for the operating system. Also, on Windows, large values for shared_buffersaren't as effective. You may find better results keeping the setting relatively low and using the operating system cache more instead. The useful range for shared_buffers on Windows systems is generally from 64MB to 512MB.

 

이후 http:/;/ip or domain 으로 접속 시, root 패스워드 설정 후 사용 가능

 

 

gitlab-ce-12.4.0-ce.0.el6.x86_64 버전은 로그인 시 welcome  페이지에 이미지가 엑박이 뜨는데

아래 페이지 참고하여 소스 수정하면 정상적으로 뜸

https://gitlab.com/gitlab-org/gitlab/commit/de7b622e9f8cd5506308f1f1d558d50350003155

 

Fixes welcome icons not showing (de7b622e) · Commits · GitLab.org / GitLab

Closes https://gitlab.com/gitlab-org/gitlab/issues/34768

gitlab.com

싱글로 구성하기는 무척 쉬우나, 이중화 고려 시 설정할 부분이 많아 지며

더구나 입맛에 따라 source 설치를 할 경우, 버전에 영향으로 더 복잡해진다.

그래서 공식 홈페이지에서도 옴니버스 패키지로 설치할 것을 권장한다.

 

- 백업

/opt/gitlab/bin/gitlab-backup create

* 따로 설정하지 않았다면 /var/opt/gitlab/backups/ 에  백업파일이 생성 됨.

 

 

* config 경로는 별도 백업
/etc/gitlab/

 

 

 

* restore

sudo cp 11493107454_2018_04_25_10.6.4-ce_gitlab_backup.tar /var/opt/gitlab/backups/
sudo chown git.git /var/opt/gitlab/backups/11493107454_2018_04_25_10.6.4-ce_gitlab_backup.tar

Stop the processes that are connected to the database. Leave the rest of GitLab running:

sudo gitlab-ctl stop unicorn
sudo gitlab-ctl stop sidekiq
# Verify
sudo gitlab-ctl status

Next, restore the backup, specifying the timestamp of the backup you wish to restore:

# This command will overwrite the contents of your GitLab database!
sudo gitlab-backup restore BACKUP=1493107454_2018_04_25_10.6.4-ce


sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
sudo gitlab-rake gitlab:check SANITIZE=true

 

참고사이트 : 

https://about.gitlab.com/install/#centos-6

https://gitlab.com/gitlab-org/gitlab/issues/34823

https://gitlab.com/gitlab-org/gitlab/issues/34835

https://gitlab.com/gitlab-org/gitlab/commit/de7b622e9f8cd5506308f1f1d558d50350003155

 

HA 구성 시 참고

https://about.gitlab.com/solutions/high-availability/

 

mysql 로 설치 시 참고(default pgsql 이고, 특정 버전부터 pgsql 만 지원한다고 함)

https://docs.gitlab.com/ee/ci/services/mysql.html

 

source 설치 시 참고 

https://gitlab.com/gitlab-org/gitlab-recipes/tree/master/install/centos

 

 

이 글을 공유합시다

facebook twitter kakaoTalk kakaostory naver band
loading