从7.11升级到8.0后,Gitlab无法启动postgresql,redis和sidekiq

时间:2015-09-23 16:34:17

标签: postgresql redis gitlab sidekiq

我从Gitlab 7.11更新到8.0。由于根分区空间不足,我通过

卸载了Gitlab 7
sudo gitlab-ctl uninstall

并通过

安装8
sudo apt-get install gitlab-ce

我还遇到了一些其他问题,我在网上找到了解决方案,并最终成功运行了8个。我已经确认数据仍在那里。问题是我无法通过gitlab-ctl启动postgresql,redis和sidekiq服务:

administrator@development:/var/opt/gitlab$ sudo gitlab-ctl restart
ok: run: gitlab-git-http-server: (pid 15873) 1s
ok: run: logrotate: (pid 15879) 0s
ok: run: nginx: (pid 15972) 0s
timeout: run: postgresql: (pid 2191) 7089s
timeout: run: redis: (pid 21277) 52584s, got TERM
timeout: run: sidekiq: (pid 5200) 1882s, got TERM
ok: run: unicorn: (pid 16308) 0s

然而,我可以通过以下方式启动postgresql:

sudo su - gitlab-psql -c \
  '/opt/gitlab/embedded/bin/postgres -D /var/opt/gitlab/postgresql/data/'

和redis via:

sudo su -s '/bin/sh' -c \
  '/opt/gitlab/embedded/bin/redis-server /var/opt/gitlab/redis/redis.conf' gitlab-redis

服务器正在运行Ubuntu 14.04。我怎样才能让Gitlab启动/停止postgresql,redis和sidekiq?

3 个答案:

答案 0 :(得分:2)

由于 runsvdir 服务失败,您的问题很可能会发生:

ps auxw 

在我的情况下,错误或警告将非常明显:

runsvdir -P / opt / gitlab / service log:ar / log / gitlab / sidekiq:文件不存在svlogd:暂停:无法重命名c

使用以下方法确保您的机器有足够的空间:

df /

删除可能占用空间的文件。例如日志,备份等...在我的情况下,我有25GB的备份和只有30GB的驱动器。我/ 100%正在使用,不允许我的日志旋转。

使用以下命令停止gitlab:

gitlab-ctl stop

手动杀死任何剩余的进程。使用ps auxw识别剩余的进程并杀死它们。

使用以下方法重启gitlab:

gitlab-ctl start

答案 1 :(得分:0)

我遇到了一个非常相似的问题,我看到了

之类的错误。
  

文件“当前”无法重命名

最终解决方案是先杀死所有runsvsvlogd进程,然后杀死gitlab-ctl restart

对我来说,根本原因是以下更改:

  

gitlab-ctl stop && mv /var/log/gitlab{,_BAK} && mount /dev/gitlab-vg/logs-lv /var/log/gitlab && gitlab-ctl start

...用已安装的卷有效替换路径“ / var / log / gitlab /”

因此,从Gitlab(更具体地说是runit)下更改指针确实导致流程管理器无法重新启动服务,例如sidekiq,workhorse,nginx等。重新启动gitlab-ctl restart并不能解决问题,因为runsv, svlogd显然也不会重新启动(重新启动整个系统,但是,将解决此问题)。

我还应该说,这个问题直到更改为/var/log/gitlab/后的第二天才显现出来。据我了解,直到那时svlogd才尝试移动/重命名日志文件(例如: / var / log / gitlab / gitlab-workhorse / current )。我应该注意到这一点,因为替换后不会立即将安装路径中的“新”日志文件写入。

即使只是重新启动gitlab-omnibus,也可能只是通过实现logrotate(会影响svlogd / runit外部的那些文件指针的任何东西)而遇到相同的问题。

答案 2 :(得分:-1)

经过几个小时的尝试和新问题的出现后,我最终降级到7.11并升级到7.12,7.13,7.14并最终以个别步骤升级到8.0。升级后没有问题。