kibana/x-pack/plugins/monitoring/README.md
Jonathan Budzenski b5b64f4706
Support for multiple Elasticsearch nodes and sniffing (#21928)
* Node sniffing

* update monitoring

* cleaning

* remove tests

* rewrite tests using the proxy

* fix monitoring mocha tests

* fix payload

* return full error

* default interval false

* add sniff settings to monitoring

* add docs for sniff settings

* re-add index search integration test

* catch parse error

* capital

* fix merge

* hapi upgrade

* return

* pass by prefix

* rm empty test fille

* split error handling

* fix merge

* update recent elasticsearch.url references

* prettier vs eslint

* transport.request, include query params

* mega comment

* revert elasticsearchUrl

* safe hosts

* more docs es.url references

* remove unused ml/esServerUrl

* log if both set
2018-12-18 13:22:43 -06:00

111 lines
3.3 KiB
Markdown

## Using Monitoring
The easiest way to get to know the new Monitoring is probably by [reading the
docs](https://github.com/elastic/x-plugins/blob/master/docs/public/marvel/index.asciidoc).
Install the distribution the way a customer would is pending the first release
of Unified X-Pack plugins.
## Developing
You will need to get Elasticsearch and X-Pack plugins for ES that match the
version of the UI. The best way to do this is to run `gradle run` from a clone
of the x-plugins repository.
To set up Monitoring and automatic file syncing code changes into Kibana's plugin
directory, clone the kibana and x-plugins repos in the same directory and from
`x-plugins/kibana/monitoring`, run `yarn start`.
Once the syncing process has run at least once, start the Kibana server in
development mode. It will handle restarting the server and re-optimizing the
bundles as-needed. Go to https://localhost:5601 and click Monitoring from the App
Drawer.
## Running tests
- Run the command:
```
yarn test
```
- Debug tests
Add a `debugger` line to create a breakpoint, and then:
```
gulp sync && mocha debug --compilers js:babel-register /pathto/kibana/plugins/monitoring/pathto/__tests__/testfile.js
```
## Deploying
Monitoring is part of XPack, and only a single XPack artifact needs to be
deployed. Previously, the instructions to deploy were:
> The `release task` creates archives and uploads them to
download.elasticsearch.org/elasticsearch/monitoring/VERSION. You will need S3
credentials in `$HOME/.aws-config.json`. Format as so:
> ```
> {
> "key":"MY_KEY_HERE",
> "secret":"your/long/secret/string"
> }
> ```
> To upload the current archive as the "latest" release, use:
> ```
> gulp release
> ```
## Multicluster Setup for Development
To run the UI with multiple clusters, the easiest way is to run 2 nodes out of
the same Elasticsearch directory, but use different start up commands for each one. One
node will be assigned to the "monitoring" cluster and the other will be for the "production"
cluster.
1. Add the Security users:
```
% ./bin/x-pack/users useradd -r remote_monitoring_agent -p notsecure remote
% ./bin/x-pack/users useradd -r monitoring_user -p notsecure monitoring_user
```
1. Start up the Monitoring cluster:
```
% ./bin/elasticsearch \
-Ehttp.port=9210 \
-Ecluster.name=monitoring \
-Epath.data=monitoring-data \
-Enode.name=monitor1node1
```
1. Start up the Production cluster:
```
% ./bin/elasticsearch \
-Expack.monitoring.exporters.id2.type=http \
-Expack.monitoring.exporters.id2.host=http://127.0.0.1:9210 \
-Expack.monitoring.exporters.id2.auth.username=remote \
-Expack.monitoring.exporters.id2.auth.password=notsecure \
-Ecluster.name=production \
-Enode.name=prod1node1 \
-Epath.data=production-data
```
1. Set the Kibana config:
```
% cat config/kibana.dev.yml
xpack.monitoring.elasticsearch:
url: "http://localhost:9210"
username: "kibana"
password: "changeme"
```
1. Start another Kibana instance:
```
% yarn start
```
1. Start a Kibana instance connected to the Monitoring cluster (for running queries in Sense on Monitoring data):
```
% ./bin/kibana --config config/kibana.dev.yml --elasticsearch.hosts http://localhost:9210 --server.name monitoring-kibana --server.port 5611
```