安全网络背后的客户无法使用“kibana plugin --install”来安装 Kibana 插件。 他们需要能够配置用于调用插件存储库的 http 或 https 代理。
@seang-es 我们能否实现使用HTTP Connect 隧道的解决方案?
在与@seang-es 讨论之后,安全网络背后的用户似乎拥有自己的 http 代理服务器,并且只是希望能够通过这些代理来引导 Kibana。
用户想修改 kibana.yml 中的一个选项,将host
和port
设置为代理服务器。
我也需要验证代理设置。
我期待着您的实施。
是的,你不想在这里连接,只是简单的旧 http 代理
@seang-es 这如何与 Elasticsearch 中的bin/plugin
等其他插件安装程序一起使用? 我没有看到他们的安装程序设置经过身份验证的代理的 CLI 选项? 同样在考虑了这一点之后,这不应该在操作系统级别进行处理吗?
在与@spalger和@rashidkpc讨论后,我们不想在这里使用CONNECT 的原因是因为许多公司不支持它。 所以这里是建议的选项:
installedPlugins
模块以使用节点request
模块而不是wreck.js
因为 wreck 不支持代理。wreck.js
的 http 代理插件。在这 3 个中,如果这是一个非常需要的功能,我最喜欢实现选项 2。
经过进一步讨论,我们决定不为 Kibana 中的插件安装添加 http/https 代理。 主要原因是 Elasticsearch 也不支持它,并且有一种解决方法可以使用文件安装程序进行离线安装。
例如:
bin/kibana plugin --install --url file:///home/username/plugin.tar.gz
_注意_:您必须使用绝对路径
因此,我将删除P1
标签并关闭此问题。
我提交了 issue #5998 来更新 Kibana 插件文档以包含从本地目录安装的文件。
上面给出的不直接支持这一点的原因之一是无效的,因为 elasticsearch 的插件命令 _does_ 支持指定代理,尽管通过相应的 java 系统属性,如记录在:
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下载文件然后手动安装对您有用吗?
这种所谓的解决方法似乎不起作用
$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>.
另外,不允许代理和/或离线插件安装基本上会导致 90% 的组织无法使用此版本...
离线安装的正确方法是:
bin/kibana plugin -i marvel -u file:///tmp/marvel-latest.tar.gz
@stormpython PI
标签应该被删除,但它不应该保持打开状态吗?
这会破坏在 HTTP 代理后面正常工作的 Dockerfile。
@stormpython - 荒谬的解释有几个原因:
Guyz,无论讨论与否,决定与否,你都应该重新考虑一下。 只有一个决定是正确的(聪明的),而你错过了它。
安装项目的一致性很重要,因此我们将研究 Elasticsearch 中的代理支持。
使用puppet
并在公司防火墙后面,我可以为elasticsearch
和logstash
(但不是kibana
)安装插件
(1)在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],
;
}
或通过
(2) 将代理参数传递给java。
"${bin_plugin} -DproxyHost=1.2.3.4 -DproxyPort=3128 install -b --verbose $name"
这是一个尝试 #7967 为插件安装添加代理支持
这已在 #12753 中修复,并将在 6.1 中发布。 插件命令将理解http_proxy
、 https_proxy
和no_proxy
环境变量。
好消息@timroes !
非常感谢!
最有用的评论
上面给出的不直接支持这一点的原因之一是无效的,因为 elasticsearch 的插件命令 _does_ 支持指定代理,尽管通过相应的 java 系统属性,如记录在:
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