Installing BMC Helix Logging
Before you begin
- Make sure that BMC Helix Platform Common Services 25.1.00 is installed.
Make sure that the following ports are available for Elasticsearch and Kibana services:
Service
Ports
ElasticSearch
9200, 9300
Kibana
5601
- Make sure that you have a separate namespace to install BMC Helix Logging.
See System-requirements. - Download the bmc-helix-logging-25.1.00-45.tar file from EPD by using the BMC Helix Platform CommonServices Logging Bundle option.
See Downloading-the-installation-files.
To install BMC Helix Logging
- Extract the bmc-helix-logging-25.1.00-45.tar file to the helix-on-prem-deployment-manager/utilities folder in the working directory.
- Perform the following procedures that are relevant to your deployment.
Deployment
Procedure
Kubernetes
- Use the default namespace or create a namespace in Kubernetes; for example, bmc-helix-logging.
- Navigate to helix-on-prem-deployment-manager/utilities/bmc-helix-logging/efk/fluent-bit/ and replace the efk-fluent-bit-clusterrole.yaml namespace with the namespace that was created in step a.
- Run the following command:
kubectl apply -f efk-fluent-bit-clusterrole.yaml Use the cluster admin permission and apply the privileged policy to the new namespace.
kubectl label namespace <namespace-name> pod-security.kubernetes.io/enforce=privileged
kubectl label namespace <namespace-name> pod-security.kubernetes.io/enforce-version=latest
kubectl label namespace <namespace-name> pod-security.kubernetes.io/audit=privileged
kubectl label namespace <namespace-name> pod-security.kubernetes.io/audit-version=latest
kubectl label namespace <namespace-name> pod-security.kubernetes.io/warn=privileged
kubectl label namespace <namespace-name> pod-security.kubernetes.io/warn-version=latest- To use a different namespace, navigate to bmc-helix-logging.config and set the variable BMC_HELIX_LOGGING_NAMESPACE to a new namespace.
OpenShift
- Use the default namespace or create a namespace in Openshift; for example, bmc-helix-logging.
- Make sure that you have the cluster administrator permissions.
Navigate to helix-on-prem-deployment-manager/utilities/bmc-helix-logging/efk/fluent-bit/ and run the following commands:
- To replace the efk-fluent-bit-scc.yaml namespace, run the oc apply -f efk-fluent-bit-scc.yaml command.
- To replace the efk-fluent-bit-clusterrole.yaml namespace, run the oc apply -f efk-fluent-bit-clusterrole.yaml command.
- To add adm policy scc to the service account in the namespace, run the oc adm policy add-scc-to-user efk-fluent-bit -z efk-fluent-bit -n <namespace> command.
- Add bmc-helix-logging UID in bmc-helix-logging.config; for example,
- LOGGING_RUN_AS_USER=1000750000
- LOGGING_RUN_AS_GROUP=1000750000
- LOGGING_FS_GROUP=1000750000
- Navigate to the helix-on-prem-deployment-manager/utilities/bmc-helix-logging/bmc-helix-logging.config file and set the following values:
Parameter
Description
KIBANA_LB_HOST
Specify a URL to create a Kibana load balancer host.
The BMC Helix Logging Ingress uses the value of this parameter.
Example: KIBANA_LB_HOST= kibana-private-poc.mydomain.comESLOG_MASTER_STORAGE_CLASS
Specify a storage class for Elasticsearch master nodes.
Usually, a single storage class by using block storage is configured for all the infra services.Example: ESLOG_MASTER_STORAGE_CLASS=acme-block-storage
ESLOG_DATA_STORAGE_CLASS
Specify a storage class for Elasticsearch data nodes.
Usually, a single storage class by using block storage is configured for all the infra services.Example: ESLOG_DATA_STORAGE_CLASS=acme-block-storage
ESKIBANA_SERVER_HOST
- To use IPv4, set ESKIBANA_SERVER_HOST ="0.0.0.0"
- To use IPv6, set ESKIBANA_SERVER_HOST ="::"
- Run the bmc-helix-logging-deployer.sh script by using the following command:
./bmc-helix-logging-deployer.sh
The BMC Helix Logging EFK is deployed in the BMC Helix Logging namespace.
Where to go from here