
Du développement à l'exploitation d'Elastic Stack
Description
Introduction au livre
Est-il vraiment nécessaire d'utiliser des technologies open source qui ne sont pas bien compatibles entre elles pour traiter les données ?
Fatigué d'intégrer et d'exploiter différentes sources ouvertes
Des solutions pour les développeurs et les opérateurs ! Désormais, la technologie Elastic Stack est tout ce dont vous avez besoin !
Elastic Stack est passé du simple rôle de moteur de recherche à celui de véritable moteur des systèmes de traitement de données.
Ce livre explique de manière systématique comment tirer parti de l'Elastic Stack pour maximiser les chances de survie de votre entreprise dans un monde en constante évolution.
Vous souhaitez créer un pipeline Big Data d'entreprise pour traiter les données de votre société ? Vous souhaitez développer un moteur de recherche interne pour une extraction rapide des données ? Vous souhaitez traiter et stocker des volumes massifs de données, puis en tirer des enseignements grâce à des visualisations percutantes ? Vous souhaitez extraire des données de plusieurs serveurs, les intégrer, puis visualiser les tendances ou les statistiques ? Elastic Stack est la solution.
Il vous suffit de préparer un ordinateur physique ou une machine virtuelle pour vous entraîner, et ce livre s'occupera du reste.
Ce livre explique les connaissances essentielles dont vous avez besoin pour concevoir, développer et exploiter des applications centrées sur les données à l'aide d'Elastic Stack, avec des exemples spécifiques.
Fatigué d'intégrer et d'exploiter différentes sources ouvertes
Des solutions pour les développeurs et les opérateurs ! Désormais, la technologie Elastic Stack est tout ce dont vous avez besoin !
Elastic Stack est passé du simple rôle de moteur de recherche à celui de véritable moteur des systèmes de traitement de données.
Ce livre explique de manière systématique comment tirer parti de l'Elastic Stack pour maximiser les chances de survie de votre entreprise dans un monde en constante évolution.
Vous souhaitez créer un pipeline Big Data d'entreprise pour traiter les données de votre société ? Vous souhaitez développer un moteur de recherche interne pour une extraction rapide des données ? Vous souhaitez traiter et stocker des volumes massifs de données, puis en tirer des enseignements grâce à des visualisations percutantes ? Vous souhaitez extraire des données de plusieurs serveurs, les intégrer, puis visualiser les tendances ou les statistiques ? Elastic Stack est la solution.
Il vous suffit de préparer un ordinateur physique ou une machine virtuelle pour vous entraîner, et ce livre s'occupera du reste.
Ce livre explique les connaissances essentielles dont vous avez besoin pour concevoir, développer et exploiter des applications centrées sur les données à l'aide d'Elastic Stack, avec des exemples spécifiques.
- Vous pouvez consulter un aperçu du contenu du livre.
Aperçu
indice
Partie 1 | Présentation d'Elastic Stack
Chapitre 1 : Qu'est-ce qu'Elastic Stack ?
1.1 La naissance d'Elasticsearch
1.2 Évolution vers la pile élastique
1.3 Composants de la pile élastique
1.3.1 Elasticsearch : un moteur de recherche distribué
1.3.2 Kibana : un outil de visualisation et de gestion d’Elasticsearch
1.3.3 Logstash : un outil pour collecter et nettoyer les événements
1.3.4 Bits : Un outil de collecte léger qui fonctionne en périphérie.
1.3.5 Autres solutions
1.4 Utilisation d'Elastic Stack
1.4.1 Moteur de recherche spécialisé
1.4.2 Analyse de l'intégration des journaux
1.4.3 Analyse des événements de sécurité
1.4.4 Analyse des performances de l'application
1.4.5 Apprentissage automatique
1.5 Elastic Stack en tant que partie d'une plateforme Big Data
1.5.1 Intégration avec Kafka, un bus de données d'entreprise
1.5.2 Intégration avec l'écosystème Hadoop
1.5.3 Intégration avec les bases de données relationnelles
1.6 Comparaison avec des produits similaires
1.6.1 Produits similaires à Elasticsearch
1.6.2 Produits similaires à Logstash/Beats
1.6.3 Produits similaires à Kibana
1.6.4 Produits similaires dans la suite Elastic
1.7 Documentation systématique et soutien actif de la communauté
1.8 Résumé
Chapitre 2 : Configuration de l’environnement de pratique Windows
2.1 Préparation de l'installation
2.2 Installation d'Elasticsearch
2.2.1 Télécharger Elasticsearch
2.2.2 Exécution d'Elasticsearch
2.3 Installation de Kibana
2.3.1 Télécharger Kibana
2.3.2 Exécution de Kibana
2.4 Vérification de la licence Elastic Stack
2.5 Télécharger une version spécifique
2.6 Résumé
Partie 2 | Composants d'Elastic Stack
Chapitre 3 : Notions de base d’Elasticsearch
3.1 Préparation
3.1.1 Requêtes et réponses Elasticsearch
3.1.2 Utilisation de la console Kibana
3.1.3 Vérification de l'état du système
3.1.4 Chargement des données d'exemple
3.2 Index et documents
3.2.1 Document
3.2.2 Index
3.3 CRUD de documents
3.3.1 Créer/Vérifier/Supprimer un index
3.3.2 Création d'un document
3.3.3 Lecture de documents
3.3.4 Modification de documents
3.3.5 Suppression d'un document
3.4 Message de réponse
3.5 Données en masse
3.6 Cartographie
3.6.1 Cartographie dynamique
3.6.2 Mappage explicite
3.6.3 Types de mappage
3.6.4 Traitement de chaînes de caractères à l'aide de plusieurs champs
3.7 Modèle d'index
3.7.1 Vérification du modèle
3.7.2 Paramètres du modèle
3.7.3 Priorité du modèle
3.7.4 Modèles dynamiques
3.8 Analyseur
3.8.1 Configuration de l'analyseur
3.8.2 Tokeniseur
Filtre 3.8.3
3.8.4 Analyseur personnalisé
3.9 Résumé
Chapitre 4 Elasticsearch : Recherche
4.1 Contexte de requête et contexte de filtre
4.2 Chaînes de requête et DSL de requête
4.2.1 Chaîne de requête
4.2.2 Interroger le DSL
4.3 Score de similarité
4.3.1 Comprendre l'algorithme de score (BM25)
4.3.2 Calcul IDF
4.3.3 Calcul TF
4.4 Requête
4.4.1 Requêtes d'experts et requêtes au niveau des termes
4.4.2 Requêtes de correspondance
4.4.3 Requête de correspondance d'expression
4.4.4 Requêtes de termes
4.4.5 Interrogation des termes
4.4.6 Requêtes à correspondances multiples
4.4.7 Requêtes de plage
4.4.8 Requêtes logiques
4.4.9 Recherche de motifs
4.5 Résumé
Chapitre 5 Elasticsearch : Agrégation
5.1 Format requête-réponse de l'agrégation
5.2 Agrégation des métriques
5.2.1 Calcul de la moyenne/médiane
5.2.2 Vérification du nombre de valeurs uniques dans un champ
5.2.3 Agrégation dans les résultats de recherche
5.3 Agrégation par compartiments
5.3.1 Agrégation d'histogrammes
5.3.2 Agrégation de plages
5.3.3 Agrégation des termes
5.4 Combinaison d'agrégats
5.4.1 Agrégation par compartiments et agrégation de métriques
5.4.2 Agrégation par sous-compartiment 5.5 Agrégation par pipeline
5.5.1 Agrégation des parents 5.5.2 Agrégation des frères et sœurs 5.6 Résumé
Chapitre 6 Logstash
6.1 Introduction à Logstash
6.1.1 Fonctionnalités de Logstash
6.2 Installation de Logstash
6.2.1 Installation du JDK
6.2.2 Télécharger Logstash
6.2.3 Exécution de Logstash
6.3 Pipeline
6.3.1 Entrée
6.3.2 Filtre
6.3.3 Sortie
6.3.4 Codec
6.4 Plusieurs pipelines
6.4.1 Écriture de plusieurs pipelines
6.5 Surveillance
6.5.1 Comment utiliser l'API
6.5.2 Activation de la fonction de surveillance
6.6 Résumé
Chapitre 7 Rythmes
7.1 Présentation des rythmes
7.2 Installation de Beats
7.3 Filebeat
7.3.1 Architecture FileBeat
Téléchargement de Filebeat 7.3.2
7.3.3 Exécution de Filebeat
7.3.4 Paramètres de Filebeat
7.3.5 Module 7.4 Surveillance
7,5 Autres pluies
Utilisation de Tsu
7.6 Résumé
Chapitre 8 Kibana
8.1 Présentation de Kibana
8.1.1 Modèles d'index
8.2 Découvrir
8.2.1 Barre de requête, barre de filtre et sélecteur d'heure
8.3 Visualisation
8.3.1 Graphique à barres
8.3.2 Carte thermique
8.3.3 Générateur visuel de séries temporelles (TSVB)
Tableau de bord 8.4
8.4.1 Création d'un tableau de bord
Toile 8,5
8.5.1 Elasticsearch SQL
8.6 Cartes 8.6.1 Déploiement du serveur Web Windows
8.6.2 Utilisateur
Application de cartes de tuiles personnalisées et de GeoJSON
8.6.3 Clusters et grilles
8.6.4 Application de GeoJSON
8.6.5 Service de cartes en tuiles
8.7 Résumé
Partie 3 | Utilisations pratiques de la pile élastique
Chapitre 9 : Création d’un index à l’aide des fichiers CSV de Kaggle
9.1 Modalités de fonctionnement du cabinet
9.2 Préparation du laboratoire
9.3 Importation de fichiers CSV
9.4 Importation de fichiers à l'aide de Kibana Data Visualizer
9.4.1 Découverte des données
9.5 Importation de fichiers avec Logstash
9.5.1 Lecture des fichiers CSV
9.5.2 Analyse en tant que type date/heure
9.5.3 Analyse syntaxique avec des filtres Ruby
9.6 Indexation
9.6.1 Stockage des données Logstash à l'aide du mappage d'index
9.6.2 Enregistrement des données Logstash à l'aide d'un modèle
9.7 Une analyse rapide dans Kibana
9.7.1 Quel genre de film a été le plus produit au cours des 10 dernières années ?
9.7.2 Dans quelle mesure les films hollywoodiens ayant obtenu de bonnes notes étaient-ils rentables ? Quel était leur budget ?
9.8 Résumé
Chapitre 10 : Analyse des données Twitter coréennes à l’aide de Logstash
10.1 Modalités de fonctionnement du cabinet
10.2 Préparation du laboratoire
10.2.1 Informations pour les développeurs Twitter
10.3 Exécution de Logstash
10.4 Recherche et analyseur morphologique coréen
10.5 Réindexation
10.6 Visualisation des données en temps réel
10.7 Résumé
Chapitre 11 : Analyse des données publiques à l’aide de clients Python
11.1 Déroulement du TP 11.2 Préparation du TP
11.2.1 Obtention d'une clé d'authentification pour les données ouvertes de Séoul
11.2.2 Installation de Python 3.8
11.2.3 Installation de QGIS
11.2.4 Ajout de types de visualisation de cartes
11.3 Analyse de la population par district administratif à Séoul
11.3.1 Importation de données publiques dans Logstash
11.3.2 Création de couches vectorielles utilisateur avec QGIS
11.3.3 Quels sont les quartiers de Séoul qui comptent le plus de ménages composés d'une seule personne ?
11.3.4 Où à Séoul trouve-t-on beaucoup d'étrangers ?
11.4 Création d'une carte du Wi-Fi public de Séoul
11.4.1 Récupération de données publiques à l'aide d'API ouvertes
11.4.2 Exécution d'API ouvertes avec Python
Client Elasticsearch Python 11.4.3
11.4.4 Application cliente Python
11.4.5 Indexation à l'aide de l'API en masse
11.4.6 Visualisation des points d'accès Wi-Fi publics à Séoul 11.5 Résumé, partie 4 | Opérations élastiques
Chapitre 12 : Configuration d’un environnement de pratique Linux
12.1 Installation d'Ubuntu dans VirtualBox
12.2 Installation d'Elasticsearch
12.2.1 Installation via wget
12.2.2 Installation à l'aide du gestionnaire de paquets Linux
12.3 Installation de Kibana 12.3.1 Installation via wget
12.3.2 Installation à l'aide du gestionnaire de paquets Linux 12.4 Résumé
Chapitre 13 : Configuration des clusters et des nœuds
13.1 Couche HTTP et couche transport
13.2 Nœud
13.2.1 Nœud maître
13.2.2 Nœud de données
13.2.3 Nœud d'ingestion
13.2.4 Autres nœuds
13.2.5 Nœud dédié
13.3 Configuration des nœuds et configuration du système
13.3.1 Petits groupes
13.3.2 Grands groupes
13.3.3 Configuration des nœuds chauds/tièdes/froids
13.4 Sauvegarde du cluster
13.4.1 Enregistrement d'un dépôt
13.4.2 Prise d'un instantané
13.4.3 Restauration d'un instantané
13,5 fragments
13.5.1 Fragments primaires et répliques
13.5.2 Processus d'allocation des fragments
13.5.3 Surveillance de l'état des fragments
13.6 Guide de configuration du nombre et de la taille des fragments
Guide du nombre de fragments 13.6.1
Guide des tailles de fragments 13.6.2
13.7 Paramètres
13.7.1 Configuration du cluster
13.7.2 Paramètres du nœud 13.7.3 Paramètres de l'index
13.8 Résumé
Chapitre 14 : Création d’un groupe opérationnel
14.1 Considérations relatives au groupe de production pour la performance et la stabilité
14.1.1 Planification de la configuration des nœuds
14.1.2 Sélection du matériel
14.1.3 Sélection d'une version d'Elasticsearch
14.2 Configuration du cluster
14.2.1 Installation du nœud
14.2.2 Mode de développement et mode de fonctionnement
14.2.3 Réglage du mode de fonctionnement
14.2.4 Vérification de l'exécution et de la configuration
14.3 Paramètres de sécurité
14.3.1 Création d'un certificat
14.3.2 Chiffrement des communications entre nœuds
14.3.3 Chiffrement des communications du client HTTP
14.3.4 Démarrage du cluster et configuration des utilisateurs intégrés
14.3.5 Chiffrement des communications entre Kibana et Elasticsearch
14.3.6 Chiffrement des communications entre Kibana et le navigateur
14.4 Inscription et gestion des utilisateurs
14.4.1 Définition des rôles des utilisateurs
14.4.2 Ajout d'utilisateurs et attribution de rôles
14.5 Résumé
Chapitre 1 : Qu'est-ce qu'Elastic Stack ?
1.1 La naissance d'Elasticsearch
1.2 Évolution vers la pile élastique
1.3 Composants de la pile élastique
1.3.1 Elasticsearch : un moteur de recherche distribué
1.3.2 Kibana : un outil de visualisation et de gestion d’Elasticsearch
1.3.3 Logstash : un outil pour collecter et nettoyer les événements
1.3.4 Bits : Un outil de collecte léger qui fonctionne en périphérie.
1.3.5 Autres solutions
1.4 Utilisation d'Elastic Stack
1.4.1 Moteur de recherche spécialisé
1.4.2 Analyse de l'intégration des journaux
1.4.3 Analyse des événements de sécurité
1.4.4 Analyse des performances de l'application
1.4.5 Apprentissage automatique
1.5 Elastic Stack en tant que partie d'une plateforme Big Data
1.5.1 Intégration avec Kafka, un bus de données d'entreprise
1.5.2 Intégration avec l'écosystème Hadoop
1.5.3 Intégration avec les bases de données relationnelles
1.6 Comparaison avec des produits similaires
1.6.1 Produits similaires à Elasticsearch
1.6.2 Produits similaires à Logstash/Beats
1.6.3 Produits similaires à Kibana
1.6.4 Produits similaires dans la suite Elastic
1.7 Documentation systématique et soutien actif de la communauté
1.8 Résumé
Chapitre 2 : Configuration de l’environnement de pratique Windows
2.1 Préparation de l'installation
2.2 Installation d'Elasticsearch
2.2.1 Télécharger Elasticsearch
2.2.2 Exécution d'Elasticsearch
2.3 Installation de Kibana
2.3.1 Télécharger Kibana
2.3.2 Exécution de Kibana
2.4 Vérification de la licence Elastic Stack
2.5 Télécharger une version spécifique
2.6 Résumé
Partie 2 | Composants d'Elastic Stack
Chapitre 3 : Notions de base d’Elasticsearch
3.1 Préparation
3.1.1 Requêtes et réponses Elasticsearch
3.1.2 Utilisation de la console Kibana
3.1.3 Vérification de l'état du système
3.1.4 Chargement des données d'exemple
3.2 Index et documents
3.2.1 Document
3.2.2 Index
3.3 CRUD de documents
3.3.1 Créer/Vérifier/Supprimer un index
3.3.2 Création d'un document
3.3.3 Lecture de documents
3.3.4 Modification de documents
3.3.5 Suppression d'un document
3.4 Message de réponse
3.5 Données en masse
3.6 Cartographie
3.6.1 Cartographie dynamique
3.6.2 Mappage explicite
3.6.3 Types de mappage
3.6.4 Traitement de chaînes de caractères à l'aide de plusieurs champs
3.7 Modèle d'index
3.7.1 Vérification du modèle
3.7.2 Paramètres du modèle
3.7.3 Priorité du modèle
3.7.4 Modèles dynamiques
3.8 Analyseur
3.8.1 Configuration de l'analyseur
3.8.2 Tokeniseur
Filtre 3.8.3
3.8.4 Analyseur personnalisé
3.9 Résumé
Chapitre 4 Elasticsearch : Recherche
4.1 Contexte de requête et contexte de filtre
4.2 Chaînes de requête et DSL de requête
4.2.1 Chaîne de requête
4.2.2 Interroger le DSL
4.3 Score de similarité
4.3.1 Comprendre l'algorithme de score (BM25)
4.3.2 Calcul IDF
4.3.3 Calcul TF
4.4 Requête
4.4.1 Requêtes d'experts et requêtes au niveau des termes
4.4.2 Requêtes de correspondance
4.4.3 Requête de correspondance d'expression
4.4.4 Requêtes de termes
4.4.5 Interrogation des termes
4.4.6 Requêtes à correspondances multiples
4.4.7 Requêtes de plage
4.4.8 Requêtes logiques
4.4.9 Recherche de motifs
4.5 Résumé
Chapitre 5 Elasticsearch : Agrégation
5.1 Format requête-réponse de l'agrégation
5.2 Agrégation des métriques
5.2.1 Calcul de la moyenne/médiane
5.2.2 Vérification du nombre de valeurs uniques dans un champ
5.2.3 Agrégation dans les résultats de recherche
5.3 Agrégation par compartiments
5.3.1 Agrégation d'histogrammes
5.3.2 Agrégation de plages
5.3.3 Agrégation des termes
5.4 Combinaison d'agrégats
5.4.1 Agrégation par compartiments et agrégation de métriques
5.4.2 Agrégation par sous-compartiment 5.5 Agrégation par pipeline
5.5.1 Agrégation des parents 5.5.2 Agrégation des frères et sœurs 5.6 Résumé
Chapitre 6 Logstash
6.1 Introduction à Logstash
6.1.1 Fonctionnalités de Logstash
6.2 Installation de Logstash
6.2.1 Installation du JDK
6.2.2 Télécharger Logstash
6.2.3 Exécution de Logstash
6.3 Pipeline
6.3.1 Entrée
6.3.2 Filtre
6.3.3 Sortie
6.3.4 Codec
6.4 Plusieurs pipelines
6.4.1 Écriture de plusieurs pipelines
6.5 Surveillance
6.5.1 Comment utiliser l'API
6.5.2 Activation de la fonction de surveillance
6.6 Résumé
Chapitre 7 Rythmes
7.1 Présentation des rythmes
7.2 Installation de Beats
7.3 Filebeat
7.3.1 Architecture FileBeat
Téléchargement de Filebeat 7.3.2
7.3.3 Exécution de Filebeat
7.3.4 Paramètres de Filebeat
7.3.5 Module 7.4 Surveillance
7,5 Autres pluies
Utilisation de Tsu
7.6 Résumé
Chapitre 8 Kibana
8.1 Présentation de Kibana
8.1.1 Modèles d'index
8.2 Découvrir
8.2.1 Barre de requête, barre de filtre et sélecteur d'heure
8.3 Visualisation
8.3.1 Graphique à barres
8.3.2 Carte thermique
8.3.3 Générateur visuel de séries temporelles (TSVB)
Tableau de bord 8.4
8.4.1 Création d'un tableau de bord
Toile 8,5
8.5.1 Elasticsearch SQL
8.6 Cartes 8.6.1 Déploiement du serveur Web Windows
8.6.2 Utilisateur
Application de cartes de tuiles personnalisées et de GeoJSON
8.6.3 Clusters et grilles
8.6.4 Application de GeoJSON
8.6.5 Service de cartes en tuiles
8.7 Résumé
Partie 3 | Utilisations pratiques de la pile élastique
Chapitre 9 : Création d’un index à l’aide des fichiers CSV de Kaggle
9.1 Modalités de fonctionnement du cabinet
9.2 Préparation du laboratoire
9.3 Importation de fichiers CSV
9.4 Importation de fichiers à l'aide de Kibana Data Visualizer
9.4.1 Découverte des données
9.5 Importation de fichiers avec Logstash
9.5.1 Lecture des fichiers CSV
9.5.2 Analyse en tant que type date/heure
9.5.3 Analyse syntaxique avec des filtres Ruby
9.6 Indexation
9.6.1 Stockage des données Logstash à l'aide du mappage d'index
9.6.2 Enregistrement des données Logstash à l'aide d'un modèle
9.7 Une analyse rapide dans Kibana
9.7.1 Quel genre de film a été le plus produit au cours des 10 dernières années ?
9.7.2 Dans quelle mesure les films hollywoodiens ayant obtenu de bonnes notes étaient-ils rentables ? Quel était leur budget ?
9.8 Résumé
Chapitre 10 : Analyse des données Twitter coréennes à l’aide de Logstash
10.1 Modalités de fonctionnement du cabinet
10.2 Préparation du laboratoire
10.2.1 Informations pour les développeurs Twitter
10.3 Exécution de Logstash
10.4 Recherche et analyseur morphologique coréen
10.5 Réindexation
10.6 Visualisation des données en temps réel
10.7 Résumé
Chapitre 11 : Analyse des données publiques à l’aide de clients Python
11.1 Déroulement du TP 11.2 Préparation du TP
11.2.1 Obtention d'une clé d'authentification pour les données ouvertes de Séoul
11.2.2 Installation de Python 3.8
11.2.3 Installation de QGIS
11.2.4 Ajout de types de visualisation de cartes
11.3 Analyse de la population par district administratif à Séoul
11.3.1 Importation de données publiques dans Logstash
11.3.2 Création de couches vectorielles utilisateur avec QGIS
11.3.3 Quels sont les quartiers de Séoul qui comptent le plus de ménages composés d'une seule personne ?
11.3.4 Où à Séoul trouve-t-on beaucoup d'étrangers ?
11.4 Création d'une carte du Wi-Fi public de Séoul
11.4.1 Récupération de données publiques à l'aide d'API ouvertes
11.4.2 Exécution d'API ouvertes avec Python
Client Elasticsearch Python 11.4.3
11.4.4 Application cliente Python
11.4.5 Indexation à l'aide de l'API en masse
11.4.6 Visualisation des points d'accès Wi-Fi publics à Séoul 11.5 Résumé, partie 4 | Opérations élastiques
Chapitre 12 : Configuration d’un environnement de pratique Linux
12.1 Installation d'Ubuntu dans VirtualBox
12.2 Installation d'Elasticsearch
12.2.1 Installation via wget
12.2.2 Installation à l'aide du gestionnaire de paquets Linux
12.3 Installation de Kibana 12.3.1 Installation via wget
12.3.2 Installation à l'aide du gestionnaire de paquets Linux 12.4 Résumé
Chapitre 13 : Configuration des clusters et des nœuds
13.1 Couche HTTP et couche transport
13.2 Nœud
13.2.1 Nœud maître
13.2.2 Nœud de données
13.2.3 Nœud d'ingestion
13.2.4 Autres nœuds
13.2.5 Nœud dédié
13.3 Configuration des nœuds et configuration du système
13.3.1 Petits groupes
13.3.2 Grands groupes
13.3.3 Configuration des nœuds chauds/tièdes/froids
13.4 Sauvegarde du cluster
13.4.1 Enregistrement d'un dépôt
13.4.2 Prise d'un instantané
13.4.3 Restauration d'un instantané
13,5 fragments
13.5.1 Fragments primaires et répliques
13.5.2 Processus d'allocation des fragments
13.5.3 Surveillance de l'état des fragments
13.6 Guide de configuration du nombre et de la taille des fragments
Guide du nombre de fragments 13.6.1
Guide des tailles de fragments 13.6.2
13.7 Paramètres
13.7.1 Configuration du cluster
13.7.2 Paramètres du nœud 13.7.3 Paramètres de l'index
13.8 Résumé
Chapitre 14 : Création d’un groupe opérationnel
14.1 Considérations relatives au groupe de production pour la performance et la stabilité
14.1.1 Planification de la configuration des nœuds
14.1.2 Sélection du matériel
14.1.3 Sélection d'une version d'Elasticsearch
14.2 Configuration du cluster
14.2.1 Installation du nœud
14.2.2 Mode de développement et mode de fonctionnement
14.2.3 Réglage du mode de fonctionnement
14.2.4 Vérification de l'exécution et de la configuration
14.3 Paramètres de sécurité
14.3.1 Création d'un certificat
14.3.2 Chiffrement des communications entre nœuds
14.3.3 Chiffrement des communications du client HTTP
14.3.4 Démarrage du cluster et configuration des utilisateurs intégrés
14.3.5 Chiffrement des communications entre Kibana et Elasticsearch
14.3.6 Chiffrement des communications entre Kibana et le navigateur
14.4 Inscription et gestion des utilisateurs
14.4.1 Définition des rôles des utilisateurs
14.4.2 Ajout d'utilisateurs et attribution de rôles
14.5 Résumé
Image détaillée
.jpg)
Avis de l'éditeur
Ce que ce livre couvre
- Introduction à l'utilisation de base d'Elasticsearch, Logstash, Beats et Kibana
- Un exemple concret de projet démontrant comment utiliser correctement les caractéristiques d'Elastic Stack. - Un résumé pratique des points à garder à l'esprit pendant l'utilisation.
Caractéristiques de ce livre
- De nombreux exemples que toute personne souhaitant se familiariser rapidement avec Elastic Stack peut facilement suivre.
- Comment utiliser les moteurs de recherche et comment construire un pipeline de données massives
- Surveillance de la pile Elastic et visualisation des données collectées de différentes manières
- L'ensemble du processus, de la collecte des données à leur visualisation, est mis en œuvre en utilisant uniquement des composants de la suite Elastic.
- Exemples d'application des analyseurs morphologiques coréens
- Exemples de visualisation cartographique utilisant des données publiques et des données SIG
- Introduction aux méthodes de configuration des clusters/fragments et d'amélioration de la sécurité nécessaires au processus d'exploitation.
Public cible de ce livre
- Les développeurs de terrain qui doivent effectuer des tâches de traitement, de recherche, de transformation, d'analyse et de visualisation des données.
- Les opérateurs de serveurs qui doivent garantir la haute disponibilité, la stabilité et la sécurité des données massives.
- Les architectes qui souhaitent concevoir ou mettre en œuvre une plateforme de big data en utilisant une seule technologie open source.
- Technologies Elastic Stack : Développeurs ou opérateurs intéressés par Elastic Search, Logstash, Beats et Kibana.
Structure de ce livre
Dans la première partie, « Présentation d’Elastic Stack », nous explorerons l’histoire, l’objectif et les composants d’Elastic Stack, et nous apprendrons à installer Elasticsearch et Kibana.
Le chapitre 1, « Qu'est-ce que la suite Elastic ? », couvre l'histoire d'Elastic, ses composants, comment utiliser des services de recherche spécialisés et des services de surveillance des journaux à l'aide de la suite Elastic, ainsi que l'état et le rôle de la suite Elastic dans les plateformes de données massives.
Nous examinerons également les différences entre Elastic Stack et d'autres solutions.
Dans le chapitre 2, « Configuration de l'environnement de laboratoire Windows », nous apprendrons comment installer Elasticsearch et Kibana version 7.10.1 dans un environnement Windows.
La deuxième partie, « Composants d’Elastic Stack », examine de plus près les composants d’Elastic Stack : Elasticsearch, Kibana, Logstash et Beats.
Dans le chapitre 3, « Notions de base d'Elasticsearch », nous apprendrons les index et les documents Elasticsearch, et nous comprendrons le CRUD des documents et la structure des index.
Vous apprendrez également à stocker des documents dans Elasticsearch tout en découvrant les mappages, les modèles d'index, les analyseurs, et bien plus encore.
Dans le chapitre 4, « ElasticSearch : Recherche », nous apprendrons l'algorithme BM25 utilisé dans les requêtes d'index, les différences entre les requêtes plein texte et les requêtes au niveau des termes, et les méthodes de recherche en exécutant directement des requêtes représentatives.
Dans le chapitre 5, « Elasticsearch : Agrégation », vous découvrirez l'agrégation de métriques pour obtenir des informations statistiques, l'agrégation par compartiments pour diviser les documents et l'agrégation par pipeline utilisant plusieurs agrégations.
Dans le chapitre 6, « Logstash », vous apprendrez comment installer Logstash et JDK, comment écrire des pipelines, comment utiliser des plugins, etc.
Nous examinerons également la surveillance Logstash.
Dans le chapitre 7, « Beats », vous apprendrez comment installer Beats et les étapes à suivre pour installer et exécuter Beats à l'aide de FileBeat.
Nous apprendrons également à configurer et à surveiller facilement Beats à l'aide de modules.
Dans le chapitre 8, « Kibana », nous apprendrons à utiliser les menus de visualisation : Découvrir, Visualisation, Tableau de bord, Canevas et Cartes.
Dans la partie 3, « Applications pratiques d'Elastic Stack », nous aborderons plusieurs projets pouvant être mis en œuvre avec Elastic Stack en nous basant sur ce que nous avons appris dans les parties 1 et 2.
Dans le chapitre 9, « Création d'un index à l'aide de fichiers CSV Kaggle », nous allons télécharger des fichiers CSV de films téléchargés depuis Kaggle vers Elastic Stack, puis analyser les données.
Dans ce processus, les données sont purifiées à l'aide de filtres Logstash Ruby, etc., et un index est créé à l'aide de modèles de mappage et d'index.
Dans le chapitre 10, « Analyser les données Twitter coréennes avec Logstash », vous apprendrez comment obtenir des données sociales à l'aide du plugin Twitter de Logstash et comment analyser les données coréennes avec l'analyseur Nori.
Nous verrons comment repenser votre index et visualiser les données en temps réel dans Kibana.
Le chapitre 11, « Analyse des données publiques à l'aide de clients Python », explique comment développer des applications clientes Elasticsearch à l'aide de Python.
Dans ce cours, vous apprendrez à utiliser les API publiques et à créer et visualiser des couches vectorielles utilisables sur des cartes avec QGIS.
Dans la partie 4, « Opérations élastiques », vous apprendrez comment installer la pile élastique dans un environnement Linux et découvrirez les nœuds, les partitions, les index et leurs paramètres, qui constituent les bases d'un cluster.
Nous allons également nous exercer à configurer un cluster avec trois nœuds réels.
Dans le chapitre 12, « Configuration de l'environnement de laboratoire Linux », nous apprendrons comment installer Elasticsearch et Kibana version 7.10.1 dans un environnement Linux.
Le chapitre 13, « Configuration du cluster et des nœuds », explique le rôle des nœuds et fournit un guide pour la configuration du cluster.
Nous apprendrons également à configurer le stockage à chaud/à tiède et à effectuer des sauvegardes, et nous explorerons le partitionnement et l'optimisation du partitionnement.
Enfin, vous apprendrez à configurer des nœuds et des clusters.
Dans le chapitre 14, « Création d'un cluster opérationnel », vous apprendrez comment sélectionner le matériel pour les opérations, configurer un cluster et activer les fonctions de sécurité.
Enfin, nous examinerons comment distinguer les rôles des utilisateurs nécessaires au fonctionnement.
Environnement de développement pour l'utilisation de ce livre
Elasticsearch 7.10.1
- Kibana 7.10.1
- Logstash 7.10.1
- Filebeat 7.10.1
- Windows 10 (utilisé dans les parties 2 et 3)
- Linux Ubuntu 18.04 (utilisé dans la partie 4)
- JDK 8
- Python 3.8
[Note de l'auteur]
Je me souviens de la première fois où nous avons introduit Git dans notre entreprise en 2008.
Notre département, qui était une équipe de développement Linux, a décidé d'adopter Git, un nouvel outil de gestion de configuration créé par Linus Torvalds (le fondateur de Linux), au lieu de l'outil de gestion de configuration payant que nous utilisions auparavant.
Cependant, à cette époque, Git en était à ses débuts et disposait de peu de fonctionnalités conviviales, et personne ne savait comment l'utiliser, ce qui le rendait difficile à utiliser.
La sortie du produit étant imminente, le moindre conflit de commits entre les développeurs m'obligeait à passer la nuit à démêler l'historique Git.
Avec le recul, je pense que le problème venait du fait que je n'avais appris que l'utilisation présentée dans le tutoriel et que je l'appliquais directement à des situations réelles sans comprendre les concepts de base de Git, tels que le stockage distant et les zones de préparation.
Il était difficile d'utiliser correctement les outils et difficile de résoudre les problèmes lorsqu'ils survenaient.
Depuis, j'ai utilisé de nombreux frameworks, bibliothèques et programmes, mais j'ai toujours ressenti une certaine frustration.
Il y avait aussi la difficulté de lire la documentation de développement rédigée en anglais, et une culture où le temps passé à autre chose qu'à écrire du code était considéré comme du temps perdu.
N'ayant pas pleinement compris le système et l'utilisant de manière désordonnée, j'avais l'impression de ne pas pouvoir exploiter pleinement ses fonctionnalités.
Parfois, lorsque je rencontrais des problèmes ou que j'avais des difficultés à écrire du code, je cherchais de l'aide sur Google et Stack Overflow.
J'étais reconnaissante pour les codes que j'ai trouvés sur Internet et pour les personnes qui ont gentiment répondu à mes questions, mais en même temps, j'étais déçue de moi-même, me demandant : « Pourquoi était-ce si difficile pour moi d'écrire du code ? » et « Pourquoi n'ai-je pas pu l'appliquer ? »
Bien sûr, comme je n'avais pas de connaissances de base, ma compréhension et mes compétences d'application ne pouvaient pas être bonnes.
C’est sur ce point que je me suis le plus concentré lors de l’écriture de ce livre.
À travers ce livre, je souhaitais enseigner aux lecteurs les principes fondamentaux et les bases d'un framework appelé Elastic Stack.
J'espérais que les lecteurs acquerraient au moins une compréhension de base du framework qu'ils utilisaient et commenceraient à écrire du code.
Les points importants ont été expliqués à plusieurs reprises pour garantir une compréhension complète, et les points moins importants ont été volontairement omis par manque de place.
Au cas où certains points nécessiteraient des explications supplémentaires, j'ai fourni des liens vers la documentation en ligne.
La plupart des explications contenues dans ce livre sont disponibles dans la documentation officielle ou sur le blog d'Elastic, mais il serait préférable pour les lecteurs de commencer par comprendre le tableau d'ensemble grâce à ce livre plutôt que d'apprendre les informations de manière fragmentaire sur Internet.
Comprendre les bases ou la structure d'un framework facilitera les recherches plus intelligentes, la compréhension du code et des explications, ou des questions et réponses, et permettra de s'en souvenir durablement.
Un autre point auquel j'ai porté attention lors de la rédaction de ce livre est sa différence avec les ouvrages existants sur l'élasticité.
Lorsque j'ai initialement planifié ce livre, je souhaitais écrire un ouvrage sur l'utilisation d'Elastic Stack, qui était totalement indisponible sur le marché.
Cependant, conformément à l'avis de l'éditeur selon lequel nous devions nous concentrer davantage sur les fondamentaux, nous avons modifié le livre pour qu'il couvre l'explication, l'utilisation et le fonctionnement général d'Elastic Stack.
Contrairement aux ouvrages existants qui traitent uniquement d'Elasticsearch en détail, ce livre a réduit la part consacrée à Elasticsearch et augmenté celle de l'ensemble de la suite Elastic, incluant Logstash, Beats et Kibana.
Et si vous ne pouvez pas tout expliquer, vous pouvez modifier votre propos en omettant les détails et en mettant plutôt l'accent sur les points fondamentaux, voire en présentant des cas d'utilisation.
Enfin, je tiens à remercier Shai Bannon, le créateur d'Elastic, les innombrables contributeurs qui ont amélioré Elastic, et, plus largement, les développeurs qui ont créé Lucene, les systèmes distribués et d'autres initiatives qui ont façonné le paysage informatique dans lequel nous vivons aujourd'hui.
- Kim Jun-young
Lorsque j'ai découvert Elastic Stack (alors appelé ELK Stack) pour construire un système de surveillance des journaux, c'était un peu le bazar et la confusion.
À cette époque, Elasticsearch était perçu comme un outil capable d'effectuer des recherches plein texte rapides grâce à l'indexation, ou comme un système stockant des données fiables dans une base de données relationnelle et facilitant également l'indexation.
Mais après avoir creusé un peu plus, j'ai réalisé qu'il était possible de stocker les données originales et d'accroître la fiabilité en configurant des répliques, et que cela pouvait être utilisé comme une base de données.
La rapidité de la recherche et de l'agrégation semblait être une solution révolutionnaire aux problèmes de performance de la solution de surveillance que je développais à l'époque, et après avoir utilisé Logstash et Kibana moi-même, j'ai réalisé qu'il serait préférable pour moi d'utiliser la suite Elastic plutôt que de l'implémenter moi-même avec d'autres technologies.
En voyant comment l'Elastic Stack, que je venais de construire, pouvait facilement gérer des volumes de données d'un niveau que je n'avais jamais imaginé auparavant, j'ai eu l'intuition que l'ère de l'Elastic Stack était véritablement arrivée.
La mise en place d'une plateforme de données nécessite l'implémentation de diverses fonctions, notamment la collecte, le traitement, le stockage, la recherche et la visualisation des données. Il est également nécessaire d'étudier et d'intégrer différentes solutions logicielles, en tenant compte de leurs performances, de leur flexibilité et d'autres facteurs.
Elastic Stack, désormais une technologie bien connue, a atteint le statut de pile logicielle véritablement à toute épreuve, capable de constituer une plateforme de données complète en soi, possédant tous ces éléments, ainsi que la facilité de déploiement, la facilité d'utilisation, l'évolutivité, d'excellentes performances, une tolérance aux pannes élevée et une haute disponibilité.
Cependant, étant donné ses nombreuses fonctionnalités et sa facilité de déploiement, une bonne connaissance de base de la plateforme de données globale, du clustering, du traitement distribué, de l'indexation, etc. est nécessaire pour l'utiliser correctement.
Si vous l'utilisez sans une compréhension approfondie, vous risquez de rencontrer des problèmes inattendus en termes de performances, de sécurité ou d'autres aspects opérationnels.
De plus, les mises à jour rapides et les fonctionnalités supplémentaires qui les accompagnent, qui constituent à la fois des avantages et des inconvénients de la suite Elastic, peuvent rendre difficile pour les utilisateurs de savoir quelles fonctionnalités utiliser et par où commencer.
J'ai tenté de fournir dans ce livre des informations exactes et trompeuses sur la structure et les principes de fonctionnement d'Elastic Stack.
Bien que cet article ne couvre pas toutes les fonctionnalités de la vaste suite Elastic Stack, je souhaitais mettre en lumière les plus essentielles afin que les lecteurs puissent découvrir un plus large éventail de fonctionnalités d'Elastic Stack.
De plus, je souhaitais souligner l'attrait de chaque produit au sein de la suite, chacun remplissant parfaitement son rôle, et pas seulement celui du moteur de recherche haute performance Elasticsearch et de ses logiciels associés.
Non seulement Elastic Stack bénéficie d'une communauté nationale très active, mais il existe également de nombreuses contributions open source d'utilisateurs coréens.
J'espère que ce livre transmettra pleinement le charme d'Elastic, et j'espère par ailleurs qu'il augmentera le nombre de contributeurs à la communauté Elastic et au logiciel libre.
- Jeong Sang-un
[Note de l'éditeur]
Pour les besoins de cette évaluation, j'ai lu et relu l'intégralité de ce livre, de la première ébauche à la relecture finale. À chaque fois, j'ai eu la satisfaction de voir apparaître clairement les différentes fonctions et utilisations essentielles de la suite Elastic Stack.
En général, lire un livre technique plusieurs fois finit par devenir un peu ennuyeux, mais avec celui-ci, j'avais l'impression d'apprendre quelque chose d'important à chaque lecture.
Les développeurs qui n'ont jamais utilisé Elastic auparavant, ainsi que ceux qui pensent le connaître un peu, se reconnaîtront dans les propos du critique lorsqu'ils liront ce livre.
Au lieu de disperser des informations importantes et sans importance dans tout le livre pour tout expliquer de manière exhaustive, ce livre se concentre sur les 20 % qui peuvent produire 80 % de l'effet, en suivant strictement le principe de Pareto.
Par conséquent, le rythme et la cohérence du développement du texte sont assez élevés.
De plus, il va au-delà des descriptions des API et des fonctions du catalogue et fournit d'excellents exemples pour vous aider à apprendre rapidement les concepts de base ; tout au long du livre, il transforme les théories abstraites en exemples concrets et tangibles.
Pour ceux qui en ont assez de collecter des connaissances fragmentées sur Internet tout en se demandant quand, où et comment utiliser au mieux la suite Elastic Stack, ce livre sera une oasis qui étanchera leur soif.
Comme indiqué dans le texte principal, la suite Elastic Stack n'est pas particulièrement difficile à utiliser, de l'installation à l'utilisation proprement dite ; vous pourriez donc penser que vous pouvez commencer à l'utiliser immédiatement.
Cependant, ce n'est pas parce qu'il est facile de commencer qu'il est facile de le maîtriser.
La suite Elastic Stack offre des fonctionnalités puissantes pour la construction de pipelines de données volumineux complets ; il y a donc beaucoup à apprendre, et l’apprentissage actif – apprendre en l’utilisant et continuer à apprendre en l’utilisant – est essentiel.
L'une des caractéristiques clés de ce livre, très utile dans le processus d'apprentissage actif, réside dans ses explications orientées vers un objectif précis.
Au lieu d'expliquer sans contexte l'existence de diverses fonctions, il explique clairement quelles fonctions Elastic doivent être utilisées pour réaliser différentes tâches.
Par exemple, face à deux fonctions similaires, il est essentiel de connaître leurs différences précises et leurs modes d'utilisation spécifiques pour atteindre l'objectif visé, qu'il s'agisse de performances ou d'économie d'espace de stockage. Cet ouvrage explique la raison d'être et les principes fondamentaux de chaque fonction et propose, par le biais d'une comparaison, le choix le plus adapté à chaque situation.
Il explore également en profondeur les mécanismes internes des problèmes qui doivent être pris en compte au-delà du processus de développement (essentiels et difficiles à compromettre) lors de l'exploitation réelle, en utilisant des illustrations et des scénarios détaillés pour expliquer clairement les raisons de cette démarche et des directives spécifiques.
Les protagonistes méconnus de ce livre sont les trois projets présentés dans la section consacrée à l'utilisation d'Elastic Stack.
Lors de la réalisation d'un projet de traitement de données volumineuses, vous vous êtes peut-être demandé comment mener à bien l'ensemble du processus, de la collecte à la visualisation des données, en utilisant uniquement la suite Elastic, plutôt que de recourir à diverses sources open source et de les connecter de manière complexe. Ce livre présente l'intégralité du processus de visualisation sur une carte, en traitant avec précision des données réelles issues de Kaggle, Twitter et d'autres sources publiques ; il ne s'agit pas de simples exemples.
Ce cours aborde tous les aspects, depuis la connexion des différents composants de la suite Elastic jusqu'à l'utilisation des filtres pour une connexion fluide, en passant par la programmation nécessaire à l'implémentation de la logique métier. Il constitue donc, à mon avis, un cas d'utilisation ou un exemple pratique pertinent pour une utilisation optimale de la suite Elastic.
Ce livre, qui regorge de contenus soigneusement sélectionnés en fonction de la vaste expérience pratique des auteurs, vise à servir de levier aux lecteurs pour utiliser activement les riches fonctionnalités et les performances puissantes de l'Elastic Stack dans la résolution de problèmes concrets.
- Introduction à l'utilisation de base d'Elasticsearch, Logstash, Beats et Kibana
- Un exemple concret de projet démontrant comment utiliser correctement les caractéristiques d'Elastic Stack. - Un résumé pratique des points à garder à l'esprit pendant l'utilisation.
Caractéristiques de ce livre
- De nombreux exemples que toute personne souhaitant se familiariser rapidement avec Elastic Stack peut facilement suivre.
- Comment utiliser les moteurs de recherche et comment construire un pipeline de données massives
- Surveillance de la pile Elastic et visualisation des données collectées de différentes manières
- L'ensemble du processus, de la collecte des données à leur visualisation, est mis en œuvre en utilisant uniquement des composants de la suite Elastic.
- Exemples d'application des analyseurs morphologiques coréens
- Exemples de visualisation cartographique utilisant des données publiques et des données SIG
- Introduction aux méthodes de configuration des clusters/fragments et d'amélioration de la sécurité nécessaires au processus d'exploitation.
Public cible de ce livre
- Les développeurs de terrain qui doivent effectuer des tâches de traitement, de recherche, de transformation, d'analyse et de visualisation des données.
- Les opérateurs de serveurs qui doivent garantir la haute disponibilité, la stabilité et la sécurité des données massives.
- Les architectes qui souhaitent concevoir ou mettre en œuvre une plateforme de big data en utilisant une seule technologie open source.
- Technologies Elastic Stack : Développeurs ou opérateurs intéressés par Elastic Search, Logstash, Beats et Kibana.
Structure de ce livre
Dans la première partie, « Présentation d’Elastic Stack », nous explorerons l’histoire, l’objectif et les composants d’Elastic Stack, et nous apprendrons à installer Elasticsearch et Kibana.
Le chapitre 1, « Qu'est-ce que la suite Elastic ? », couvre l'histoire d'Elastic, ses composants, comment utiliser des services de recherche spécialisés et des services de surveillance des journaux à l'aide de la suite Elastic, ainsi que l'état et le rôle de la suite Elastic dans les plateformes de données massives.
Nous examinerons également les différences entre Elastic Stack et d'autres solutions.
Dans le chapitre 2, « Configuration de l'environnement de laboratoire Windows », nous apprendrons comment installer Elasticsearch et Kibana version 7.10.1 dans un environnement Windows.
La deuxième partie, « Composants d’Elastic Stack », examine de plus près les composants d’Elastic Stack : Elasticsearch, Kibana, Logstash et Beats.
Dans le chapitre 3, « Notions de base d'Elasticsearch », nous apprendrons les index et les documents Elasticsearch, et nous comprendrons le CRUD des documents et la structure des index.
Vous apprendrez également à stocker des documents dans Elasticsearch tout en découvrant les mappages, les modèles d'index, les analyseurs, et bien plus encore.
Dans le chapitre 4, « ElasticSearch : Recherche », nous apprendrons l'algorithme BM25 utilisé dans les requêtes d'index, les différences entre les requêtes plein texte et les requêtes au niveau des termes, et les méthodes de recherche en exécutant directement des requêtes représentatives.
Dans le chapitre 5, « Elasticsearch : Agrégation », vous découvrirez l'agrégation de métriques pour obtenir des informations statistiques, l'agrégation par compartiments pour diviser les documents et l'agrégation par pipeline utilisant plusieurs agrégations.
Dans le chapitre 6, « Logstash », vous apprendrez comment installer Logstash et JDK, comment écrire des pipelines, comment utiliser des plugins, etc.
Nous examinerons également la surveillance Logstash.
Dans le chapitre 7, « Beats », vous apprendrez comment installer Beats et les étapes à suivre pour installer et exécuter Beats à l'aide de FileBeat.
Nous apprendrons également à configurer et à surveiller facilement Beats à l'aide de modules.
Dans le chapitre 8, « Kibana », nous apprendrons à utiliser les menus de visualisation : Découvrir, Visualisation, Tableau de bord, Canevas et Cartes.
Dans la partie 3, « Applications pratiques d'Elastic Stack », nous aborderons plusieurs projets pouvant être mis en œuvre avec Elastic Stack en nous basant sur ce que nous avons appris dans les parties 1 et 2.
Dans le chapitre 9, « Création d'un index à l'aide de fichiers CSV Kaggle », nous allons télécharger des fichiers CSV de films téléchargés depuis Kaggle vers Elastic Stack, puis analyser les données.
Dans ce processus, les données sont purifiées à l'aide de filtres Logstash Ruby, etc., et un index est créé à l'aide de modèles de mappage et d'index.
Dans le chapitre 10, « Analyser les données Twitter coréennes avec Logstash », vous apprendrez comment obtenir des données sociales à l'aide du plugin Twitter de Logstash et comment analyser les données coréennes avec l'analyseur Nori.
Nous verrons comment repenser votre index et visualiser les données en temps réel dans Kibana.
Le chapitre 11, « Analyse des données publiques à l'aide de clients Python », explique comment développer des applications clientes Elasticsearch à l'aide de Python.
Dans ce cours, vous apprendrez à utiliser les API publiques et à créer et visualiser des couches vectorielles utilisables sur des cartes avec QGIS.
Dans la partie 4, « Opérations élastiques », vous apprendrez comment installer la pile élastique dans un environnement Linux et découvrirez les nœuds, les partitions, les index et leurs paramètres, qui constituent les bases d'un cluster.
Nous allons également nous exercer à configurer un cluster avec trois nœuds réels.
Dans le chapitre 12, « Configuration de l'environnement de laboratoire Linux », nous apprendrons comment installer Elasticsearch et Kibana version 7.10.1 dans un environnement Linux.
Le chapitre 13, « Configuration du cluster et des nœuds », explique le rôle des nœuds et fournit un guide pour la configuration du cluster.
Nous apprendrons également à configurer le stockage à chaud/à tiède et à effectuer des sauvegardes, et nous explorerons le partitionnement et l'optimisation du partitionnement.
Enfin, vous apprendrez à configurer des nœuds et des clusters.
Dans le chapitre 14, « Création d'un cluster opérationnel », vous apprendrez comment sélectionner le matériel pour les opérations, configurer un cluster et activer les fonctions de sécurité.
Enfin, nous examinerons comment distinguer les rôles des utilisateurs nécessaires au fonctionnement.
Environnement de développement pour l'utilisation de ce livre
Elasticsearch 7.10.1
- Kibana 7.10.1
- Logstash 7.10.1
- Filebeat 7.10.1
- Windows 10 (utilisé dans les parties 2 et 3)
- Linux Ubuntu 18.04 (utilisé dans la partie 4)
- JDK 8
- Python 3.8
[Note de l'auteur]
Je me souviens de la première fois où nous avons introduit Git dans notre entreprise en 2008.
Notre département, qui était une équipe de développement Linux, a décidé d'adopter Git, un nouvel outil de gestion de configuration créé par Linus Torvalds (le fondateur de Linux), au lieu de l'outil de gestion de configuration payant que nous utilisions auparavant.
Cependant, à cette époque, Git en était à ses débuts et disposait de peu de fonctionnalités conviviales, et personne ne savait comment l'utiliser, ce qui le rendait difficile à utiliser.
La sortie du produit étant imminente, le moindre conflit de commits entre les développeurs m'obligeait à passer la nuit à démêler l'historique Git.
Avec le recul, je pense que le problème venait du fait que je n'avais appris que l'utilisation présentée dans le tutoriel et que je l'appliquais directement à des situations réelles sans comprendre les concepts de base de Git, tels que le stockage distant et les zones de préparation.
Il était difficile d'utiliser correctement les outils et difficile de résoudre les problèmes lorsqu'ils survenaient.
Depuis, j'ai utilisé de nombreux frameworks, bibliothèques et programmes, mais j'ai toujours ressenti une certaine frustration.
Il y avait aussi la difficulté de lire la documentation de développement rédigée en anglais, et une culture où le temps passé à autre chose qu'à écrire du code était considéré comme du temps perdu.
N'ayant pas pleinement compris le système et l'utilisant de manière désordonnée, j'avais l'impression de ne pas pouvoir exploiter pleinement ses fonctionnalités.
Parfois, lorsque je rencontrais des problèmes ou que j'avais des difficultés à écrire du code, je cherchais de l'aide sur Google et Stack Overflow.
J'étais reconnaissante pour les codes que j'ai trouvés sur Internet et pour les personnes qui ont gentiment répondu à mes questions, mais en même temps, j'étais déçue de moi-même, me demandant : « Pourquoi était-ce si difficile pour moi d'écrire du code ? » et « Pourquoi n'ai-je pas pu l'appliquer ? »
Bien sûr, comme je n'avais pas de connaissances de base, ma compréhension et mes compétences d'application ne pouvaient pas être bonnes.
C’est sur ce point que je me suis le plus concentré lors de l’écriture de ce livre.
À travers ce livre, je souhaitais enseigner aux lecteurs les principes fondamentaux et les bases d'un framework appelé Elastic Stack.
J'espérais que les lecteurs acquerraient au moins une compréhension de base du framework qu'ils utilisaient et commenceraient à écrire du code.
Les points importants ont été expliqués à plusieurs reprises pour garantir une compréhension complète, et les points moins importants ont été volontairement omis par manque de place.
Au cas où certains points nécessiteraient des explications supplémentaires, j'ai fourni des liens vers la documentation en ligne.
La plupart des explications contenues dans ce livre sont disponibles dans la documentation officielle ou sur le blog d'Elastic, mais il serait préférable pour les lecteurs de commencer par comprendre le tableau d'ensemble grâce à ce livre plutôt que d'apprendre les informations de manière fragmentaire sur Internet.
Comprendre les bases ou la structure d'un framework facilitera les recherches plus intelligentes, la compréhension du code et des explications, ou des questions et réponses, et permettra de s'en souvenir durablement.
Un autre point auquel j'ai porté attention lors de la rédaction de ce livre est sa différence avec les ouvrages existants sur l'élasticité.
Lorsque j'ai initialement planifié ce livre, je souhaitais écrire un ouvrage sur l'utilisation d'Elastic Stack, qui était totalement indisponible sur le marché.
Cependant, conformément à l'avis de l'éditeur selon lequel nous devions nous concentrer davantage sur les fondamentaux, nous avons modifié le livre pour qu'il couvre l'explication, l'utilisation et le fonctionnement général d'Elastic Stack.
Contrairement aux ouvrages existants qui traitent uniquement d'Elasticsearch en détail, ce livre a réduit la part consacrée à Elasticsearch et augmenté celle de l'ensemble de la suite Elastic, incluant Logstash, Beats et Kibana.
Et si vous ne pouvez pas tout expliquer, vous pouvez modifier votre propos en omettant les détails et en mettant plutôt l'accent sur les points fondamentaux, voire en présentant des cas d'utilisation.
Enfin, je tiens à remercier Shai Bannon, le créateur d'Elastic, les innombrables contributeurs qui ont amélioré Elastic, et, plus largement, les développeurs qui ont créé Lucene, les systèmes distribués et d'autres initiatives qui ont façonné le paysage informatique dans lequel nous vivons aujourd'hui.
- Kim Jun-young
Lorsque j'ai découvert Elastic Stack (alors appelé ELK Stack) pour construire un système de surveillance des journaux, c'était un peu le bazar et la confusion.
À cette époque, Elasticsearch était perçu comme un outil capable d'effectuer des recherches plein texte rapides grâce à l'indexation, ou comme un système stockant des données fiables dans une base de données relationnelle et facilitant également l'indexation.
Mais après avoir creusé un peu plus, j'ai réalisé qu'il était possible de stocker les données originales et d'accroître la fiabilité en configurant des répliques, et que cela pouvait être utilisé comme une base de données.
La rapidité de la recherche et de l'agrégation semblait être une solution révolutionnaire aux problèmes de performance de la solution de surveillance que je développais à l'époque, et après avoir utilisé Logstash et Kibana moi-même, j'ai réalisé qu'il serait préférable pour moi d'utiliser la suite Elastic plutôt que de l'implémenter moi-même avec d'autres technologies.
En voyant comment l'Elastic Stack, que je venais de construire, pouvait facilement gérer des volumes de données d'un niveau que je n'avais jamais imaginé auparavant, j'ai eu l'intuition que l'ère de l'Elastic Stack était véritablement arrivée.
La mise en place d'une plateforme de données nécessite l'implémentation de diverses fonctions, notamment la collecte, le traitement, le stockage, la recherche et la visualisation des données. Il est également nécessaire d'étudier et d'intégrer différentes solutions logicielles, en tenant compte de leurs performances, de leur flexibilité et d'autres facteurs.
Elastic Stack, désormais une technologie bien connue, a atteint le statut de pile logicielle véritablement à toute épreuve, capable de constituer une plateforme de données complète en soi, possédant tous ces éléments, ainsi que la facilité de déploiement, la facilité d'utilisation, l'évolutivité, d'excellentes performances, une tolérance aux pannes élevée et une haute disponibilité.
Cependant, étant donné ses nombreuses fonctionnalités et sa facilité de déploiement, une bonne connaissance de base de la plateforme de données globale, du clustering, du traitement distribué, de l'indexation, etc. est nécessaire pour l'utiliser correctement.
Si vous l'utilisez sans une compréhension approfondie, vous risquez de rencontrer des problèmes inattendus en termes de performances, de sécurité ou d'autres aspects opérationnels.
De plus, les mises à jour rapides et les fonctionnalités supplémentaires qui les accompagnent, qui constituent à la fois des avantages et des inconvénients de la suite Elastic, peuvent rendre difficile pour les utilisateurs de savoir quelles fonctionnalités utiliser et par où commencer.
J'ai tenté de fournir dans ce livre des informations exactes et trompeuses sur la structure et les principes de fonctionnement d'Elastic Stack.
Bien que cet article ne couvre pas toutes les fonctionnalités de la vaste suite Elastic Stack, je souhaitais mettre en lumière les plus essentielles afin que les lecteurs puissent découvrir un plus large éventail de fonctionnalités d'Elastic Stack.
De plus, je souhaitais souligner l'attrait de chaque produit au sein de la suite, chacun remplissant parfaitement son rôle, et pas seulement celui du moteur de recherche haute performance Elasticsearch et de ses logiciels associés.
Non seulement Elastic Stack bénéficie d'une communauté nationale très active, mais il existe également de nombreuses contributions open source d'utilisateurs coréens.
J'espère que ce livre transmettra pleinement le charme d'Elastic, et j'espère par ailleurs qu'il augmentera le nombre de contributeurs à la communauté Elastic et au logiciel libre.
- Jeong Sang-un
[Note de l'éditeur]
Pour les besoins de cette évaluation, j'ai lu et relu l'intégralité de ce livre, de la première ébauche à la relecture finale. À chaque fois, j'ai eu la satisfaction de voir apparaître clairement les différentes fonctions et utilisations essentielles de la suite Elastic Stack.
En général, lire un livre technique plusieurs fois finit par devenir un peu ennuyeux, mais avec celui-ci, j'avais l'impression d'apprendre quelque chose d'important à chaque lecture.
Les développeurs qui n'ont jamais utilisé Elastic auparavant, ainsi que ceux qui pensent le connaître un peu, se reconnaîtront dans les propos du critique lorsqu'ils liront ce livre.
Au lieu de disperser des informations importantes et sans importance dans tout le livre pour tout expliquer de manière exhaustive, ce livre se concentre sur les 20 % qui peuvent produire 80 % de l'effet, en suivant strictement le principe de Pareto.
Par conséquent, le rythme et la cohérence du développement du texte sont assez élevés.
De plus, il va au-delà des descriptions des API et des fonctions du catalogue et fournit d'excellents exemples pour vous aider à apprendre rapidement les concepts de base ; tout au long du livre, il transforme les théories abstraites en exemples concrets et tangibles.
Pour ceux qui en ont assez de collecter des connaissances fragmentées sur Internet tout en se demandant quand, où et comment utiliser au mieux la suite Elastic Stack, ce livre sera une oasis qui étanchera leur soif.
Comme indiqué dans le texte principal, la suite Elastic Stack n'est pas particulièrement difficile à utiliser, de l'installation à l'utilisation proprement dite ; vous pourriez donc penser que vous pouvez commencer à l'utiliser immédiatement.
Cependant, ce n'est pas parce qu'il est facile de commencer qu'il est facile de le maîtriser.
La suite Elastic Stack offre des fonctionnalités puissantes pour la construction de pipelines de données volumineux complets ; il y a donc beaucoup à apprendre, et l’apprentissage actif – apprendre en l’utilisant et continuer à apprendre en l’utilisant – est essentiel.
L'une des caractéristiques clés de ce livre, très utile dans le processus d'apprentissage actif, réside dans ses explications orientées vers un objectif précis.
Au lieu d'expliquer sans contexte l'existence de diverses fonctions, il explique clairement quelles fonctions Elastic doivent être utilisées pour réaliser différentes tâches.
Par exemple, face à deux fonctions similaires, il est essentiel de connaître leurs différences précises et leurs modes d'utilisation spécifiques pour atteindre l'objectif visé, qu'il s'agisse de performances ou d'économie d'espace de stockage. Cet ouvrage explique la raison d'être et les principes fondamentaux de chaque fonction et propose, par le biais d'une comparaison, le choix le plus adapté à chaque situation.
Il explore également en profondeur les mécanismes internes des problèmes qui doivent être pris en compte au-delà du processus de développement (essentiels et difficiles à compromettre) lors de l'exploitation réelle, en utilisant des illustrations et des scénarios détaillés pour expliquer clairement les raisons de cette démarche et des directives spécifiques.
Les protagonistes méconnus de ce livre sont les trois projets présentés dans la section consacrée à l'utilisation d'Elastic Stack.
Lors de la réalisation d'un projet de traitement de données volumineuses, vous vous êtes peut-être demandé comment mener à bien l'ensemble du processus, de la collecte à la visualisation des données, en utilisant uniquement la suite Elastic, plutôt que de recourir à diverses sources open source et de les connecter de manière complexe. Ce livre présente l'intégralité du processus de visualisation sur une carte, en traitant avec précision des données réelles issues de Kaggle, Twitter et d'autres sources publiques ; il ne s'agit pas de simples exemples.
Ce cours aborde tous les aspects, depuis la connexion des différents composants de la suite Elastic jusqu'à l'utilisation des filtres pour une connexion fluide, en passant par la programmation nécessaire à l'implémentation de la logique métier. Il constitue donc, à mon avis, un cas d'utilisation ou un exemple pratique pertinent pour une utilisation optimale de la suite Elastic.
Ce livre, qui regorge de contenus soigneusement sélectionnés en fonction de la vaste expérience pratique des auteurs, vise à servir de levier aux lecteurs pour utiliser activement les riches fonctionnalités et les performances puissantes de l'Elastic Stack dans la résolution de problèmes concrets.
SPÉCIFICATIONS DES PRODUITS
- Date de publication : 19 août 2021
Nombre de pages, poids, dimensions : 592 pages | 185 × 240 × 29 mm
- ISBN13 : 9791189909321
- ISBN10 : 1189909324
Vous aimerez peut-être aussi
카테고리
Langue coréenne
Langue coréenne