设为首页 收藏本站
查看: 680|回复: 0

[经验分享] 卧龙初醒时...

[复制链接]

尚未签到

发表于 2018-1-10 13:31:39 | 显示全部楼层 |阅读模式
  目前互联网公司主流的代码仓库统是gitlab,类似github的实现,维护gitlab已经有两年多的时间,
  下面说一下维护过程中的注意点,以及如何维护更好。
  分别是搭建,首先得搭建起来,不然怎么玩,其次是备份、备份、备份,谁也不能保证服务器会不会
  突然之间Down掉,为了保险起见,建议所有重要的业务一定要有备份。当然,仅仅有备份还是不够的,
  为什么呢?因为你还要做恢复演练测试,假如你的备份数据恢复不了,你备份有个毛用,和没备份是没有
  区别的,所以还要验证你备份的数据能否恢复系统。再说一下,备份数据不要放在提供服务的主机上,
  不然主机挂了你备份数据是取不出来的,到时候就尴尬了,建议放在专门的备份服务器。

Gitlab搭建
  gitlab的搭建目前非常简单了,查看官网就可以搭建,主要是一个rpm包,你装上了就全部就好了,
  现在不需要像以前一样一个个的编译了,如果你有兴趣也可以这么做,当然我是不建议的。
  下载地址: https://packages.gitlab.com/gitlab/gitlab-ce
  1. 安装依赖软件
  

yum install curl openssh-server openssh-clients postfix cronie  
service postfix start
  
chkconfig postfix on
  


  2.安装方式可以通过下载rpm包或者添加yum源直接安装的方法.

使用清华大学的源:

  

# 新建 /etc/yum.repos.d/gitlab-ce.repo,内容为  
[gitlab-ce]
  
name=Gitlab CE Repository
  
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
  
gpgcheck=0
  
enabled=1
  

  

  

# 安装命令  
yum install gitlab-ce
  


3. 配置并启动Gitlab

  

gitlab-ctl reconfigure  


4.登录gitlab并且重置密码.

安装完成后可以通过 http://主机ip 的方式来访问,会输入两次密码,重置的是管理员root的密码.重置完成则可以通过root用户登录进行管理.



GitLab特殊配置

gitlab安装完成后会有一个默认的存储代码仓库的路径,建议自己自定义到大磁盘上,以免之后磁盘空间引起不必要的麻烦。

  1. 配置gitlab的项目代码存储目录为 /data/GitData/git-data/

       创建目录 mkdir -pv /data/GitData/git-data/

       修改权限 chown git -R  /data/GitData/git-data/

   2. 修改配置文件

  

# /etc/gitlab/gitlab.rb 添加配置:  
git_data_dirs({ "default" => { "path" => "/data/GitData/git-data" } })
  


3. 配置访问的域名.

   建议使用域名进行访问,因为使用ip的话不太友好,而且之后换ip后会非常痛苦,相当于所有的使用人员都需要改,这是不能容忍的.

  

# /etc/gitlab/gitlab.rb 修改配置:  
external_url 'http://git.xxxx.com'
  

  


4.配置生效

  

gitlab-ctl reconfigure  

  


Gitlab-ctl 使用
  

查看状态:  
sudo gitlab-ctl status;
  

  
# Start all GitLab components (启动)
  
sudo gitlab-ctl start
  

  
# Stop all GitLab components (停止)
  
sudo gitlab-ctl stop
  

  
# Restart all GitLab components(重启)
  
sudo gitlab-ctl restart
  

  


Gitlab 备份
  使用Gitlab一键安装包安装Gitlab非常简单, 同样的备份恢复与迁移也非常简单. 使用一条命令即可创建完整的Gitlab备份:
  

gitlab-rake gitlab:backup:create  

  使用以上命令会在/var/opt/gitlab/backups目录下创建一个名称类似为1393513186_gitlab_backup.tar的压缩包, 这个
  压缩包就是Gitlab整个的完整部分, 其中开头的1393513186是备份创建的日期.

Gitlab 修改备份文件默认目录
  你也可以通过修改/etc/gitlab/gitlab.rb来修改默认存放备份文件的目录:
  

gitlab_rails['backup_path'] = '/mnt/backups'  

  

  /mnt/backups修改为你想存放备份的目录即可, 修改完成之后使用gitlab-ctl reconfigure命令重载配置文件即可.

Gitlab 自动备份
  也可以通过crontab使用备份命令实现自动备份
  加入以下, 实现每天凌晨2点进行一次自动备份:
  

0 2 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create  

  


Gitlab 恢复
  同样, Gitlab的从备份恢复也非常简单:
  

# 停止相关数据连接服务  
gitlab-ctl stop unicorn
  
gitlab-ctl stop sidekiq
  
# 从1393513186编号备份中恢复
  
gitlab-rake gitlab:backup:restore BACKUP=1393513186
  
# 启动Gitlab
  
sudo gitlab-ctl start
  

  


Gitlab迁移
  迁移如同备份与恢复的步骤一样, 只需要将老服务器/var/opt/gitlab/backups目录下的备份文件拷贝到新服务器上的/var/opt/gitlab/backups
  即可(如果你没修改过默认备份目录的话). 但是需要注意的是新服务器上的Gitlab的版本必须与创建备份时的Gitlab版本号相同. 比如新服务器安装
  的是最新的7.60版本的Gitlab, 那么迁移之前, 最好将老服务器的Gitlab 升级为7.60在进行备份.
  参考文档:
  安装文档请参考:   https://about.gitlab.com/downloads/#centos6
  使用文档请参考:   http://doc.gitlab.com/omnibus/
  Git灾备方法参考: http://segmentfault.com/a/1190000002439923
  https://gitlab.com/gitlab-org/omnibus-gitlab/blob/629def0a7a26e7c2326566f0758d4a27857b52a3/README.md#backups
  GITLAB下载:     https://about.gitlab.com/downloads/archives/
  官方文档参考:   http://doc.gitlab.com/omnibus/
  https://docs.gitlab.com/omnibus/settings/configuration.html#storing-git-data-in-an-alternative-directory
  https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce/

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-433551-1-1.html 上篇帖子: svn迁移gitlab,构建前端打包发布流程 下篇帖子: ubuntu12.04 gitlab搭建
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表