Los clientes detrás de redes seguras no pueden usar 'kibana plugin --install' para instalar los complementos de Kibana. Necesitan la capacidad de configurar un proxy http o https para usar en las llamadas a los repositorios de complementos.
@seang-es, ¿podríamos implementar una solución que use túneles HTTP Connect ?
Después de discutirlo con @seang-es, parecería que los usuarios detrás de redes seguras tienen sus propios servidores proxy http y simplemente les gustaría poder dirigir a Kibana a través de estos servidores proxy.
A los usuarios les gustaría modificar una opción en kibana.yml para establecer host
y port
en el servidor proxy.
También necesito autenticar la configuración del proxy.
Estoy deseando que se lleve a cabo su implementación.
Sí, no quieres CONECTAR aquí, solo proxies http antiguos.
@seang-es ¿Cómo funciona esto con otros instaladores de complementos como bin/plugin
en Elasticsearch? No veo las opciones de CLI para que sus instaladores configuren un proxy autenticado. Además, después de pensar en esto, ¿no debería solucionarse esto a nivel del sistema operativo?
Después de una discusión con @spalger y @rashidkpc , la razón por la que no queremos usar CONNECT aquí es porque muchas empresas no lo admiten. Así que aquí están las opciones propuestas:
installedPlugins
para usar el módulo del nodo request
en lugar de wreck.js
ya que Wreck no es compatible con el proxy.wreck.js
.De los 3, si esta es una característica muy necesaria, me siento más cómodo implementando la opción 2.
Después de más debates, hemos decidido no agregar el proxy http/https para las instalaciones de complementos en Kibana. La razón principal de esto es que Elasticsearch tampoco lo admite, y existe una solución alternativa para realizar instalaciones sin conexión mediante el instalador de archivos.
Por ejemplo:
bin/kibana plugin --install --url file:///home/username/plugin.tar.gz
_Nota_: Debe usar rutas absolutas
Entonces, estoy eliminando la etiqueta P1
y cerrando este problema.
Envié el problema #5998 para actualizar la documentación del complemento de Kibana para incluir instalaciones de archivos desde un directorio local.
Una de las razones dadas anteriormente para no admitir esto directamente no es válida, porque el comando del complemento de elasticsearch _no_ admite la especificación de proxies, aunque a través de las propiedades del sistema Java correspondientes, como se documenta en:
https://www.elastic.co/guide/en/elasticsearch/reference/1.6/modules-plugins.html
bin/plugin -DproxyHost=host_name -DproxyPort=port_number --install mobz/elasticsearch-head
@avallen ¿Le funciona descargar el archivo y luego instalarlo manualmente?
Esta supuesta solución no parece funcionar
$bin/kibana plugin --install --url file:///opt/kibana-4.4.1-linux-x64/marvel-latest.tar.gz
Invalid install option. Please use the format <org>/<plugin>/<version>.
Además, no permitir la instalación de proxy y/o complementos fuera de línea mata básicamente al 90% de las organizaciones que usan esta versión...
La forma correcta de instalación sin conexión es:
bin/kibana plugin -i marvel -u file:///tmp/marvel-latest.tar.gz
@stormpython La etiqueta PI
debería eliminarse, pero ¿no debería mantenerse abierta?
Esto rompe los Dockerfiles que, de lo contrario, funcionan correctamente detrás de un proxy HTTP.
@stormpython - explicación ridícula por varias razones:
Guyz, discutido o no, decidido o no, deberías reconsiderarlo de nuevo. Solo una decisión es la correcta (la inteligente), y te la has perdido.
La coherencia entre los proyectos para la instalación es importante, por lo que analizaremos la compatibilidad con proxy en Elasticsearch.
usando puppet
y detrás de un firewall corporativo, puedo instalar complementos para elasticsearch
y logstash
(pero no kibana
) por
(1) establecer una variable de entorno en la instancia exec
exec {
"$name":
command => $command,
creates => $creates,
environment => [ "http_proxy=http://1.2.3.4:3128" ],
logoutput => $logoutput,
onlyif => $onlyif,
path => ["/bin", "/sbin", "/usr/bin", "/usr/sbin"],
returns => [0,74],
;
}
o por
(2) pasar parámetros de proxy a java.
"${bin_plugin} -DproxyHost=1.2.3.4 -DproxyPort=3128 install -b --verbose $name"
Aquí hay una prueba # 7967 para agregar soporte de proxy para la instalación del complemento
Esto se solucionó con el n.º 12753 y se lanzará con 6.1. El comando del complemento comprenderá las variables de entorno http_proxy
, https_proxy
y no_proxy
.
¡Buenas noticias @timroes !
¡Muchas gracias por eso!
Comentario más útil
Una de las razones dadas anteriormente para no admitir esto directamente no es válida, porque el comando del complemento de elasticsearch _no_ admite la especificación de proxies, aunque a través de las propiedades del sistema Java correspondientes, como se documenta en:
https://www.elastic.co/guide/en/elasticsearch/reference/1.6/modules-plugins.html
bin/plugin -DproxyHost=host_name -DproxyPort=port_number --install mobz/elasticsearch-head