Jump to content

Observibility Cluster Setup

From TetraWiki

Auto-generated from the uploaded PDF Observibility_Cluster_Setup.pdf. This is an extracted-text rendering for searchability; see the original PDF for exact formatting, diagrams, tables, and images.


Infosys - DGARM


Observability Cluster Setup Document


Last Updated:- 5th Feb, 2026


By

Prashant Kashyap

Document Control

Document No.       Doc_1

Document Version   1

Prepared By        Prashant Kashyap

Release Date       5th Feb 2026

                                                   Table of Contents

Infosys - DGARM ......................................................................................................................... 1

Document Control .......................................................................................................................2

Installation of Elasticsearch ....................................................................................................... 4

Kibana Installation ....................................................................................................................12

APM Installation on ELK setup .................................................................................................. 15

Fleet Installation in Elastic Cluster ........................................................................................... 18

                          Installation of Elasticsearch

1. Enable subscription-manager register
            subscription-manager register --username actual_user --password
            actual_pass

        Note :- After installation please subscription-manager unregister
         Command :- subscription-manager unregister


 2 . Install java on node (server), check the java version and Installation it
            yum install java*
            java -version

3. make Elasticsearch as user
          useradd elasticsearch
          groupadd elasticsearch

4. create data directory as per elasticsearch node functionality
   mkdir /data                                      // for normal node master and data
   mkdir /ml-data                                        // for ml node

5. create ELASTIC Directory for installation work
    mkdir ELASTIC
   cd ELASTIC

   # Download Elasticsearch rpm package
   wget
https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-
9.1.5-x86_64.rpm

     # Install Elasticsearch
     sudo rpm -ivh elasticsearch-9.1.5-x86_64.rpm


6. take backup of original elasticsearch.yml file before make any changes
        cp /etc/elasticsearch/elasticsearch.yml
        /etc/elasticsearch/elasticsearch_yml.backup

  7. Change ownership of elk directories and owner
          chown -R root:elasticsearch /etc/elasticsearch
          chown -R root:elasticsearch /data
          chown -R root:elasticsearch /var/log/elasticsearch


8. Put necessary node certificates in elasticsearch certs folder


               cd /etc/elasticsearch/certs


      Note :- .cnf, .dgarm.gov.in.crt, fullchain.crt and key will different as per node

9. Enter host entry in hosts file
   Note : host entry wil be different for DR and Prod as per cluster design or setup

   nano /etc/hosts
      All ELK Cluster node entry

10. go to elasticserch folder and make changes in yml file
nano elasticsearch.yml


11. start 9200 and 9300 port
       systemctl start firewalld
       firewall-cmd --permanent --add-port=9200/tcp
       firewall-cmd --permanent --add-port=9300/tcp
       systemctl reload firewalld

12. start the elasticsearch service

      sudo   systemctl   daemon-reload
      sudo   systemctl   enable elasticsearch
      sudo   systemctl   start elasticsearch
      sudo   systemctl   restart elasticsearch
      sudo   systemctl   status elasticsearch
      sudo   systemctl   stop elasticsearch

13. Commands for check the error of Elasticsearch
       sudo journalctl -u elasticsearch.service
       sudo journalctl -u elasticsearch.service -f

14. Elasticsearch Instance
       ps aux | grep elasticsearch
       sudo netstat -plnt | grep 9200

15. command to change password for Elasticsearch user i custom form
    /usr/share/bin/elasticsearch-reset-password -u elastic -i         // set
custom password

Note:- The same steps are followed for all other Elasticsearch nodes.

Overview for Elasticsearch nodes:- 3 master nodes, 2 hot data nodes, 4
warm data nodes, 2 ml nodes.

                                  Logstash Installation
  1. Enable subscription-manager register
                 subscription-manager register --username ABC --password
abc@123
          Note :- After installation please subscription-manager unregister
          Command :- subscription-manager unregister

  2. Install java on node (server), check the java version and Installation it
              yum install java*
              java -version

  3. make logstash as user and group
       useradd logstash
       Groupadd logstash

  4. create logstash Directory for installation work
        mkdir /logstash
        cd /logstash/
        wget https://artifacts.elastic.co/downloads/logstash/logstash-
               9.1.5-x86_64.rpm
        rpm -ivh logstash-9.1.5-x86_64.rpm


  5. make certs folder and copy all important certificate
       /etc/logstash
       mkdir certs

       cd /etc/logstash/certs/

6. changer owner and directory permission

chown -R logstash:logstash /etc/logstash /usr/share/logstash
/var/log/logstash /var/lib/logstash

7. Go to config directory and create conf file as per requirement

/etc/logstash/conf.d
 nano output.conf


8 . Start the port

       firewall-cmd --permanent --add-port=5044/tcp
       systemctl reload firewalld
       sudo firewall-cmd --list-ports

9.Restart logstash service and check the status

    sudo systemctl daemon-reload
    sudo systemctl enable logstash

        sudo systemctl start logstash
        sudo systemctl restart logstash
        sudo systemctl status logstash

