Scaling out logging services after installation
By default, an instance of the logging service is installed together with IBM Cloud Pak for Multicloud Management. Minimal resources are allocated to this instance. For production use, you must allocate more capacity based on your projected workload. One way to achieve this task is to scale the logging service to more management or worker nodes.
Complete the following steps to scale the logging service to more nodes.
-
Provision and add management or worker nodes to the cluster. It takes approximately 5 - 10 minutes to add a node.
-
Prepare persistent volumes (PV) to store logging service data on newly added nodes. You can skip this step if dynamic provisioning is configured for logging storage. For more information, see Log storage.
-
Install the
kubectl
command line interface. See Installing the Kubernetes CLI (kubectl). -
Back up existing
ElasticStack
Custom Resource (CR) instance.-
Get a list of
ElasticStack
CRs.kubectl get elasticstack --all-namespaces
The command output resembles the following text:
NAMESPACE NAME AGE ibm-common-services logging 25h
-
Back up
ElasticStack
CR in theibm-common-services
namespace.kubectl get elasticstack logging -n ibm-common-services -o yaml > logging_cr_original.yaml
-
-
Prepare a patch file with updated CR fields.
-
Create a
logging-cr-patch.yaml
file to include the following settings:spec: elasticsearch: data: replicas: "3" # adjust to total number of nodes logstash: replicas: "3" # adjust to total number of nodes
Note: The number of replicas are the total number of nodes that you added in step 1.
-
-
Patch the logging CR.
- To patch CR named
logging
in theibm-common-services
namespace, use the following commands:kubectl patch elasticstack/logging -n ibm-common-services --type merge --patch "$(cat logging-cr-patch.yaml)"
- To patch CR named
-
The logging service becomes available in approximately 5 - 10 minutes.