GitLab安装
GitLab相关功能服务说明:
- nginx:作为Web服务器和反向代理,用于访问GitLab的Web界面。可以关闭,但会导致无法通过Web界面访问GitLab。
- prometheus_monitoring:提供监控和报警功能,收集和分析GitLab的性能指标。可以关闭,不影响基本代码存放功能。
- registry:提供Docker镜像仓库功能。可以关闭,除非需要使用GitLab作为私有Docker镜像仓库。
- gitlab_workhorse:提供HTTP请求代理和负载均衡功能,优化Git操作和文件传输。可以关闭,但可能影响性能优化。
- puma:作为GitLab的Web服务器,处理HTTP请求和提供Web界面和API访问功能。不建议关闭,是GitLab的核心组件之一。
- postgresql:作为数据库存储引擎,存储GitLab应用程序的数据。不建议关闭,是GitLab的核心组件之一。
- redis:提供缓存和键值存储功能,改善GitLab的性能。可以关闭,但可能影响性能优化。
- redis_master_role:作为Redis的主节点角色,提供高可用性和复制功能。不建议关闭,是GitLab的核心组件之一。
- redis_replica_role:作为Redis的从节点角色,提供高可用性和复制功能。不建议关闭,是GitLab的核心组件之一。
- logrotate:提供日志文件管理和轮转功能,管理GitLab的日志文件。可以关闭,但需要手动管理和清理日志文件。
- manage_accounts:提供账户管理功能,包括用户和权限管理。可以关闭,但无法进行用户和权限管理操作。
- manage_storage_directories:提供存储目录管理功能,管理GitLab的数据存储路径。可以关闭,但需要手动管理存储目录。
- gitlab_pages:提供GitLab Pages服务的支持功能,用于托管静态网页。可以关闭,除非需要使用GitLab Pages功能。
- pages_nginx:作为GitLab Pages服务的Nginx支持功能,处理静态网页请求。可以关闭,除非需要使用GitLab Pages功能。
- gitlab_kas:提供Kubernetes集成功能。可以关闭,除非需要使用GitLab与Kubernetes集成。
- mattermost:提供团队协作和聊天功能。可以关闭,除非需要使用GitLab内置的Mattermost功能。
- mattermost_nginx:作为Mattermost的Nginx支持功能,处理Mattermost的HTTP请求。可以关闭,除非需要使用GitLab内置的Mattermost功能。
- registry_nginx:作为Docker镜像仓库的Nginx支持功能,处理Docker镜像请求。可以关闭,除非需要使用GitLab作为私有Docker镜像仓库。
- monitoring_role:提供监控组件的角色。可以关闭,不影响基本代码存放功能。
- prometheus:提供监控和报警功能,收集和分析GitLab的性能指标。可以关闭,不影响基本代码存放功能。
- alertmanager:用于接收和处理监控报警信息。可以关闭,不影响基本代码存放功能。
- node_exporter:收集主机的系统和硬件指标,供Prometheus监控使用。可以关闭,不影响基本代码存放功能。
- redis_exporter:收集Redis的性能指标,供Prometheus监控使用。可以关闭,不影响基本代码存放功能。
- postgres_exporter:收集PostgreSQL数据库的性能指标,供Prometheus监控使用。可以关闭,不影响基本代码存放功能。
- pgbouncer_exporter:收集PgBouncer连接池的性能指标,供Prometheus监控使用。可以关闭,不影响基本代码存放功能。
- gitlab_exporter:提供GitLab自身的性能指标,供Prometheus监控使用。可以关闭,不影响基本代码存放功能。
- grafana:提供可视化和仪表盘功能,用于展示和分析监控指标。可以关闭,不影响基本代码存放功能。
- gitaly:提供Git分布式文件系统的后端存储服务,处理Git操作和文件传输。不建议关闭,是GitLab的核心组件之一。
- praefect:提供Git分布式文件系统的负载均衡和高可用性功能。不建议关闭,是GitLab的核心组件之一。
- storage_check:用于检查存储目录的完整性和状态,确保数据的一致性。可以关闭,但无法进行存储目录的完整性检查。
- redis_sentinel_role:作为Redis Sentinel的角色,提供高可用性和故障切换功能。不建议关闭,是GitLab的核心组件之一。
- sentinel:作为Redis Sentinel的组件,管理Redis的高可用性和故障切换。不建议关闭,是GitLab的核心组件之一。
- geo_postgresql:用于GitLab Geo功能的数据库存储引擎,复制和同步GitLab数据。可以关闭,除非需要使用GitLab Geo功能。
- pgbouncer:作为PgBouncer连接池的前端代理,提供连接池和性能优化功能。可以关闭,不影响基本代码存放功能。
- patroni:提供PostgreSQL的高可用性和故障切换功能。可以关闭,除非需要使用高可用性的PostgreSQL数据库。
- consul:提供服务发现和配置管理功能。可以关闭,不影响基本代码存放功能。
1、首先在 GitLab 国内源下载 GitLab 的安装包:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-15.6.1-ce.0.el7.x86_64.rpm
2、下载GitLab rpm包,之后通过yum 直接安装即可
yum install gitlab-ce-15.6.1-ce.0.el7.x86_64.rpm -y
3、安装完成后,需要修改几处配置
vim /etc/gitlab/gitlab.rb
- 将 external_url 更改为自己的发布地址,可以是服务器的 IP,也可以是一个可被解析的域名:
- 如果已经安装了 Prometheus 监控平台, GitLab 自带的 Prometheus 可以无需安装,
后期可以安装 GitLab Exporter 即可进行监控。关闭 Prometheus 插件(可选)
- 更改完成后需要重新加载配置文件
gitlab-ctl reconfigur
- 加载配置完成以后,可以看到如图信息
- 通过浏览器访问GitLab,账号 root,默认密码在/etc/gitlab/initial_root_password
注:/etc/gitlab/initial_root_password 里面的密码只保留24小时,24小时候会删除。登录后记得修改密码