1.
|
Run the commands to get the load-balancer
IP address and port number for Kibana Web Interface.
|
# LoadBalancer ip address of the kibana service is retrieved with below command
$ export KIBANA_LOADBALANCER_IP=$(kubectl get services occne-kibana --namespace occne-infra -o jsonpath="{.status.loadBalancer.ingress[*].ip}")
# LoadBalancer port number of the kibana service is retrieved with below command
$ export KIBANA_LOADBALANCER_PORT=$(kubectl get services occne-kibana --namespace occne-infra -o jsonpath="{.spec.ports[*].port}")
# Complete url for accessing kibana in external browser
$ echo http://$KIBANA_LOADBALANCER_IP:$KIBANA_LOADBALANCER_PORT
http://10.75.182.51:80
Launch the Browser and navigate to
http://$KIBANA_LOADBALANCER_IP:$KIBANA_LOADBALANCER_PORT(e.g.:
http://10.75.182.51:80 in the example above) received in the output of the
above commands.
|
2.
|
Using Kibana verify Log and Tracer data is
stored in Elasticsearch
|
- Navigate to "Management" Tab in Kibana.
- Click on "Index
Patterns". You should be able to see the two patterns as below which confirms
Log and Tracer data been stored in Elastic-Search successfully.
- jaeger-*
- logstash-*
-
Type logstash* in the index pattern field and wait for
few seconds.
-
Verify the "Success" message and index pattern
"logstash-YYYY.MM.DD" appeared as highlighted in the bottom red box . Click on
" Next step "
- Select "I don't
want to use the Time Filter" and click on "Create index pattern"
- Ensure the Web
page having the indices appear in the main viewer frame
- Click on "Discover" Tab and you should
be able to view raw Log records.
- Repeat steps 3-6
using "jaeger*" instead of "logstash* to ensure the data is stored in elastic
search.
|
3.
|
Verify Elasticsearch cluster health
|
- Navigate to "Dev Tools" in Kibana
- Enter the command
"
GET
_cluster/health " and press on the green arrow mark. You should see the
status as "green"on the right side of the screen.
|
4.
|
Verify Prometheus Alert manager is
accessible
|
- Run below
commands to get the load-balancer IP address and port number for Prometheus
Alert Manager Web Interface.
# LoadBalancer ip address of the alertmanager service is retrieved with below command
$ export ALERTMANAGER_LOADBALANCER_IP=$(kubectl get services occne-prometheus-alertmanager --namespace occne-infra -o jsonpath="{.status.loadBalancer.ingress[*].ip}")
# LoadBalancer port number of the alertmanager service is retrieved with below command
$ export ALERTMANAGER_LOADBALANCER_PORT=$(kubectl get services occne-prometheus-alertmanager --namespace occne-infra -o jsonpath="{.spec.ports[*].port}")
# Complete url for accessing alertmanager in external browser
$ echo http://$ALERTMANAGER_LOADBALANCER_IP:$ALERTMANAGER_LOADBALANCER_PORT
http://10.75.182.53:80
- Launch the
Browser and navigate to
http://$ALERTMANAGER_LOADBALANCER_IP:$ALERTMANAGER_LOADBALANCER_PORT (e.g.:
http://10.75.182.53:80 in the example above) received in the output of the
above commands. Ensure the AlertManager GUI is accessible.
|
5.
|
Verify metrics are scraped and stored in
prometheus server
|
- Run below
commands to get the load-balancer IP address and port number for Prometheus
Server Web Interface.
# LoadBalancer ip address of the prometheus service is retrieved with below command
$ export PROMETHEUS_LOADBALANCER_PORT=$(kubectl get services occne-prometheus-server --namespace occne-infra -o jsonpath="{.spec.ports[*].port}")
# LoadBalancer port number of the prometheus service is retrieved with below command
$ export PROMETHEUS_LOADBALANCER_IP=$(kubectl get services occne-prometheus-server --namespace occne-infra -o jsonpath="{.status.loadBalancer.ingress[*].ip}")
# Complete url for accessing prometheus in external browser
$ echo http://$PROMETHEUS_LOADBALANCER_IP:$PROMETHEUS_LOADBALANCER_PORT
http://10.75.182.54:80
- Launch the
Browser and navigate to
http://$PROMETHEUS_LOADBALANCER_IP:$PROMETHEUS_LOADBALANCER_PORT (e.g.:
http://10.75.182.54:80 in the example above) received in the output of the
above commands. Ensure the Prometheus server GUI is accessible.
- Select "UP" option from "insert metric at cursor"
drop down and click on "Execute" button.
- Here the entries
present under the Element section are scrape endpoints and under the value
section its corresponding status( 1 for up 0 for down). Ensure all the scrape
endpoints have value as 1 (means up and running).
|
6.
|
Verify Alerts are configured
|
- Navigate to alerts
tab of Prometheus server GUI or navigate using URL
http://$PROMETHEUS_LOADBALANCER_IP:$PROMETHEUS_LOADBALANCER_PORT/alertsFor<PROMETHEUS_LOADBALANCER_IP>and<PROMETHEUS_LOADBALANCER_PORT>
- If below alerts
are seen in " Alerts" tab of prometheus GUI, then Alerts are configured
properly.
|
7.
|
Verify grafana is accessible and change the
default password for admin user
|
- Run below
commands to get the load-balancer IP address and port number for Grafana Web
Interface.
# LoadBalancer ip address of the grafana service is retrieved with below command
$ export GRAFANA_LOADBALANCER_IP=$(kubectl get services occne-grafana --namespace occne-infra -o jsonpath="{.status.loadBalancer.ingress[*].ip}")
# LoadBalancer port number of the grafana service is retrieved with below command
$ export GRAFANA_LOADBALANCER_PORT=$(kubectl get services occne-grafana --namespace occne-infra -o jsonpath="{.spec.ports[*].port}")
# Complete url for accessing grafana in external browser
$ echo http://$GRAFANA_LOADBALANCER_IP:$GRAFANA_LOADBALANCER_PORT
http://10.75.182.55:80
- Launch the
Browser and navigate to
http://$GRAFANA_LOADBALANCER_IP:$GRAFANA_LOADBALANCER_PORT (e.g.:
http://10.75.182.55:80 in the example above) received in the output of the
above commands. Ensure the Prometheus server GUI is accessible. The default
username and password is admin/admin for the 1st time access.
-
At first connection to the Grafana dashboard, a 'Change
Password' screen will appear. Change the password to the customer provided
credentials.
Note:
Grafana data is not persisted, so if Grafana services restarted for some reason
change password screen will appear again.
- Grafana
dashboards are accessed after the changing the default password in the above
step.
- Click on "New dashboard" as marked red
below.
- Click on "Add Query"
- From "Queries to" drop down select
"Prometheus" as data
source. Presence of " Prometheus " entry in the " Queries to " drop down
ensures Grafana is connected to Prometheus time series database.
- In the Query
Section marked in Red below put " sum
by(__name__)({kubernetes_namespace="occne-infra"}) " and then click any where
outside of the textbox and wait for few seconds. Ensure the dashboard appearing
in the top section of the page. This
link shows all the metrics and number of
entries in each metrics over time span originated from kubernetes namespace
'occne-infra. In the add query section we can give any valid promQl
query.Example for using the metrics list link above to write a promQL query:
sum($metricnamefromlist)sum by(kubernetes_pod_name)
($metricnamefromlist{kubernetes_namespace="occne-infra"})For more details about
promQl please follow the
link.
|