Splunk est une plateforme logicielle permettant de chercher, d’analyser et de visualiser les données générées par des machines, ces donnée sont collectées à partir de sites web, d’applications, de capteurs, et d’appareils en tout genre qui constitue votre infratructure IT.
Pourquoi avoir besoin de Splunk ?
Regardez l’image ci-dessous :
[ 0.000000] Initializing cgroup subsys cpuset [ 0.000000] Initializing cgroup subsys cpu [ 0.000000] Initializing cgroup subsys cpuacct [ 0.000000] Linux version 3.10.0-1160.24.1.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Thu Apr 8 19:51:47 UTC 2021 [ 0.000000] Command line: BOOT_IMAGE=/vmlinuz-3.10.0-1160.24.1.el7.x86_64 root=/dev/mapper/centos-root ro crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet LANG=en_US.UTF-8 [ 0.000000] Disabled fast string operations [ 0.000000] e820: BIOS-provided physical RAM map: [ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009ebff] usable [ 0.000000] BIOS-e820: [mem 0x000000000009ec00-0x000000000009ffff] reserved [ 0.000000] BIOS-e820: [mem 0x00000000000dc000-0x00000000000fffff] reserved [root@server ~]# head -n 200 /var/log/dmesg [ 0.000000] Initializing cgroup subsys cpuset [ 0.000000] Initializing cgroup subsys cpu [ 0.000000] Initializing cgroup subsys cpuacct [ 0.000000] Linux version 3.10.0-1160.24.1.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Thu Apr 8 19:51:47 UTC 2021 [ 0.000000] Command line: BOOT_IMAGE=/vmlinuz-3.10.0-1160.24.1.el7.x86_64 root=/dev/mapper/centos-root ro crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet LANG=en_US.UTF-8 [ 0.000000] Disabled fast string operations [ 0.000000] e820: BIOS-provided physical RAM map: [ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009ebff] usable [ 0.000000] BIOS-e820: [mem 0x000000000009ec00-0x000000000009ffff] reserved [ 0.000000] BIOS-e820: [mem 0x00000000000dc000-0x00000000000fffff] reserved [ 0.000000] BIOS-e820: [mem 0x0000000000100000-0x00000000bfecffff] usable [ 0.000000] BIOS-e820: [mem 0x00000000bfed0000-0x00000000bfefefff] ACPI data [ 0.000000] BIOS-e820: [mem 0x00000000bfeff000-0x00000000bfefffff] ACPI NVS [ 0.000000] BIOS-e820: [mem 0x00000000bff00000-0x00000000bfffffff] usable [ 0.000000] BIOS-e820: [mem 0x00000000f0000000-0x00000000f7ffffff] reserved [ 0.000000] BIOS-e820: [mem 0x00000000fec00000-0x00000000fec0ffff] reserved [ 0.000000] BIOS-e820: [mem 0x00000000fee00000-0x00000000fee00fff] reserved [ 0.000000] BIOS-e820: [mem 0x00000000fffe0000-0x00000000ffffffff] reserved [ 0.000000] BIOS-e820: [mem 0x0000000100000000-0x0000000101bfffff] usable
Imaginez que vous êtes un administrateur système et vous souhaitez détecter le souci sur démarrage du système et vous tomber sur des logs comme ceux présenté ci-dessous. Seriez-vous en mesure de localiser la root cause ? mais même vous trouvez la cause cela n’est qu’après avoir passé des heures à comprendre ce que signifie chaque mot.
C’est là qu’un outil comme Splunk est utile, il permet d’analyse ces data machine, Il vous suffit de transférer les données sur la plateforme pour laisser Splunk se charger de les traîter et de les transformer en informations exploitables, Ainsi vous pouvez aisement détecter d’où vienne le souci technique.
L’un des principaux points forts de Splunk est sa capacité à traiter les données en temps réel, si par exemple vous avez des serveurs qui génèrent constament des logs et que vous souhaitez les analyser en temps réel, Splunk le permet.
Dans cet article nous allons voir comment installer Splunk sur CentOS 7/8.
Télécharger Splunk
Accédez à cet URL et enregistrez-vous en remplissant les champs requis :
Cliquez sur Free Splunk puis sur Splunk Entreprise :
Télechargez ensuite le package pour la plateforme linux :
Installation
Nous n’allons pas installer splunk avec root, ça sera via l’utlisateur splunk que nous allons créer :
[root@server ~]# groupadd splunk [root@server ~]# useradd -d /opt/splunk -m -g splunk splunk
Connectez-vous avec l’utilisateur splunk :
[root@server ~]# su splunk [splunk@server]$
Extractez le fichier tgz :
[root@server ~]# tar xzf splunk-8.2.2-87344edfcdb4-Linux-x86_64.tgz
[root@server ~]# ll
total 758980
drwxr-xr-x. 9 10777 10777 237 Aug 13 04:02 splunk
Copiez le contenu de splunk vers /opt/splunk:
[root@server ~]# cp -rp splunk/* /opt/splunk/
Changez le propriètaire des fichier /opt/splunk à splunk :
[root@server ~]# chown -R splunk: /opt/splunk/
[root@server ~]# ll /opt/splunk/ total 3884 drwxr-xr-x. 4 splunk splunk 4096 Aug 13 04:02 bi -r--r--r--. 1 splunk splunk 57 Aug 13 00:14 copyright.txt drwxr-xr-x. 15 splunk splunk 4096 Aug 13 04:00 etc -rw-r--r--. 1 splunk splunk 0 Aug 13 04:00 ftr drwxr-xr-x. 4 splunk splunk 62 Aug 13 03:59 include drwxr-xr-x. 8 splunk splunk 4096 Aug 13 04:02 lib -r--r--r--. 1 splunk splunk 85440 Aug 13 00:14 license-eula.txt drwxr-xr-x. 3 splunk splunk 58 Aug 13 03:59 openssl -r--r--r--. 1 splunk splunk 520 Aug 13 03:41 README-splunk.txt drwxr-xr-x. 4 splunk splunk 108 Aug 13 03:59 share -r--r--r--. 1 splunk splunk 3867954 Aug 13 04:02 splunk-8.2.2-87344edfcdb4-linux-2.6-x86_64-manifest drwxr-xr-x. 2 splunk splunk 54 Aug 13 04:00 swidtag
Connectez-vous à l’utilisateur splunk et commencez l’installation :
[root@server]$ su splunk [splunk@server]$ cd /opt/splunk/bin [splunk@server bin]$ ./splunk start --accept-license
Créez un utilisateur et un mot de passe :
-bash-4.2$ ./splunk start --accept-license This appears to be your first time running this version of Splunk. Splunk software must create an administrator account during startup. Otherwise, you cannot log in. Create credentials for the administrator account. Characters do not appear on the screen when you type in credentials. Please enter an administrator username: admin Password must contain at least: 8 total printable ASCII character(s). Please enter a new password:Password Please confirm new password:Password Copying '/opt/splunk/etc/openldap/ldap.conf.default' to '/opt/splunk/etc/openldap/ldap.conf'. Generating RSA private key, 2048 bit long modulus …………………………………………………………+++++ ………….+++++ e is 65537 (0x10001) writing RSA key Generating RSA private key, 2048 bit long modulus ……………………+++++ ………..+++++ e is 65537 (0x10001) writing RSA key Moving '/opt/splunk/share/splunk/search_mrsparkle/modules.new' to '/opt/splunk/share/splunk/search_mrsparkle/modules'. Splunk> 4TW Checking prerequisites… Checking http port [8000]: open Checking mgmt port [8089]: open Checking appserver port [127.0.0.1:8065]: open Checking kvstore port [8191]: open Checking configuration… Done. Creating: /opt/splunk/var/lib/splunk Creating: /opt/splunk/var/run/splunk Creating: /opt/splunk/var/run/splunk/appserver/i18n Creating: /opt/splunk/var/run/splunk/appserver/modules/static/css Creating: /opt/splunk/var/run/splunk/upload Creating: /opt/splunk/var/run/splunk/search_telemetry Creating: /opt/splunk/var/spool/splunk Creating: /opt/splunk/var/spool/dirmoncache Creating: /opt/splunk/var/lib/splunk/authDb Creating: /opt/splunk/var/lib/splunk/hashDb New certs have been generated in '/opt/splunk/etc/auth'. Checking critical directories… Done Checking indexes… Validated: _audit _internal _introspection _metrics _metrics_rollup _telemetry _thefishbucket history main summary Done Checking filesystem compatibility… Done Checking conf files for problems… Done Checking default conf files for edits… Validating installed files against hashes from '/opt/splunk/splunk-8.2.2-87344edfcdb4-linux-2.6-x86_64-manifest' All installed files intact. Done All preliminary checks passed. Starting splunk server daemon (splunkd)… Generating a RSA private key ………………………………………………….+++++ ………….+++++ writing new private key to 'privKeySecure.pem' Signature ok subject=/CN=server/O=SplunkUser Getting CA Private Key writing RSA key Done [ OK ] Waiting for web server at http://127.0.0.1:8000 to be available………………. Done If you get stuck, we're here to help. Look for answers here: http://docs.splunk.com The Splunk web interface is at http://server:8000 -bash-4.2$
Autorisez ensuite le port 8000 au niveau du firewall :
[root@server ~]# firewall-cmd --permanent --add-port=8000/tcp success [root@server ~]# firewall-cmd --reload success
Connectez-vous à url « http://nom_serveur:8000 » ( ou http://@IP:8000 ) :
Entrez votre identifiant et le mot de passe que vous avez créé :
Et voilà votre splunk a été bien installé.
7zip: 9 Commandes utiles de les plus utilisés
Migrer CentOS 7 vers Rocky Linux 9
mkfs : Création des systèmes de fichier
Comment installer Netcat sur CentOS 7/8
Fail2Ban : How to protect Linux services