Настроить: GitLab установлен с Омнибус пакет на CentOS 6.4
После того, как я внес изменения в файл конфигурации GitLab /etc/gitlab/gitlab.rb для настройки Bitbucket в качестве поставщика OAuth2, я выполнил реконфигурацию:
sudo gitlab-ctl reconfigure
После того, как я запустил эту команду, я увидел некоторую ошибку, возможно, о службе мониторинга, но сеанс SSH прервался, и я не видел, что произошло. После восстановления сеанса GitLab был недоступен, я смог увидеть логотип GitLab с ошибкой 502: "GitLab слишком долго отвечает"или что-то подобное.
Итак, я восстановил файл конфигурации, думая, что в нем что-то не так ...
Бегущий хвост У меня следующие ошибки (Prometheus не работает):
2018-01-30_22:19:19.28021 time="2018-01-30T23:19:19+01:00" level=info msg="Starting prometheus (version=, branch=, revision=)" source="main.go:87"
2018-01-30_22:19:19.28027 time="2018-01-30T23:19:19+01:00" level=info msg="Build context (go=go1.9.2, user=, date=)" source="main.go:88"
2018-01-30_22:19:19.28030 time="2018-01-30T23:19:19+01:00" level=info msg="Host details (Linux 2.6.32-642.11.1.el6.x86_64 #1 SMP Fri Nov 18 19:25:05 UTC 2016 x86_64 lnx01.brainsen.com (none))" source="main.go:89"
2018-01-30_22:19:19.29486 time="2018-01-30T23:19:19+01:00" level=info msg="Loading configuration file /var/opt/gitlab/prometheus/prometheus.yml" source="main.go:254"
2018-01-30_22:19:19.29779 time="2018-01-30T23:19:19+01:00" level=error msg="Could not open the fingerprint-to-metric index for archived series. Please try a 3rd party tool to repair LevelDB in directory "/var/opt/gitlab/prometheus/data/archived_fingerprint_to_metric". If unsuccessful or undesired, delete the whole directory and restart Prometheus for crash recovery. You will lose all archived time series." source="persistence.go:213"
2018-01-30_22:19:19.29781 time="2018-01-30T23:19:19+01:00" level=error msg="Error opening memory series storage: leveldb: manifest corrupted (field 'comparer'): missing [file=MANIFEST-000923]" source="main.go:192"
Я выполнил команду
sudo -u gitlab-prometheus python -c "import leveldb; leveldb.RepairDB('/var/opt/gitlab/prometheus/data/archived_fingerprint_to_metric')"
но я получаю сообщение:
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named leveldb
Теперь GitLab работает нормально, но бегущий хвост. Я все еще вижу вышеуказанную ошибку о Prometheus каждые 2 секунды, и я хотел бы исправить ее, не нарушая установку GitLab.
Проблема в том, что gitlab запускает Prometheus в настройке pyvenv, которую я не могу найти, где он находится.
Вы всегда можете
pip install leveldb
А потом запустите команду .. должно работать