Deploy an ELK Stack
For reference on the ELK stack, see the docs.
Prerequisites
An existing Grey Matter deployment running on Kubernetes (tutorial)
kubectlorocsetup with access to the clustergreymattercli setup with access to the deployment
Steps
1. Clone and configure
If you have not already, clone the Grey Matter helm-charts repository and cd into it:
git clone --single-branch --branch release-2.3 https://github.com/greymatter-io/helm-charts.git && cd ./helm-chartsIf you installed Grey Matter using the installation guide, and your core Grey Matter services are running in the default namespace, move on to install.
If your core Grey Matter services are running in a Kubernetes namespace other than
default, edit the filecustom-values-files/kibana-proxy-values.yamlin your cloned repo, and change thesidecar.envvars.xds_hostvalue tocontrol.<your-gm-namespace>.svc.
2. Install
Run the following from the root directory of the helm-charts to install the ELK stack into a namespace observables:
make observables EKS=trueIf you want to install the ELK stack into a different namespace, or your Grey Matter deployment is not running in EKS, modify the command to
make observables EKS=<true or false> OBSERVABLES_NAMESPACE=<desired-namespace>
The ELK stack may take up to 15 minutes to stabilize. You can check the status with:
While it starts up, move on to step 3.
3. Upgrade Grey Matter for the observables namespace
To allow Grey Matter Fabric to discover the observables namespace, open the global.yaml file you originally used when installing Grey Matter. Edit the global.control.additional_namespaces value and add observables:
Then, upgrade your Grey Matter fabric and sense installations for the new namespace:
4. Configure the Kibana proxy in the mesh
Now, to configure the Kibana proxy with the mesh, run the following to generate the mesh configurations:
Answer the prompts as follows:
serviceName =
kibana-observables-proxyserviceHost =
kibana-kibana.observables.svc.cluster.local- if you changed the namespace, replace.observables.with.<your-namespace>.servicePort =
5601sidecarIngressPort =
10808sidecarEgressPort =
10909trustDomain =
quickstart.greymatter.iozone =
zone-default-zonedisplayName =
Kibana Observables Proxyversion =
7.1.0owner =
kibanacapability =
observablesdocumentation =
/services/kibana-observables-proxy/7.1.0minInstances =
1maxInstances =
1
The configurations will be saved into a directory kibana-observables-proxy, make sure that your cli is configured and control-api is accessible on port 5555. When ready, run the following to apply them:
You should then be able to see the card Kibana Observables Proxy on your Grey Matter application, and access it via the documentation link.
5. Verify
Once all of the pods are running in the observables namespace, and you can access the Kibana proxy at the documentation link from the Grey Matter application, you have successfully installed the ELK stack! Move on to configure audits.
Questions
Create an account at Grey Matter Support to reach our team.
Last updated
Was this helpful?