V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
willXW
V2EX  ›  Linux

多台主机用来搭建 Gitlab Server 存代码怎么搞?

  •  
  •   willXW · 2019-06-17 21:36:36 +08:00 · 6530 次点击
    这是一个创建于 2017 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我们实验室买了 3 台 Thinkserver,打算用来给实验室同学放文件和代码。

    那我怎么用这几台主机建立一个 Gitlab server?

    23 条回复    2019-06-18 16:43:31 +08:00
    beginor
        1
    beginor  
       2019-06-17 21:50:40 +08:00 via Android
    gitlab 并不适合集群,单机部署就够了。 如果一定要分开的话,就把数据库单独安装到另外一台服务器。剩下一台可以跑 gitlab runner。
    ranleng
        2
    ranleng  
       2019-06-17 21:56:29 +08:00 via Android
    在一个上面搭服务
    然后每天 12 点备份到剩下两台
    willXW
        3
    willXW  
    OP
       2019-06-17 22:02:10 +08:00
    @beginor 我有三台服务器,我可以一个开 gitlab runner,另外两个开数据库么?
    @ranleng 备份到另外两台,这也太费机器了吧。三台当一台使么?
    scukmh
        4
    scukmh  
       2019-06-17 22:04:39 +08:00
    有那么大的需求嘛?一台我觉得够了。剩下两台说不定还能哪来挖挖矿之类的。(跑
    willXW
        5
    willXW  
    OP
       2019-06-17 22:22:33 +08:00
    @scukmh 有这么大需求,一台 4T ( raid 1 ),一台 1T(raid 1)。一个人 50G,50 个人,2.5T 。实验室每年有 50 个人,两年就分完了。
    asuka4ever
        6
    asuka4ever  
       2019-06-17 22:53:23 +08:00
    @willXW 文件需求不应该搭 samba 么?实验室能每人写 50G 的代码?
    stillwaiting
        7
    stillwaiting  
       2019-06-17 22:55:48 +08:00
    @willXW 每人每年写 50G 代码??
    willXW
        8
    willXW  
    OP
       2019-06-17 23:30:03 +08:00
    @asuka4ever @stillwaiting 不仅用来放代码的,比如放毕业论文,项目过程中存放一些文档等等。算是网盘+Codebase 两种功能吧。
    yuikns
        9
    yuikns  
       2019-06-17 23:33:53 +08:00
    1. 存代码一台够用了。大文件用 lfs。
    2. 你可以一台开服务器,其它几开 runner
    yuikns
        10
    yuikns  
       2019-06-17 23:35:41 +08:00
    lfs 文件是单独的目录。你如果愿意,可以挂到 Ceph 和 GlusterFS 上分享下硬盘资源。

    我觉得 GlusterFS 比较适合你这个需求。
    phy25
        11
    phy25  
       2019-06-18 03:32:05 +08:00 via Android
    真想多台可以 GitLab Geo,只是没有必要而已。可以在大服务器上隔虚拟机或者 Docker 之类的。然而您这个需求主要问题还是在怎么扩展存储。
    msg7086
        12
    msg7086  
       2019-06-18 04:44:55 +08:00
    看不太懂这操作。人家都是确定了需求去买服务器,你们是服务器先买回来然后再想办法把需求凑上去?
    如果有这么大存储需求的话,一台机器上面堆个 20-30T 空间就结了呗。
    剩下的最多再搞一个 GitLab Runner。
    你这三台不伦不类的机器,很难搞啊……
    fx
        13
    fx  
       2019-06-18 05:49:22 +08:00
    100G 就够你们用了, 拿来当文件存储就算了
    jimrok
        14
    jimrok  
       2019-06-18 08:01:54 +08:00
    gitlab 一台就够了,如果磁盘满了再进行扩容。git 是一种分布式的版本控制,通常情况下,个人的 git 目录里还有一份备份,很少有个人和服务器同时损毁的情况。不放心,再做一次复制到另外一台服务器上。rsync 或者共享磁盘就可以。
    beginor
        15
    beginor  
       2019-06-18 08:09:01 +08:00 via Android
    @willXW 你想这样玩儿当然可以,数据库搭建集群就可以, 但是请仔细思考有这个必要么? 年产量 50G 的,肯定不是代码,而是文件。gitlab 的代码和文件不放在数据库,而是在 git 库。
    silenceshell
        16
    silenceshell  
       2019-06-18 08:09:57 +08:00 via iPhone
    @jimrok 以前我也这么想的,但真见过一起损毁的案例。当事人非常崩溃。
    forcecharlie
        17
    forcecharlie  
       2019-06-18 09:13:13 +08:00
    虽然可以用 NFS Ceph, 但最后会发现分布式文件系统会是瓶颈,目前 Gitlab 有 gitaly,基本上可以使用 gitaly。
    xhcnb
        18
    xhcnb  
       2019-06-18 09:31:34 +08:00
    gitlab 数据库里没有多少东西的, 代码和文件也不存在数据库, 而且 50 人其实存不了多少代码
    硬盘便宜, 可以再扩充, 4T raid1 能有几个钱, 简单配置成 lvs 扩展卷, 很实用
    必须有一台机器做备份, 可兼做 runner
    文件需求不要放在 gitlab
    cominghome
        19
    cominghome  
       2019-06-18 09:51:10 +08:00
    gitlab 单机部署
    弄一个文件服务器
    最后搞一台备份服务器
    SirLostWhite
        20
    SirLostWhite  
       2019-06-18 09:57:36 +08:00
    @cominghome +1 感觉这样更靠谱
    QQ2171775959
        21
    QQ2171775959  
       2019-06-18 10:32:57 +08:00
    要集群的话,还是用独立的比较好,组个内网,做一下负载均衡。
    superalsrk
        22
    superalsrk  
       2019-06-18 11:16:47 +08:00
    大文件,日志, 数据之类的还是单独的存放比较好吧, 比如自己搭建一个 owncloud 什么的
    menyakun
        23
    menyakun  
       2019-06-18 16:43:31 +08:00
    @cominghome 这样靠谱。实验室每年 50 人,总人数我就算 300 人的话,也基本没有并发
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3470 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 05:02 · PVG 13:02 · LAX 21:02 · JFK 00:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.