kibana/x-pack/plugins/ingest_manager
Jen Huang 82d7e7db69
[Ingest Manager] Convert select agent config step to use combo box (#73172)
* Initial pass at using combo box instead of selectable for agent configs

* Hide agent count messaging if fleet isn't set up

* Fix types

* Fix i18n

* Fix i18n again

* Add comment explaining styling

Co-authored-by: Elastic Machine <elasticmachine@users.noreply.github.com>
2020-07-27 19:21:41 -07:00
..
common [Ingest Manager] Support DEGRADED state in fleet agent event (#73104) 2020-07-24 08:40:41 -04:00
dev_docs [Ingest Manager] Rename data sources to package configs (#70259) 2020-07-01 16:14:21 -07:00
public [Ingest Manager] Convert select agent config step to use combo box (#73172) 2020-07-27 19:21:41 -07:00
scripts
server Exclude version from package config attributes that are copied, add safeguard to package config bulk create (#73128) 2020-07-27 19:21:14 -07:00
CHANGELOG.md
kibana.json [kbn/optimizer] implement "requiredBundles" property of KP plugins (#70911) 2020-07-09 18:43:17 -07:00
package.json
README.md [Ingest Manager] Use docker registry for fleet api integration tests (#72621) 2020-07-22 13:29:44 -04:00
yarn.lock

Ingest Manager

Plugin

  • The plugin is enabled by default. See the TypeScript type for the the available plugin configuration options
  • Adding xpack.ingestManager.enabled=false will disable the plugin including the EPM and Fleet features. It will also remove the PACKAGE_CONFIG_API_ROUTES and AGENT_CONFIG_API_ROUTES values in common/constants/routes.ts
  • Adding --xpack.ingestManager.fleet.enabled=false will disable the Fleet API & UI
  • Both EPM and Fleet require ingestManager be enabled. They are not standalone features.
  • For Gold+ license, a custom package registry URL can be used by setting xpack.ingestManager.registryUrl=http://localhost:8080

Fleet Requirements

Fleet needs to have Elasticsearch API keys enabled, and also to have TLS enabled on kibana, (if you want to run Kibana without TLS you can provide the following config flag --xpack.ingestManager.fleet.tlsCheckDisabled=false)

Also you need to configure the hosts your agent is going to use to comunication with Elasticsearch and Kibana (Not needed if you use Elastic cloud). You can use the following flags:

--xpack.ingestManager.fleet.elasticsearch.host=http://localhost:9200
--xpack.ingestManager.fleet.kibana.host=http://localhost:5601

Development

Getting started

See the Kibana docs for how to set up your dev environment, run Elasticsearch, and start Kibana

One common development workflow is:

  • Bootstrap Kibana
    yarn kbn bootstrap
    
  • Start Elasticsearch in one shell
    yarn es snapshot -E xpack.security.authc.api_key.enabled=true
    
  • Start Kibana in another shell
    yarn start --xpack.ingestManager.enabled=true --no-base-path
    

This plugin follows the common, server, public structure from the Architecture Style Guide . We also follow the pattern of developing feature branches under your personal fork of Kibana.

Tests

API integration tests

You need to have docker to run ingest manager api integration tests

  1. In one terminal, run the tests from the Kibana root directory with

    INGEST_MANAGEMENT_PACKAGE_REGISTRY_PORT=12345 yarn test:ftr:server --config x-pack/test/ingest_manager_api_integration/config.ts
    
  2. in a second terminal, run the tests from the Kibana root directory with

    INGEST_MANAGEMENT_PACKAGE_REGISTRY_PORT=12345 yarn test:ftr:runner --config x-pack/test/ingest_manager_api_integration/config.ts
    

    Optionally you can filter which tests you want to run using --grep

    INGEST_MANAGEMENT_PACKAGE_REGISTRY_PORT=12345 yarn test:ftr:runner --config x-pack/test/ingest_manager_api_integration/config.ts --grep='fleet'