Note :- Please put Certifcate and other details as per host and server.
Same process will be followed for the other logstash node also.

                         Kibana Installation

   1. Enable subscription-manager register
    subscription-manager register --username ABC --password abc@123

          Note :- After installation please subscription-manager
     unregister
         Command :- subscription-manager unregister

   2. Install java on node (server), check the java version and Install it
          yum install java*
          java -version

   3. Make Kibana as user and group
         useradd elasticsearch
          groupadd elasticsearch

   4. Create Kibana Directory for installation work
          mkdir /kibana
          cd /kibana/
          wget https://artifacts.elastic.co/downloads/kibana/kibana-9.1.5-
x86_64.rpm
          yum install net-tools
          rpm -ivh kibana-9.1.5-x86_64.rpm


     5. put all certificates in certs directory


cd /etc/kibana/certs/

   6. make changes in kibana.yml file


      Note : As per node, cluster and server host name will be different


7. open port and reload
       firewall-cmd --permanent --add-port=5601/tcp
       systemctl reload firewalld
       netstat -an | grep 5601

8. Give permission to kibana respect folders
        chown -R kibana:kibana /etc/kibana/certs
        chown -R kibana:kibana /opt/kibana
        chown -R kibana:kibana /var/log/kibana

9. restart kibana service
    sudo systemctl daemon-reload
    sudo systemctl enable kibana
    sudo systemctl start kibana
    sudo systemctl restart kibana
    sudo systemctl status kibana

10. Command to reset kibana_system user password from elasticsearch master
node.
         Cd /usr/share/elasticsearch
         Sudo ./bin/elasticsearch-reset-password -u kibana_system

11. Now go to search engine and access kiban dashboard or url

     https://kibanalocalhost:5601

        Enter elastic and its password
      Username :- elastic
      Password :- custom or auto generated.

Note: The same process will be followed for the other Kibana node.

                        APM Installation on ELK setup
1. Enable subscription-manager register
subscription-manager register --username actual_user --password
actual_pass
  Note :- After installation please subscription-manager unregister
  Command :- subscription-manager unregister

2. Install java on node (server), check the java version and Installation it
yum install java*
java -version

3. make apm-server as user
   useradd apm-server
       groupadd apm-server

4. Create APM directory and install apm-server
mkdir /apm
cd /apm/
wget https://artifacts.elastic.co/downloads/apm-server/apm-server-9.1.5-
x86_64.rpm
rpm -ivh apm-server-9.1.5-x86_64.rpm

5. Take backup of yml file and make changes
cd /etc/apm-server/
cp apm-server.yml apm-server_yml.backup
nano apm-server.yml

6. Put certificate on certs location under apm directory
cd /etc/apm-server/certs/


7. Set permission for apm folders
chown -R apm-server:apm-server /etc/apm-server/
chown -R apm-server:apm-server /var/log/apm-server/

8. Make changes in apm conf yml file
cd /etc/apm-server/

nano    apm-server.yml


  Save yml file

9. Open port 8200 for apm
     sudo firewall-cmd --zone=public --add-port=8200/tcp –permanent
     sudo firewall-cmd –reload
     sudo firewall-cmd --list-ports
     firewall-cmd --list-all

       Note:- The same process will be followed for other apm node.

10. Put ca certificate
       cp ca.crt /etc/pki/ca-trust/source/anchors/
    Note :- copy ca certificate from elastic master location and copy it on apm server given location

11. Start apm service and check the status
       systemctl daemon-reload
       systemctl status apm-server.service
       systemctl enable apm-server.service --now
       journalctl -xe -f -u apm-server.service --no-pager
       journalctl -xe -f apm-server.service --no-pager
       journalctl -xe -f -u apm-server.service --no-pager

                      Fleet Installation in Elastic Cluster
1. Go to Fleet Server and Enter All ELK Host entry in host file
    nano /etc/hosts

2. Copy ca.crt certificate in certificate directory


   Cd /etc/pki/ca-trust/source/anchors/
   Copy certificate here and run update-ca-trust command.

3. Make fleet directory and go inside fleet and install elastic-agent rpm here

     3. Go to Kibana and go to fleet section via 3 line in left side and add fleet.


5.select or click to add fleet server and under advanced section give Policy name as per our
requirements can give custom any name

NOTE :- Follow the step which shows after creating policy to install fleet. To install fleet we need to install
elastic-agent on server it automatically installs fleet on that particular server.


1. Select rpm or tar option for Installation of elastic-agent on our server and copy that
   installation command and run in our /fleet directory of server

2. After installing elastic-agent bring or copy all respect certificate on fleet server under
   elastic-agent directory


  cd /etc/elastic-agent
  mkdir certs
   cd /etc/elastic-agent/certs
   Give proper permission to certificate and certs directory to.

3. Open port 8220 for elastic-agent and fleet


4. Run installation or enroll command which is given in kibana UI for elastic-agent


5. Check status on both UI and CLI. It should be successfully enroll elastic-agent


Note :- same steps we need to follow for another 2nd node of fleet instead of default fleet we need to give
respect fleet url.

Add new fleet server host and Rest of the steps remaining same.

Note:- The same process will be followed for the other fleet node also.