正在加载

Fleet UI 开发流程

请参阅 Kibana 文档,了解如何设置开发环境运行 Elasticsearch以及启动 Kibana

一个常见的开发工作流程是

  1. 克隆 Kibana 存储库

    git clone https://github.com/[YOUR_USERNAME]/kibana.git kibana
    cd kibana
    
  2. 安装依赖项

    nvm use
    npm install -g yarn
    
  3. 引导 Kibana

    yarn kbn bootstrap
    
  4. 在一个 shell 中启动 Elasticsearch

    yarn es snapshot -E xpack.security.authc.api_key.enabled=true
    
  5. 在另一个 shell 中启动 Kibana

    yarn start --xpack.fleet.enabled=true --no-base-path
    
  6. https://elastic.ac.cn/downloads/past-releases/#elastic-agent 下载 fleet-server 包

  7. 解压 fleet server 压缩包并 cd 到该目录

  8. 安装 fleet-server(另请参阅替代解决方案)

    sudo ./elastic-agent install  -f \
    --fleet-server-es=http://elastic:changeme@localhost:9200 \
    --fleet-server-policy=<default policy id>
    

    可以在安装任何 Fleet Server 之前,通过 Kibana 中的 Fleet UI 指示检索 default policy id。 Fleet Server 将在 +https://users_machine_ip:8220+ 中启动

  9. 更新 Fleet UI 右上角的 Fleet 设置,以设置正确的 Fleet Server 主机(上一步中的 IP)。

  10. 之后,用户可以注册任意数量的代理

  11. Kibana fleet 插件中的任何代码更新都应自动被获取,并导致服务器重新启动,或在下次页面刷新时提供给浏览器。

您可以选择在容器中本地运行 Fleet Server,而不是下载 fleet server 包并将其作为本地进程运行。

在本地计算机上的容器中运行 Fleet Server 可能很有用,这样可以释放您的实际“裸机”机器以用于测试 Elastic Agent。 否则,您只能在本地计算机上为 Fleet Server 专用一个 Elastic Agent 实例,这会使测试集成和策略变得困难。

以下内容改编自 Fleet Server README

  1. 将以下配置添加到您的 config/kibana.yml

    server.host: 0.0.0.0
    
  2. 将以下选项附加到用于启动 Elasticsearch 的命令中

    -E http.host=0.0.0.0
    

    此命令应如下所示

    yarn es snapshot --license trial -E xpack.security.authc.api_key.enabled=true -E path.data=/tmp/es-data -E http.host=0.0.0.0
    
  3. 运行 Fleet Server Docker 容器。 确保在本地 Kibana 实例使用 BASE-PATH 时包含该值。 YOUR-IP 应该对应于 Docker 网络用于表示主机的 IP 地址。 对于 Windows 和 Mac 机器,这应该是 192.168.65.2。 如果您不确定此 IP 应该是什么,请运行以下命令查找它

    docker run -it --rm alpine nslookup host.docker.internal
    

    要运行 Fleet Server Docker 容器

    docker run -e KIBANA_HOST=http://{YOUR-IP}:5601/{BASE-PATH} -e KIBANA_USERNAME=elastic -e KIBANA_PASSWORD=changeme -e ELASTICSEARCH_HOST=http://{YOUR-IP}:9200 -e ELASTICSEARCH_USERNAME=elastic -e ELASTICSEARCH_PASSWORD=changeme -e KIBANA_FLEET_SETUP=1 -e FLEET_SERVER_ENABLE=1 -e FLEET_SERVER_INSECURE_HTTP=1 -p 8220:8220 docker.elastic.co/elastic-agent/elastic-agent:{VERSION}
    

    确保提供 -p 8220:8220 端口映射,以便将 Fleet Server 容器的端口 8220 映射到本地计算机的端口 8220,以便 Fleet 可以与 Fleet Server 通信。

    对于最新版本,请使用 8.0.0-SNAPSHOT。 否则,您可以在 https://www.docker.elastic.co/r/beats/elastic-agent 探索可用版本。

    Fleet Server 容器运行后,在通过 UI 配置 Fleet 时,您应该能够将其视为在 +http://localhost:8220+ 上运行的本地进程。 然后,您可以直接在本地计算机上运行 elastic-agent 以进行测试。

© . All rights reserved.