我们知道GitLab启动会产生很多进程,相应的进程对应不同的功能组件,这篇文章将介绍一下GitLab的应用架构组成部分。
应用架构
除此之外还有如下组件信息,虽然没有在上图中有显示,但是也是常用的组件
组件名称 功能说明 Logrotate 日志文件管理组件,用于进行日志的轮转操作 组件操作命令使用gitlab-ctl可以对组件进行操作,简单如下所示:
组件 操作 命令 Redis 启动 gitlab-ctl start redis Redis 停止 gitlab-ctl stop redis Redis 重启 gitlab-ctl restart redis Redis 确认状态 gitlab-ctl status redis Nginx 启动 gitlab-ctl start nginx Nginx 停止 gitlab-ctl stop nginx Nginx 重启 gitlab-ctl restart nginx Nginx 确认状态 gitlab-ctl status nginx PostgreSQL 启动 gitlab-ctl start postgresql PostgreSQL 停止 gitlab-ctl stop postgresql PostgreSQL 重启 gitlab-ctl restart postgresql PostgreSQL 确认状态 gitlab-ctl status postgresql Unicorn 启动 gitlab-ctl start unicorn Unicorn 停止 gitlab-ctl stop unicorn Unicorn 重启 gitlab-ctl restart unicorn Unicorn 确认状态 gitlab-ctl status unicorn Sitekiq 启动 gitlab-ctl start sitekiq Sitekiq 停止 gitlab-ctl stop sitekiq Sitekiq 重启 gitlab-ctl restart sitekiq Sitekiq 确认状态 gitlab-ctl status sitekiq另外不带第三个参数即可对整体进程操作,简单如下所示:
组件 操作 命令 GitLab整体服务 启动 gitlab-ctl start GitLab整体服务 停止 gitlab-ctl stop GitLab整体服务 重启 gitlab-ctl restart GitLab整体服务 确认状态 gitlab-ctl status 目录说明 整体目录说明 目录/文件 存放内容说明 /etc/gitlab 配置文件所在目录 /etc/gitlab/gitlab.rb 配置文件 /opt/gitlab 组件二进制文件存放目录 /var/opt/gitlab 各组件配置文件所在目录 /var/opt/gitlab/backups 缺省备份文件保存目录 /var/opt/gitlab/git-data 仓库存储目录 各组件相应目录以Redis为例,组件的二进制文件、配置文件和日志文件分别在如下目录进行保存
目录 存放内容说明 /var/opt/gitlab/redis 二进制文件存放目录 /var/log/gitlab/redis 日志文件存放目录 /var/opt/gitlab/redis 配置文件存放目录 参考文档https://gitlab.com/gitlab-org/gitlab-foss/-/blob/master/doc/development/architecture.md