DevOps/GitLab
GitLab is a web-based DevOps lifecycle software service or locally installed that provides a Git-repository manager providing wiki, issue-tracking and CI/CD pipeline features, using an open-source license.
Since April 2018, GitLab support integration with Google Kubernetes Engine (GKE) to simplify the process of spinning up a new Kubernetes cluster and deploy applications.
GitLab provides a Prometheus integration guide to export GitLab metrics to Prometheus monitoring system[1] and it is activated by default since version 9.0 in 2017.[2]
GitLab is integrated of different modules including GitLab Runner[3] (.gitlab-ci.yml
) responsible for the continuous integration[4] with an embedded HTTP Statistics Server with Prometheus metrics available on /metrics
since GitLab Runner 1.8.0.[5]
GitLab offers many features such as:
- audit events[6]
- container registry[7]
- ElasticSearch and Sentry integration [8] (not installed with GitLab)
- read-only mirrors called GitLab Geo (Premium)
- SAML 2.0 Service Provider (SP) capabilities used for Web Browser Single Sign-On (SSO)
An integrates with many platforms such as Salesforce DX and Snowplow.
GitLab Software
editBinaries
editgitlab-ctl
gitlab-ctl tail
gitlab-ctl pg-password-md5 gitlab
Configuration files
edit- Default configuration file:
/etc/gitlab/gitlab.rb
- Secrets:
/etc/gitlab/gitlab-secrets.json
- Default data directory:
/var/opt/gitlab/git-data
- GitLab CI/CD pipelines:
.gitlab-ci.yml
https://docs.gitlab.com/ee/ci/yaml/
Activities
editBasic
edit- Read GitLab CI/CD Pipeline Configuration Reference:
.gitlab-ci.yml
https://docs.gitlab.com/ee/ci/yaml/
Medium
edit- Read GitLab release notes/Changelog
- Install GitLab using docker containers. Note: Gitlab uses PostgreSQL as database backend.[9]
Advanced
edit- Review Ansible GitLab modules https://docs.ansible.com/ansible/latest/modules/list_of_all_modules.html
- Enable Gitlab container registry in:
/etc/gitlab/gitlab.rb
[10]
GitLab and Kubernetes
editSince April 2018, GitLab simplifies process of spinning up a new Kubernetes cluster in Google Kubernetes Engine (GKE) to deploy applications.[11]
See also
edit- Jenkins X
- w:Comparison_of_source-code-hosting_facilities: GitHub, TeamCity
- Git
- DevOps/JFrog Artifactory
- ↑ "GitLab Prometheus metrics". Retrieved December 26, 2018.
- ↑ https://about.gitlab.com/2017/03/22/gitlab-9-0-released/
- ↑ https://docs.gitlab.com/runner/
- ↑ https://docs.gitlab.com/runner/
- ↑ https://docs.gitlab.com/runner/monitoring/README.html
- ↑ https://docs.gitlab.com/ee/administration/audit_events.html
- ↑ https://docs.gitlab.com/ee/user/packages/container_registry/
- ↑ https://docs.gitlab.com/ee/integration/elasticsearch.html
- ↑ https://docs.gitlab.com/omnibus/settings/database.html
- ↑ https://docs.gitlab.com/ee/administration/packages/container_registry.html#container-registry-storage-driver
- ↑ https://about.gitlab.com/2018/04/05/gke-gitlab->in Google Kubernetes Engine (GKE) integration/