ubuntu configuration ldap bitnami gitlab

ubuntu - BitNami GitLab Stack 5.1.0-2 reescribe gitlab.yml después de reiniciar



configuration ldap (4)

Estoy intentando configurar BitNami GitLab Stack 5.1.0-2 con LDAP

Entonces se encontró con el problema

Could not authorize you from Ldap because “Server 192.168.133.100 refused connection on port 389”.

donde 192.168.133.100 es en realidad el servidor gitlab.

Cambio /opt/bitnami/apps/gitlab/htdocs/config/gitlab.yml para tener

ldap: enabled: true host: ''192.168.1.14''

, pero después de reboot o reiniciar GitLab, vuelve a 192.168.133.100. ¡Eso es un error!

¿Cómo hacer que BitNami GitLab Stack no haga eso?

¿Cómo reiniciar GitLab para que cambie gitlab.yml para que tenga efecto? ->

sudo /opt/bitnami/ctlscript.sh restart gitlab_sidekiq

https://github.com/gitlabhq/gitlabhq/issues/3934

ACTUALIZAR Renombrar /opt/bitnami/apps/gitlab/updateip no resuelve el problema.

ACTUALIZACIÓN 2: El problema todavía existe en 5.4.0-0

sudo chmod -x /etc/init.d/bnconfig-gitlab ayuda.


No cerrado aún

/ opt / bitnami / apps / gitlab / updateip --machine_hostname your_dns.name

Esto no solucionó el problema todavía, creo que hay un error. Estoy usando la versión Bitnami - Gitlab 5.2.1

En /etc/init.d/bnconfig-gitlab Llama a / opt / bitnami / apps / gitlab / bnconfig (en lugar de actualizar, actualizar solo un enlace a bnconfig), por lo que cuando elimina / cambia el nombre de updateip, no hay ningún efecto, todavía restablece su nombre de host.

Solución

  1. Establezca su nombre de host en el nombre correcto: / opt / bitnami / apps / gitlab / updateip --machine_hostname your_dns.name
  2. Eliminar updateip y bnconfig
  3. También comente la línea: exec / opt / bitnami / apps / gitlab / bnconfig (en el archivo /etc/init.d/bnconfig-gitlab)

Esto puede deberse a la secuencia de comandos "updatetip" que se inicia cada vez que se reinicia y cambia los archivos de configuración para reflejar la dirección IP modificada (que puede ser útil para el alojamiento en la nube).

Ad la documentación dice que debe eliminar o renombrar / opt / bitnami / apps / gitlab / updateip si está usando una dirección IP estática.

Antes de hacer esto, es posible que desee ejecutar

/opt/bitnami/apps/gitlab/updateip --machine_name your_dns.name


¿Has probado lo siguiente para desactivar el servicio bncofnig-gitlab en lugar de cambiar el nombre de los archivos?

sudo chmod -x /etc/init.d/bnconfig-gitlab

o

sudo update-rc.d -f bnconfig-gitlab disable


Incluso en la versión 6.2.0.0 no existe un procedimiento adecuado para usar una IP estática o FQDN. Estoy usando mis propios servidores de enlace, con registros inversos completos para mis servidores bitnami gitlab IP local. (desde im vpn in, y dentro de vpc) Esta solución debería funcionar en cualquier entorno. Esta solución no es tan avanzada como lo indicaría todo el texto. Solo quería asegurarme de haber informado suficiente sobre el problema.

Aparentemente, la secuencia de comandos init.d "/etc/init.d/bitnami" carga primero las funciones bash necesarias / usadas de "/ opt / bitnami / scripts / init / functions". A continuación, el script init.d (bitnami) ejecuta los scripts "/ opt / bitnami / var / init / pre-start /" ubicados en esta carpeta (ejecutados por orden de clasificación de nombre de archivo, es decir, 010, 020, 030, etc.). Luego ejecuta "/opt/bitnami/ctlscript.sh start". Esto pone en marcha la mayoría, si no todas, las cosas necesarias para que bitnami gitlab funcione.

Si el script "/opt/bitnami/ctlscript.sh" devuelve 0 ($? == 0), ¡lo que significa éxito! El script init.d (bitnami) ejecuta los scripts "/ opt / bitnami / var / init / post-start /" ubicados en este directorio una vez más por orden de clasificación. Dentro del directorio post-start contiene la secuencia de comandos "020_update_ip".

Larga historia corta (evitando toda la información de la función) bitnami hace muchas cosas redundantes (funciones) para decidir qué usar como la "dirección de host". Utiliza un total de cuatro funciones, con valores de retorno variables. También consulta los servidores de bitnami para averiguar su IP pública. Mi servidor está dentro de una VPC que tiene una IP elástica y un FQDN para su IP local. Su sistema casi siempre decide usar el nombre DNS PTR público inverso para mi IP Elástica. Que siempre se usaría, y seguro que les encanta usar sus DNS públicos de AMZ.

Resolví toda la loca lógica de detección no funcional (que hace locas suposiciones sobre su entorno y agregué la siguiente lógica a "/ opt / bitnami / var / init / post-start / 020_update_ip". Agregué una condición adicional de elif para, a averigüe si ha declarado $ GITLABHOST en su entorno. Si es así, utilice el valor como PUBLIC_IP. Por lo tanto, cuando el script ejecute updateip | bnconfig, usará el valor proporcionado de $ GITLABHOST.

"/ opt / bitnami / var / init / post-start / 020_update_ip">

if [ "x$1" != "x" ]; then PUBLIC_IP=$1 elif [ -n $GITLABHOST ]; then PUBLIC_IP=$GITLABHOST else PUBLIC_IP=`get_server_domain` fi

Luego agregué lo siguiente en "/opt/bitnami/scripts/setenv.sh"

##### SET STATIC HOST ADDRESS IP|FQDN ##### GITLABHOST="server.domain.com" export GITLABHOST

Agregué esto aquí para que esté completamente integrado en Bitnami Gitlab 6.2, para no preocuparme por su existencia. Dado que está cargado por "/opt/bitnami/ctlscript.sh" (. "$ INSTALLDIR / scripts / setenv.sh") antes de las secuencias de comandos posteriores al inicio. Otros pueden querer ponerlo en otro lado. Asegúrese de proporcionar una dirección IP / host válida :)