Mover el servidor Gitlab y Gitolite a otra máquina

Mover el servidor Gitlab y Gitolite a otra máquina

Ahora tengo gitlab y gitolite ejecutándose en mi servidor ubuntu. Sin embargo, este servidor es demasiado lento y mi empresa desea trasladar el servidor a otra máquina. ¿Hay alguna forma de mover el servidor gitlab y gitolite (todos los archivos, usuarios y configuración) a otra máquina?

Instalar y crear todos los usuarios y repositorios nuevamente sería mi última opción. Gracias de antemano.

Respuesta1

Hago esto constantemente mediante un trabajo crontab cada hora para una implementación local más rápida. (que crea una copia exacta del servidor original, sirve como espejo de solo lectura, personalmente lo llamo máquina de marionetas).

Todo lo que necesitas hacer es:

  1. Copia de seguridad/restauración de datos de MySQL (herramientas: mysqldump / mysql < backup.sql.txt)
  2. copie todo gitlab www a la nueva máquina (scp, rsync)
  3. copie todo el directorio de gitolite a la nueva máquina (rsync)

Siempre puede ejecutar el siguiente comando para probar si el títere se ejecuta correctamente.

bundle exec rake gitlab:app:status RAILS_ENV=production

Algún procedimiento detallado:

Hice la configuración de mime usando ubuntu 12.04 gitolite apt-get install, descanse según la guía oficial y también tomé algunas notas:

Las claves públicas/privadas SSH son necesarias para el proceso rsync/scp automatizado (sin contraseña). Si no comprende, leahttp://troy.jdmz.net/rsync/index.html

Todo lo que necesita configurar son algunos trabajos cron después de que la máquina original esté funcionando: esto esen líneaespejo también. (no es necesario reiniciar ningún servidor web/máquina)

crontab en la máquina espejo:

58 * * * * rsync -zav root@my_remote_server.com:/home/git /home
11 * * * * rsync -zav root@my_remote_server.com:/root/mysql_hourly_dump.txt /root
15 * * * * mysql -u root -p"secure password" gitlabhq_production < mysql_hourly_dump.txt
20 * * * * rsync -zav --delete my_remote_server.com:/www/ /www

crontab en el servidor:

7 * * * * mysqldump -p"secure password" gitlabhq_production -u root > /root/mysql_hourly_dump.txt

Respuesta2

Mover gitolita parece fácil:

  • debe asegurarse de que las claves públicas a las que hace referencia todavía estén en el ~/.ssh/authorized_keysnuevo hogar (por lo que principalmente debe copiar ese archivo)
  • Y necesita mover los archivos y repositories( verifique las rutas en ese último).gitolite.gitolite.rc

Los "usuarios" sólo se declaran en el archivo gitolite y la base de datos gitlab.

Se debe reinstalar GitLab (debido a todas las gemas que está usando, que podrían estar usando una ruta fija basada en la primera instalación) y su base de datos debe actualizarse/reemplazarse con la del servidor Ubuntu (ya sea a través de una copia de archivo o mediante un exportación/importación SQL).

información relacionada