OUTDATED - Please use this link for the new script and instructions
https://www.gooksu.com/2022/09/new-elastic-kubernetes-script-deploy-elastick8s-sh/
Updated! Aug 16, 2022 - https://www.gooksu.com/2022/08/deploy-eck-update-1/
I stand up and tear down elasticsearch deployments on kubernetes pretty often for various testing. I found that it was a bit cumbersome to do so by hand since my tests are usually short and specific and wanted some way to be able to stand up various versions of the ECK operator and the elasticsearch stack using various configurations for testing.
Using my gke.sh script, I built the deploy-eck.sh
. It is similar in function to my deploy-elastic.sh script but designed for running elastic stack on kubernetes with the ECK operator. You can get the script from here.
When creating the script I limited the version of the operator and the stack mainly to simply the script, so right now ECK is limited to version 1.4.0+
and the elastic stack is limited to version 7.10.0+
. Also if you are testing sidecar stack monitoring it is further limited to ECK 1.7.0
& elastic stack 7.14.0
since it was introduced at ECK 1.7.0
. Even with the limiting of versions theres plenty of room to test various builds and versions. This is for testing use only - please do not use for production
FEATURES
- endpoints are internet accessible
- ca.crt is saved in
$HOME/eckstack/ca.crt
so you can use it to register other beats/agents onto it or even logstash - trial license is applied so you can test premium features
- everything is installed and ready to go for testing
- unlike deploy-elastic.sh various commands are not additive so you will need to cleanup before starting in different mode
COMMANDS
- build|start|stack - creates a basic stack. 3 nodes of elasticsearch and 1 node kibana. The cluster will be named
eck-lab
- beats|beat - creates a basic stack and adds on filebeat, metricbeat, packetbeat, heartbeat to monitor the k8s environment.
- monitor1 - creates 2 deployments "production" named
eck-lab
and a monitoring deployment namedeck-lab-monitor
it will also configure metricbeat & filebeat to monitor the "production" cluster and send the data toeck-lab-monitor
. Both metricbeat & filebeat runs in its own POD and the autodiscovery is done via labels - monitor2 - new way of stack monitoring was introduced in ECK
1.7.0
where metricbeat & filebeat runs as a sidecar contianer within elasticsearch & kibana PODS.eck-lab
will be considered "production" andeck-lab-monitor
will be the monitoring cluster. - fleet - EVERYONE's FAVORITE! deploys a basic stack, then adds a fleet-server and elastic-agents as a DaemonSet onto each kubernetes nodes.
- cleanup - cleans up the environment and deletes all the resources started with the script.
The script creates a directory in your $HOME/eckstack
and stores all the yaml files. When you run the cleanup
it will go through and delete the resources and delete the directory. The script also creates $HOME/eckstack/notes
which contains all the endpoint information as well as elastic user's password.
WARNING Even after the script completes various parts of the stack is still being configured and settling. You might see beats pods restarting a few times and that is normal. You might want to give yourself a few minutes before logging in.
❯ ./deploy-eck.sh
[DEBUG] Script is limited to stack version 7.10.0 and higher
This script is limited to ECK Operator 1.4.0+ & Stack 7.10.0+.
- various commands have additional limitations that will be listed below.
USAGE: ./deploy-eck.sh command STACKversion ECKversion
COMMANDS:
stack|start|build - will stand up the ECK Operator, elasticsearch, & kibana with CLUSTER name : eck-lab
beats - will stand up the basic stack + filebeat, metricbeat, packetbeat, & heartbeat
monitor1 - will stand up the basic stack named eck-lab and a monitoring stack named eck-lab-monitor, filebeat, & metricbeat as PODS to report stack monitoring to eck-lab-monitor
monitor2 - will be the same as monitor1 however both filebeat & metricbeat will be a sidecar container inside of elasticsearch & kibana Pods. Limited to ECK 1.7.0+ & STACK 7.14.0+
fleet - will stand up the basic stack + FLEET Server & elastic-agent as DaemonSet on each ECK node.
cleanup - will delete all the resources including the ECK operator
EXAMPLE: ./deploy-eck.sh fleet 8.2.0 2.2.0
All yaml files will be stored in ~/eckstack
~/eckstack/notes will contain all endpoint and password information
~/eckstack/ca.crt will be the CA used to sign the public certificate
start
❯ ./deploy-eck.sh stack 8.2.0 2.2.0
[DEBUG] ECK 2.2.0 version validated.
[DEBUG] This might take a while. In another window you can watch -n2 kubectl get all or kubectl get events -w to watch the stack being stood up
********** Deploying ECK 2.2.0 OPERATOR **************
[DEBUG] ECK 2.2.0 downloading crds: crds.yaml
[DEBUG] ECK 2.2.0 downloading operator: operator.yaml
No resources found in elastic-system namespace.
[DEBUG] ECK Operator is starting. Checking again in 20 seconds. If the operator does not goto Running status in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 2.2.0 OPERATOR is HEALTHY
NAME READY STATUS RESTARTS AGE
pod/elastic-operator-0 1/1 Running 0 23s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/elastic-webhook-server ClusterIP 10.88.7.132 <none> 443/TCP 23s
NAME READY AGE
statefulset.apps/elastic-operator 1/1 23s
[DEBUG] ECK 2.2.0 Creating license.yaml
[DEBUG] ECK 2.2.0 Applying trial license
********** Deploying ECK 2.2.0 STACK 8.2.0 CLUSTER eck-lab **************
[DEBUG] ECK 2.2.0 STACK 8.2.0 CLUSTER eck-lab Creating elasticsearch.yaml
[DEBUG] ECK 2.2.0 STACK 8.2.0 CLUSTER eck-lab Starting elasticsearch cluster.
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 2.2.0 STACK 8.2.0 is HEALTHY
NAME HEALTH NODES VERSION PHASE AGE
eck-lab green 3 8.2.0 Ready 87s
[DEBUG] ECK 2.2.0 STACK 8.2.0 CLUSTER eck-lab Creating kibana.yaml
[DEBUG] ECK 2.2.0 STACK 8.2.0 CLUSTER eck-lab Starting kibana.
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 2.2.0 STACK 8.2.0 is HEALTHY
NAME HEALTH NODES VERSION AGE
eck-lab green 1 8.2.0 46s
[DEBUG] Grabbing elastic password for eck-lab: 4x4SxGhY80SxT25rGO16tL66
[DEBUG] Grabbing elasticsearch endpoint for eck-lab: https://34.66.207.236:9200
[DEBUG] Grabbing kibana endpoint for eck-lab: https://34.122.94.111:5601
[SUMMARY] ECK 2.2.0 STACK 8.2.0
NAME READY STATUS RESTARTS AGE
pod/eck-lab-es-default-0 1/1 Running 0 2m15s
pod/eck-lab-es-default-1 1/1 Running 0 2m15s
pod/eck-lab-es-default-2 1/1 Running 0 2m15s
pod/eck-lab-kb-6fdc7f4d45-bvlld 0/1 Running 0 20s
pod/eck-lab-kb-c9b679dcb-9l2w4 1/1 Running 0 47s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/eck-lab-es-default ClusterIP None <none> 9200/TCP 2m16s
service/eck-lab-es-http LoadBalancer 10.88.5.209 34.66.207.236 9200:30407/TCP 2m17s
service/eck-lab-es-internal-http ClusterIP 10.88.3.104 <none> 9200/TCP 2m17s
service/eck-lab-es-transport ClusterIP None <none> 9300/TCP 2m17s
service/eck-lab-kb-http LoadBalancer 10.88.4.32 34.122.94.111 5601:30705/TCP 47s
service/kubernetes ClusterIP 10.88.0.1 <none> 443/TCP 52m
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/eck-lab-kb 1/1 1 1 47s
NAME DESIRED CURRENT READY AGE
replicaset.apps/eck-lab-kb-6fdc7f4d45 1 1 0 21s
replicaset.apps/eck-lab-kb-c9b679dcb 1 1 1 48s
NAME READY AGE
statefulset.apps/eck-lab-es-default 3/3 2m16s
[SUMMARY] STACK INFO:
eck-lab elastic password: 4x4SxGhY80SxT25rGO16tL66
eck-lab elasticsearch endpoint: https://34.66.207.236:9200
eck-lab kibana endpoint: https://34.122.94.111:5601
[SUMMARY] ca.crt is located in /Users/jlim/eckstack/ca.crt
[NOTE] If you missed the summary its also in /Users/jlim/eckstack/notes
[NOTE] You can start logging into kibana but please give things few minutes for proper startup and letting components settle down.
beats
❯ ./deploy-eck.sh beats 7.17.3 2.0.0
[DEBUG] ECK 2.0.0 version validated.
[DEBUG] This might take a while. In another window you can watch -n2 kubectl get all or kubectl get events -w to watch the stack being stood up
********** Deploying ECK 2.0.0 OPERATOR **************
[DEBUG] ECK 2.0.0 downloading crds: crds.yaml
[DEBUG] ECK 2.0.0 downloading operator: operator.yaml
[DEBUG] ECK Operator is starting. Checking again in 20 seconds. If the operator does not goto Running status in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 2.0.0 OPERATOR is HEALTHY
NAME READY STATUS RESTARTS AGE
pod/elastic-operator-0 1/1 Running 0 23s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/elastic-webhook-server ClusterIP 10.88.13.176 <none> 443/TCP 23s
NAME READY AGE
statefulset.apps/elastic-operator 1/1 23s
[DEBUG] ECK 2.0.0 Creating license.yaml
[DEBUG] ECK 2.0.0 Applying trial license
********** Deploying ECK 2.0.0 STACK 7.17.3 CLUSTER eck-lab **************
[DEBUG] ECK 2.0.0 STACK 7.17.3 CLUSTER eck-lab Creating elasticsearch.yaml
[DEBUG] ECK 2.0.0 STACK 7.17.3 CLUSTER eck-lab Starting elasticsearch cluster.
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 2.0.0 STACK 7.17.3 is HEALTHY
NAME HEALTH NODES VERSION PHASE AGE
eck-lab green 3 7.17.3 Ready 67s
[DEBUG] ECK 2.0.0 STACK 7.17.3 CLUSTER eck-lab Creating kibana.yaml
[DEBUG] ECK 2.0.0 STACK 7.17.3 CLUSTER eck-lab Starting kibana.
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 2.0.0 STACK 7.17.3 is HEALTHY
NAME HEALTH NODES VERSION AGE
eck-lab green 1 7.17.3 87s
[DEBUG] Grabbing elastic password for eck-lab: 4Pt7SU2NGd7i8r5X7J0aq0a3
[DEBUG] Grabbing elasticsearch endpoint for eck-lab: https://34.122.94.111:9200
[DEBUG] Grabbing kibana endpoint for eck-lab: https://34.66.207.236:5601
********** Deploying ECK 2.0.0 STACK 7.17.3 with BEATS **************
[DEBUG] ECK 2.0.0 STACK 7.17.3 Creating BEATS crds
[DEBUG] ECK 2.0.0 STACK 7.17.3 Creating BEATS
[DEBUG] ECK 2.0.0 STACK 7.17.3 filebeat, metricbeat, packetbeat, & heartbeat deployed
[DEBUG] ECK 2.0.0 STACK 7.17.3 Please wait a few minutes for the beats to become healthy. (it will restart 3-4 times before it becomes healthy) & for the data to start showing
[SUMMARY] ECK 2.0.0 STACK 7.17.3
NAME READY STATUS RESTARTS AGE
pod/eck-lab-es-default-0 1/1 Running 0 6m13s
pod/eck-lab-es-default-1 1/1 Running 0 6m13s
pod/eck-lab-es-default-2 1/1 Running 0 6m12s
pod/eck-lab-kb-67fcfddfcf-f5w57 1/1 Running 0 4m49s
pod/filebeat-beat-filebeat-7kln5 1/1 Running 3 3m44s
pod/filebeat-beat-filebeat-bjp8f 1/1 Running 3 3m44s
pod/filebeat-beat-filebeat-cv6mf 1/1 Running 3 3m44s
pod/heartbeat-beat-heartbeat-58f6fccc9f-7gtrm 1/1 Running 0 3m44s
pod/metricbeat-beat-metricbeat-2mbcj 1/1 Running 0 3m45s
pod/metricbeat-beat-metricbeat-htswv 1/1 Running 0 3m45s
pod/metricbeat-beat-metricbeat-qd9qs 1/1 Running 0 3m45s
pod/packetbeat-beat-packetbeat-4rhpw 1/1 Running 3 3m43s
pod/packetbeat-beat-packetbeat-fgmtp 1/1 Running 1 3m43s
pod/packetbeat-beat-packetbeat-ndcq5 1/1 Running 3 3m43s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/eck-lab-es-default ClusterIP None <none> 9200/TCP 6m13s
service/eck-lab-es-http LoadBalancer 10.88.0.157 34.122.94.111 9200:32085/TCP 6m14s
service/eck-lab-es-transport ClusterIP None <none> 9300/TCP 6m14s
service/eck-lab-kb-http LoadBalancer 10.88.5.130 34.66.207.236 5601:32098/TCP 5m16s
service/kubernetes ClusterIP 10.88.0.1 <none> 443/TCP 68m
NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
daemonset.apps/filebeat-beat-filebeat 3 3 3 3 3 <none> 3m44s
daemonset.apps/metricbeat-beat-metricbeat 3 3 3 3 3 <none> 3m45s
daemonset.apps/packetbeat-beat-packetbeat 3 3 3 3 3 <none> 3m43s
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/eck-lab-kb 1/1 1 1 5m15s
deployment.apps/heartbeat-beat-heartbeat 1/1 1 1 3m44s
NAME DESIRED CURRENT READY AGE
replicaset.apps/eck-lab-kb-67fcfddfcf 1 1 1 4m49s
replicaset.apps/heartbeat-beat-heartbeat-58f6fccc9f 1 1 1 3m44s
NAME READY AGE
statefulset.apps/eck-lab-es-default 3/3 6m13s
[SUMMARY] STACK INFO:
eck-lab elastic password: 4Pt7SU2NGd7i8r5X7J0aq0a3
eck-lab elasticsearch endpoint: https://34.122.94.111:9200
eck-lab kibana endpoint: https://34.66.207.236:5601
[SUMMARY] ca.crt is located in /Users/jlim/eckstack/ca.crt
[NOTE] If you missed the summary its also in /Users/jlim/eckstack/notes
[NOTE] You can start logging into kibana but please give things few minutes for proper startup and letting components settle down.
monitor1
❯ ./deploy-eck.sh monitor1 7.16.1 1.9.0
[DEBUG] ECK 1.9.0 version validated.
[DEBUG] This might take a while. In another window you can watch -n2 kubectl get all or kubectl get events -w to watch the stack being stood up
********** Deploying ECK 1.9.0 OPERATOR **************
[DEBUG] ECK 1.9.0 downloading crds: crds.yaml
[DEBUG] ECK 1.9.0 downloading operator: operator.yaml
[DEBUG] ECK Operator is starting. Checking again in 20 seconds. If the operator does not goto Running status in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 1.9.0 OPERATOR is HEALTHY
NAME READY STATUS RESTARTS AGE
pod/elastic-operator-0 1/1 Running 0 23s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/elastic-webhook-server ClusterIP 10.88.12.8 <none> 443/TCP 24s
NAME READY AGE
statefulset.apps/elastic-operator 1/1 23s
[DEBUG] ECK 1.9.0 Creating license.yaml
[DEBUG] ECK 1.9.0 Applying trial license
********** Deploying ECK 1.9.0 STACK 7.16.1 CLUSTER eck-lab **************
[DEBUG] ECK 1.9.0 STACK 7.16.1 CLUSTER eck-lab Creating elasticsearch.yaml
[DEBUG] ECK 1.9.0 STACK 7.16.1 CLUSTER eck-lab Starting elasticsearch cluster.
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 1.9.0 STACK 7.16.1 is HEALTHY
NAME HEALTH NODES VERSION PHASE AGE
eck-lab green 3 7.16.1 Ready 86s
[DEBUG] ECK 1.9.0 STACK 7.16.1 CLUSTER eck-lab Creating kibana.yaml
[DEBUG] ECK 1.9.0 STACK 7.16.1 CLUSTER eck-lab Starting kibana.
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 1.9.0 STACK 7.16.1 is HEALTHY
NAME HEALTH NODES VERSION AGE
eck-lab green 1 7.16.1 87s
[DEBUG] Grabbing elastic password for eck-lab: yE1X9xuf475VU51Up28fop9C
[DEBUG] Grabbing elasticsearch endpoint for eck-lab: https://34.122.94.111:9200
[DEBUG] Grabbing kibana endpoint for eck-lab: https://34.66.207.236:5601
********** Deploying ECK 1.9.0 STACK 7.16.1 CLUSTER eck-lab-monitor **************
[DEBUG] ECK 1.9.0 STACK 7.16.1 CLUSTER eck-lab-monitor Creating elasticsearch.yaml
[DEBUG] ECK 1.9.0 STACK 7.16.1 CLUSTER eck-lab-monitor Starting elasticsearch cluster.
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 1.9.0 STACK 7.16.1 is HEALTHY
NAME HEALTH NODES VERSION PHASE AGE
eck-lab green 3 7.16.1 Ready 4m2s
eck-lab-monitor green 3 7.16.1 Ready 66s
[DEBUG] ECK 1.9.0 STACK 7.16.1 CLUSTER eck-lab-monitor Creating kibana.yaml
[DEBUG] ECK 1.9.0 STACK 7.16.1 CLUSTER eck-lab-monitor Starting kibana.
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 1.9.0 STACK 7.16.1 is HEALTHY
NAME HEALTH NODES VERSION AGE
eck-lab green 1 7.16.1 4m2s
eck-lab-monitor green 1 7.16.1 86s
[DEBUG] Grabbing elastic password for eck-lab-monitor: S48S00UQ86i3FlvjV06lG9Ba
[DEBUG] Grabbing elasticsearch endpoint for eck-lab-monitor: https://35.184.182.193:9200
[DEBUG] Grabbing kibana endpoint for eck-lab-monitor: https://35.223.38.148:5601
********** Deploying ECK 1.9.0 STACK 7.16.1 Stack Monitoring with BEATS in Pods **************
[DEBUG] ECK 1.9.0 STACK 7.16.1 Removing scrape label from monitoring pods
[DEBUG] ECK 1.9.0 STACK 7.16.1 Stack monitoring with BEATS in PODS deployed
[SUMMARY] ECK 1.9.0 STACK 7.16.1
NAME READY STATUS RESTARTS AGE
pod/eck-lab-es-default-0 1/1 Running 0 10m
pod/eck-lab-es-default-1 1/1 Running 0 10m
pod/eck-lab-es-default-2 1/1 Running 0 10m
pod/eck-lab-kb-6f58794b9-l4wnc 1/1 Running 0 8m43s
pod/eck-lab-monitor-es-default-0 1/1 Running 0 7m38s
pod/eck-lab-monitor-es-default-1 1/1 Running 0 7m38s
pod/eck-lab-monitor-es-default-2 1/1 Running 0 7m38s
pod/eck-lab-monitor-kb-64ccbc67f8-jk8gp 1/1 Running 0 6m3s
pod/filebeat-beat-filebeat-czqqw 1/1 Running 3 4m50s
pod/filebeat-beat-filebeat-fxnqz 1/1 Running 3 4m50s
pod/filebeat-beat-filebeat-xtfmz 1/1 Running 3 4m50s
pod/metricbeat-beat-metricbeat-57747f957b-qbql8 1/1 Running 3 4m51s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/eck-lab-es-default ClusterIP None <none> 9200/TCP 10m
service/eck-lab-es-http LoadBalancer 10.88.15.80 34.122.94.111 9200:31376/TCP 10m
service/eck-lab-es-transport ClusterIP None <none> 9300/TCP 10m
service/eck-lab-kb-http LoadBalancer 10.88.11.6 34.66.207.236 5601:31816/TCP 9m8s
service/eck-lab-monitor-es-default ClusterIP None <none> 9200/TCP 7m38s
service/eck-lab-monitor-es-http LoadBalancer 10.88.11.35 35.184.182.193 9200:30985/TCP 7m39s
service/eck-lab-monitor-es-transport ClusterIP None <none> 9300/TCP 7m39s
service/eck-lab-monitor-kb-http LoadBalancer 10.88.4.252 35.223.38.148 5601:30173/TCP 6m32s
service/kubernetes ClusterIP 10.88.0.1 <none> 443/TCP 84m
NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
daemonset.apps/filebeat-beat-filebeat 3 3 3 3 3 <none> 4m50s
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/eck-lab-kb 1/1 1 1 9m6s
deployment.apps/eck-lab-monitor-kb 1/1 1 1 6m31s
deployment.apps/metricbeat-beat-metricbeat 1/1 1 1 4m51s
NAME DESIRED CURRENT READY AGE
replicaset.apps/eck-lab-kb-6f58794b9 1 1 1 8m44s
replicaset.apps/eck-lab-monitor-kb-64ccbc67f8 1 1 1 6m4s
replicaset.apps/metricbeat-beat-metricbeat-57747f957b 1 1 1 4m52s
NAME READY AGE
statefulset.apps/eck-lab-es-default 3/3 10m
statefulset.apps/eck-lab-monitor-es-default 3/3 7m39s
[SUMMARY] STACK INFO:
eck-lab elastic password: yE1X9xuf475VU51Up28fop9C
eck-lab elasticsearch endpoint: https://34.122.94.111:9200
eck-lab kibana endpoint: https://34.66.207.236:5601
eck-lab-monitor elastic password: S48S00UQ86i3FlvjV06lG9Ba
eck-lab-monitor elasticsearch endpoint: https://35.184.182.193:9200
eck-lab-monitor kibana endpoint: https://35.223.38.148:5601
[SUMMARY] ca.crt is located in /Users/jlim/eckstack/ca.crt
[NOTE] If you missed the summary its also in /Users/jlim/eckstack/notes
[NOTE] You can start logging into kibana but please give things few minutes for proper startup and letting components settle down.
monitor2
❯ ./deploy-eck.sh monitor2 8.2.2 2.2.0
[DEBUG] ECK 2.2.0 version validated.
[DEBUG] This might take a while. In another window you can watch -n2 kubectl get all or kubectl get events -w to watch the stack being stood up
********** Deploying ECK 2.2.0 OPERATOR **************
[DEBUG] ECK 2.2.0 downloading crds: crds.yaml
[DEBUG] ECK 2.2.0 downloading operator: operator.yaml
[DEBUG] ECK Operator is starting. Checking again in 20 seconds. If the operator does not goto Running status in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 2.2.0 OPERATOR is HEALTHY
NAME READY STATUS RESTARTS AGE
pod/elastic-operator-0 1/1 Running 0 23s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/elastic-webhook-server ClusterIP 10.88.11.244 <none> 443/TCP 23s
NAME READY AGE
statefulset.apps/elastic-operator 1/1 23s
[DEBUG] ECK 2.2.0 Creating license.yaml
[DEBUG] ECK 2.2.0 Applying trial license
********** Deploying ECK 2.2.0 STACK 8.2.2 CLUSTER eck-lab-monitor **************
[DEBUG] ECK 2.2.0 STACK 8.2.2 CLUSTER eck-lab-monitor Creating elasticsearch.yaml
[DEBUG] ECK 2.2.0 STACK 8.2.2 CLUSTER eck-lab-monitor Starting elasticsearch cluster.
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 2.2.0 STACK 8.2.2 is HEALTHY
NAME HEALTH NODES VERSION PHASE AGE
eck-lab-monitor green 3 8.2.2 Ready 87s
[DEBUG] ECK 2.2.0 STACK 8.2.2 CLUSTER eck-lab-monitor Creating kibana.yaml
[DEBUG] ECK 2.2.0 STACK 8.2.2 CLUSTER eck-lab-monitor Starting kibana.
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 2.2.0 STACK 8.2.2 is HEALTHY
NAME HEALTH NODES VERSION AGE
eck-lab-monitor green 1 8.2.2 46s
[DEBUG] Grabbing elastic password for eck-lab-monitor: G4jZv359twFAbyp60856Xxj7
[DEBUG] Grabbing elasticsearch endpoint for eck-lab-monitor: https://34.66.207.236:9200
[DEBUG] Grabbing kibana endpoint for eck-lab-monitor: https://35.184.182.193:5601
********** Deploying ECK 2.2.0 STACK 8.2.2 Stack Monitoring with BEATS in sidecar containers **************
[DEBUG] ECK 2.2.0 STACK 8.2.2 CLUSTER eck-lab Creating elasticsearch.yaml
[DEBUG] ECK 2.2.0 STACK 8.2.2 CLUSTER eck-lab Starting elasticsearch & kibana.
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 2.2.0 STACK 8.2.2 is HEALTHY
NAME HEALTH NODES VERSION AGE
eck-lab green 1 8.2.2 70s
eck-lab-monitor green 1 8.2.2 117s
[DEBUG] Grabbing elastic password for eck-lab: 8JNG2gA2T28zg1i8uw629RdD
[DEBUG] Grabbing elasticsearch endpoint for eck-lab: https://34.122.94.111:9200
[DEBUG] Grabbing kibana endpoint for eck-lab: https://35.223.38.148:5601
[SUMMARY] ECK 2.2.0 STACK 8.2.2
NAME READY STATUS RESTARTS AGE
pod/eck-lab-es-default-0 3/3 Running 0 66s
pod/eck-lab-es-default-1 3/3 Running 0 66s
pod/eck-lab-es-default-2 3/3 Running 0 66s
pod/eck-lab-kb-68dbb7b4f8-9mvfg 3/3 Running 0 41s
pod/eck-lab-monitor-es-default-0 1/1 Running 0 3m26s
pod/eck-lab-monitor-es-default-1 1/1 Running 0 3m26s
pod/eck-lab-monitor-es-default-2 1/1 Running 0 3m26s
pod/eck-lab-monitor-kb-7b4548f7bc-cm46k 1/1 Running 0 93s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/eck-lab-es-default ClusterIP None <none> 9200/TCP 66s
service/eck-lab-es-http LoadBalancer 10.88.15.7 34.122.94.111 9200:30336/TCP 71s
service/eck-lab-es-internal-http ClusterIP 10.88.14.251 <none> 9200/TCP 70s
service/eck-lab-es-transport ClusterIP None <none> 9300/TCP 71s
service/eck-lab-kb-http LoadBalancer 10.88.10.220 35.223.38.148 5601:32594/TCP 70s
service/eck-lab-monitor-es-default ClusterIP None <none> 9200/TCP 3m27s
service/eck-lab-monitor-es-http LoadBalancer 10.88.4.137 34.66.207.236 9200:30808/TCP 3m28s
service/eck-lab-monitor-es-internal-http ClusterIP 10.88.8.113 <none> 9200/TCP 3m28s
service/eck-lab-monitor-es-transport ClusterIP None <none> 9300/TCP 3m28s
service/eck-lab-monitor-kb-http LoadBalancer 10.88.9.166 35.184.182.193 5601:30860/TCP 118s
service/kubernetes ClusterIP 10.88.0.1 <none> 443/TCP 94m
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/eck-lab-kb 1/1 1 1 65s
deployment.apps/eck-lab-monitor-kb 1/1 1 1 118s
NAME DESIRED CURRENT READY AGE
replicaset.apps/eck-lab-kb-68dbb7b4f8 1 1 1 42s
replicaset.apps/eck-lab-monitor-kb-7b4548f7bc 1 1 1 94s
NAME READY AGE
statefulset.apps/eck-lab-es-default 3/3 67s
statefulset.apps/eck-lab-monitor-es-default 3/3 3m28s
[SUMMARY] STACK INFO:
eck-lab-monitor elastic password: G4jZv359twFAbyp60856Xxj7
eck-lab-monitor elasticsearch endpoint: https://34.66.207.236:9200
eck-lab-monitor kibana endpoint: https://35.184.182.193:5601
eck-lab elastic password: 8JNG2gA2T28zg1i8uw629RdD
eck-lab elasticsearch endpoint: https://34.122.94.111:9200
eck-lab kibana endpoint: https://35.223.38.148:5601
[SUMMARY] ca.crt is located in /Users/jlim/eckstack/ca.crt
[NOTE] If you missed the summary its also in /Users/jlim/eckstack/notes
[NOTE] You can start logging into kibana but please give things few minutes for proper startup and letting components settle down.
fleet
❯ ./deploy-eck.sh fleet 7.14.0 1.7.0
[DEBUG] ECK 1.7.0 version validated.
[DEBUG] This might take a while. In another window you can watch -n2 kubectl get all or kubectl get events -w to watch the stack being stood up
********** Deploying ECK 1.7.0 OPERATOR **************
[DEBUG] ECK 1.7.0 downloading crds: crds.yaml
[DEBUG] ECK 1.7.0 downloading operator: operator.yaml
[DEBUG] ECK Operator is starting. Checking again in 20 seconds. If the operator does not goto Running status in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 1.7.0 OPERATOR is HEALTHY
NAME READY STATUS RESTARTS AGE
pod/elastic-operator-0 1/1 Running 0 23s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/elastic-webhook-server ClusterIP 10.88.8.145 <none> 443/TCP 23s
NAME READY AGE
statefulset.apps/elastic-operator 1/1 24s
[DEBUG] ECK 1.7.0 Creating license.yaml
[DEBUG] ECK 1.7.0 Applying trial license
********** Deploying ECK 1.7.0 STACK 7.14.0 CLUSTER eck-lab **************
[DEBUG] ECK 1.7.0 STACK 7.14.0 CLUSTER eck-lab Creating elasticsearch.yaml
[DEBUG] ECK 1.7.0 STACK 7.14.0 CLUSTER eck-lab Starting elasticsearch cluster.
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] elasticsearch is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 1.7.0 STACK 7.14.0 is HEALTHY
NAME HEALTH NODES VERSION PHASE AGE
eck-lab green 3 7.14.0 Ready 87s
[DEBUG] ECK 1.7.0 STACK 7.14.0 CLUSTER eck-lab Creating kibana.yaml
[DEBUG] ECK 1.7.0 STACK 7.14.0 CLUSTER eck-lab Starting kibana.
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] kibana is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 1.7.0 STACK 7.14.0 is HEALTHY
NAME HEALTH NODES VERSION AGE
eck-lab green 1 7.14.0 87s
[DEBUG] Grabbing elastic password for eck-lab: 69e7Fo4xuZU4ml99ytq028gX
[DEBUG] Grabbing elasticsearch endpoint for eck-lab: https://35.226.108.171:9200
[DEBUG] Grabbing kibana endpoint for eck-lab: https://34.69.106.152:5601
********** Deploying ECK 1.7.0 STACK 7.14.0 Fleet Server & elastic-agent **************
[DEBUG] Patching kibana to set fleet settings
kibana.kibana.k8s.elastic.co/eck-lab patched
[DEBUG] Sleeping for 60 seconds to wait for kibana to be updated with the patch
..............................
[DEBUG] Creating fleet.yaml
[DEBUG] STACK VERSION: 7.14.0 Starting fleet-server & elastic-agents.
[DEBUG] agent is starting. Checking again in 20 seconds. If this does not finish in few minutes something is wrong. CTRL-C please
[DEBUG] ECK 1.7.0 STACK 7.14.0 is HEALTHY
NAME HEALTH AVAILABLE EXPECTED VERSION AGE
elastic-agent green 3 3 7.14.0 26s
fleet-server green 1 1 7.14.0 26s
[SUMMARY] ECK 1.7.0 STACK 7.14.0
NAME READY STATUS RESTARTS AGE
pod/eck-lab-es-default-0 1/1 Running 0 4m11s
pod/eck-lab-es-default-1 1/1 Running 0 4m11s
pod/eck-lab-es-default-2 1/1 Running 0 4m11s
pod/eck-lab-kb-54697d97b5-gg4xm 1/1 Running 0 88s
pod/elastic-agent-agent-cwmsp 1/1 Running 0 23s
pod/elastic-agent-agent-cx9vt 1/1 Running 0 23s
pod/elastic-agent-agent-xqg8n 1/1 Running 0 23s
pod/fleet-server-agent-55dcc9849-lt7ps 1/1 Running 0 23s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/eck-lab-es-default ClusterIP None <none> 9200/TCP 4m12s
service/eck-lab-es-http LoadBalancer 10.88.2.11 35.226.108.171 9200:32743/TCP 4m14s
service/eck-lab-es-transport ClusterIP None <none> 9300/TCP 4m14s
service/eck-lab-kb-http LoadBalancer 10.88.15.143 34.69.106.152 5601:32718/TCP 2m57s
service/fleet-server-agent-http ClusterIP 10.88.0.169 <none> 8220/TCP 26s
service/kubernetes ClusterIP 10.88.0.1 <none> 443/TCP 103m
NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
daemonset.apps/elastic-agent-agent 3 3 3 3 3 <none> 24s
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/eck-lab-kb 1/1 1 1 2m55s
deployment.apps/fleet-server-agent 1/1 1 1 24s
NAME DESIRED CURRENT READY AGE
replicaset.apps/eck-lab-kb-54697d97b5 1 1 1 89s
replicaset.apps/fleet-server-agent-55dcc9849 1 1 1 24s
NAME READY AGE
statefulset.apps/eck-lab-es-default 3/3 4m12s
[SUMMARY] STACK INFO:
eck-lab elastic password: 69e7Fo4xuZU4ml99ytq028gX
eck-lab elasticsearch endpoint: https://35.226.108.171:9200
eck-lab kibana endpoint: https://34.69.106.152:5601
[SUMMARY] ca.crt is located in /Users/jlim/eckstack/ca.crt
[NOTE] If you missed the summary its also in /Users/jlim/eckstack/notes
[NOTE] You can start logging into kibana but please give things few minutes for proper startup and letting components settle down.
3 Comments