Humio on Redhat OpenShift Container Platform

  • RedHat OpenShift Cluster
  • OC CLI installed in your laptop
  • Helm v3 CLI installed in your laptop
  1. Install CRDs
  2. Create Project / Namespace
  3. Install the Humio Operator
  4. Configure Service Account Privileges for Humio Operator
  5. Install Strimzi Kafka
  6. Install Certificate Manager
  7. Create a Humio Cluster
  8. Configure Service Account Privileges for Humio Cluster
  9. Create Route for Console and ElasticSearch endpoint

Step 1 — Install CRDs

export HUMIO_OPERATOR_VERSION=0.5.0
kubectl apply -f https://raw.githubusercontent.com/humio/humio-operator/operator-$HUMIO_OPERATOR_VERSION/config/crd/bases/core.humio.com_humioclusters.yaml
kubectl apply -f https://raw.githubusercontent.com/humio/humio-operator/operator-$HUMIO_OPERATOR_VERSION/config/crd/bases/core.humio.com_humioexternalclusters.yaml
kubectl apply -f https://raw.githubusercontent.com/humio/humio-operator/operator-$HUMIO_OPERATOR_VERSION/config/crd/bases/core.humio.com_humioingesttokens.yaml
kubectl apply -f https://raw.githubusercontent.com/humio/humio-operator/operator-$HUMIO_OPERATOR_VERSION/config/crd/bases/core.humio.com_humioparsers.yaml
kubectl apply -f https://raw.githubusercontent.com/humio/humio-operator/operator-$HUMIO_OPERATOR_VERSION/config/crd/bases/core.humio.com_humiorepositories.yaml
kubectl apply -f https://raw.githubusercontent.com/humio/humio-operator/operator-$HUMIO_OPERATOR_VERSION/config/crd/bases/core.humio.com_humioviews.yaml

Step 2 — Create Project / Namespace

oc new-project logging

Step 3 — Install the Humio Operator

helm install humio-operator humio-operator/humio-operator \
— namespace logging \
— version=”$HUMIO_OPERATOR_VERSION”

Step 4 — Configure Service Account Privileges for Humio Operator

oc adm policy add-scc-to-user privileged system:serviceaccount:logging:humio-operator -n logging
Humio Operator in RedHat OpenShift Container Platform Console

Step 5—Install Strimzi Kafka

oc get services -n logging

Step 6 — Install Certificate Manager

kubectl create namespace cert-manager
helm repo add jetstack https://charts.jetstack.io
helm repo update
helm install cert-manager jetstack/cert-manager \
--namespace cert-manager \
--version v0.16.0 \
--set installCRDs=true

Step 7 — Create a Humio Cluster

apiVersion: core.humio.com/v1alpha1
kind: HumioCluster
metadata:
name: humiocluster
namespace: logging
spec:
autoRebalancePartitions: true
tls:
enabled: false
dataVolumePersistentVolumeClaimSpecTemplate:
storageClassName: ibmc-block-gold
accessModes: [ReadWriteOnce]
resources:
requests:
storage: 10Gi
environmentVariables:
- name: "SINGLE_USER_PASSWORD"
value: "develop3r"
- name: "HUMIO_JVM_ARGS"
value: "-Xss2m -Xms256m -Xmx1536m -server -XX:+UseParallelOldGC -XX:+ScavengeBeforeFullGC -XX:+DisableExplicitGC -Dzookeeper.client.secure=false"
- name: "ZOOKEEPER_URL"
value: "humio-cluster-zookeeper-client.logging.svc:9092"
- name: "KAFKA_SERVERS"
value: "humio-cluster-kafka-bootstrap.logging.svc:9092"

Step 8— Configure Service Account Privileges for Humio Cluster

oc adm policy add-scc-to-user privileged system:serviceaccount:logging:humiocluster-humio -n logging

Step 9 — Create Route for Console and ElasticSearch endpoint

apiVersion: v1
kind: Route
metadata:
name: humio-console
namespace: logging
spec:
host: <FQDM_OF_THIS_ROUTE>
to:
kind: Service
name: humiocluster
port:
targetPort: http
tls:
termination: edge
insecureEdgeTerminationPolicy: Allow
apiVersion: v1
kind: Route
metadata:
name: humio-es
namespace: logging
spec:
host: <FQDM_OF_THIS_ROUTE>
to:
kind: Service
name: humiocluster
port:
targetPort: es
tls:
termination: edge
insecureEdgeTerminationPolicy: Allow

--

--

--

Blockchain, Kubernetes, DevOps and Coffee

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

How To Start Making Money With Coding Today

Google Pay India Switches to Flutter that will Serve as Global Expansion

Google Pay India Switches to Flutter that will Serve as Global Expansion

Explore the possibilities with hundreds of domain extensions — {link} -

Invoking Lambda functions Locally with AWS SAM

Divide and Conquer Paradigm in Algorithms.

November Liner Notes

My First Blog Post(ever)

Agile product management in a non agile “corporate” world

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Ong Khai Wei

Ong Khai Wei

Blockchain, Kubernetes, DevOps and Coffee

More from Medium

Clear Linux Distro — Optimized for Performance and Security

Deploy Bare Metal OpenShift in a Disconnected Environment Using Advanced Cluster Management

Lens: My Choose For K8s IDE.

Ansible Tower: Installation & Uninstallation