Aller au contenu principal

OpenSearch (opensearch)

Moteur de recherche et d'analyse pour la recherche plein texte, la recherche hybride et les journaux. Nœud unique ou cluster avec gestionnaires de cluster et nœuds de données dédiés.

Généré depuis catalog/services/opensearch.yaml : ne pas modifier à la main.

Résumé​

Version2.19.2
Usageinstaller et configurer, configurer et connecter
Couchefonctionnelle (catalogue IA)
CatégoriePlateformes de données
Méthodes d'installationbinary, podman
Connexion externeopensearch
Réservé au bac à sablenon

Licence​

Identifiant SPDXApache-2.0
Politique de licencelicence socle (MIT ou Apache-2.0)
Exception de licence-
Composant de la plateformeopensearch

Paquets et artefacts​

Un paquet que publie le projet du service (son image, son archive binaire, son paquet Python ou système) porte la licence du service ; un paquet tiers porte la licence écrite sur sa ligne, lue dans les métadonnées officielles du projet amont.

TypePaquetVersionLicenceDétails
image de conteneurdocker.io/opensearchproject/opensearch2.19.2Apache-2.0clé d'image opensearch, utilisée par manager, node, condensé sha256:69588c664014fa3d3260ed5dd337f8538fec94790dad00bfbe92301eaaaac240
archive binaireopensearch-2.19.2-linux-x64.tar.gz2.19.2Apache-2.0https://artifacts.opensearch.org/releases/bundle/opensearch/2.19.2/opensearch-2.19.2-linux-x64.tar.gz, x86_64, somme de contrôle sha256

Les images sont épinglées par étiquette dans le descripteur, et par condensé (digest) quand le descripteur en déclare un (le bundle hors ligne refuse alors une image téléchargée qui ne le porte pas) ; le condensé est enregistré dans le miroir du Manager à l'import du bundle hors ligne, et chaque téléchargement ou chargement est vérifié par rapport à lui.

Systèmes et architectures pris en charge​

MéthodeSystèmes d'exploitationArchitectures
binaryfamille RHEL (dnf), famille Debian (apt), Arch Linux (pacman)x86_64 (architecture des artefacts du descripteur)
podmanfamille RHEL (dnf), famille Debian (apt), Arch Linux (pacman)x86_64, aarch64 (non restreintes par le descripteur)

Systèmes hôtes certifiés : RHEL 8/9/10, Rocky Linux 8/9/10, AlmaLinux 8/9/10, Oracle Linux 8/9, CentOS Stream 9/10, Ubuntu 22.04/24.04, Debian 12, Arch Linux (rolling). Le contrôle préalable des hôtes accepte ces systèmes (une autre version d'une famille connue donne un avertissement, une version en fin de vie est refusée) et les architectures x86_64 et aarch64.

Prérequis​

Hôte​

  • au moins 4096 Mo de mémoire (bloquant, memory).
  • paramètre du noyau vm.max_map_count au moins égal à 262144 (avertissement, max_map_count).

Programmes que les commandes et les contrôles du service lancent sur l'hôte, hors des racines gérées : les ajouter à allowed_commands de l'agent (voir Sécurité de l'agent Navin), sinon l'agent les refuse avec command_not_allowed : /usr/bin/curl.

Réseau et ports​

ComposantNom du portPortOuvert dans le pare-feu de l'hôte
managerhttp9200/tcpoui
managertransport9300/tcpoui
nodehttp9200/tcpoui
nodetransport9300/tcpoui

Paramètres du noyau​

ParamètreValeur
vm.max_map_count262144
vm.swappiness1
Limites des processus : memlockunlimited
Limites des processus : nofile65536
Limites des processus : nproc4096

Services et connexions nécessaires​

Ce service n'a aucune dépendance.

Méthodes et modes d'installation​

MéthodeDéfautCe que la méthode utilise
binaryouiles archives binaires du descripteur, décompressées dans le répertoire du service
podman-les images de conteneur du descripteur, exécutées par Podman sous systemd

Composants​

ComposantTypeMéthodes d'installationPorts
Gestionnaire de cluster (manager)maîtrebinary, podman9200/tcp, 9300/tcp
Nœud de données (node)travailleurbinary, podman9200/tcp, 9300/tcp

Nœud unique (single-node) (par défaut)​

Un seul nœud qui porte tous les rôles.

Ce que le mode déploie :

ComposantPlacement
managernon utilisé
nodemin 1, max 1

Cluster (cluster)​

Un nombre impair (3 ou plus) de nœuds éligibles gestionnaires de cluster et des nœuds de données.

Ce que le mode déploie :

ComposantPlacement
managermin 3, nombre impair, recommandé 3
nodemin 2, recommandé 3

Installer ce service​

L'assistant d'installation du Navin Manager planifie, valide et exécute l'installation ; il faut la permission services:install sur le cluster.

  1. Ouvrez l'assistant. Dans Clusters, choisissez l'action de ligne Installer des services du cluster cible. L'assistant s'ouvre sur sa première étape, Service.

  2. Choisissez le service. À l'étape Service, sélectionnez OpenSearch. La carte affiche la licence Apache-2.0. Choisissez la Méthode parmi binary, podman (par défaut binary). Pour enregistrer à la place un service opensearch existant de votre organisation, activez Utiliser un service externe existant.

  3. Choisissez les hôtes et le mode. À l'étape Hôtes, cochez les hôtes, puis choisissez le Mode : single-node (par défaut), cluster. Chaque mode déploie les composants listés dans Méthodes et modes d'installation. Avec plusieurs composants, placez chacun sur ses hôtes dans Répartition des composants (Proposer un placement propose un placement qui respecte les cardinalités).

  4. Liaisons. Ce service n'a aucune dépendance : l'étape Liaisons n'a rien à lier.

  5. Configurez. À l'étape Configuration, relisez les paramètres (voir Paramètres de configuration). Les mots de passe laissés vides avec une valeur générée par défaut sont générés et scellés par le Manager.

  6. Relisez et installez. À l'étape Installation, le Manager valide le plan et affiche l'ordre d'installation ; quand il indique « Le plan est valide. Prêt pour l'installation. », choisissez Installer. Un mode hautement disponible n'est installé que si ses contrôles HA réussissent.

  7. Vérifiez. L'opération se termine quand les contrôles de santé de chaque instance réussissent (voir Contrôles de santé) ; le service apparaît alors en marche dans Services.

Connecter un service existant​

Schémashttps
Port par défaut9200
Authentificationobligatoire
Contrôle de santé/_cluster/health
Méthode d'authentificationChampsDescription
basicusername, passwordUtilisateur du plugin de sécurité (utilisateurs internes ou LDAP) ; Jaeger, OpenSearch Dashboards et le collecteur s'y connectent.

Documentation officielle : https://docs.opensearch.org/latest/security/

ChampTypeDéfautDescriptionRemarques
Préfixe des index de Security Analytics (security_analytics_index)stringnavin-siemPréfixe des index de Security Analytics utilisé par la plateforme.-

Haute disponibilité​

Clusternatif (native)
Haute disponibiliténatif (native)
Basculenatif (native)
Réplicationnatif (native)
QuorumRaft (raft)
Découvertestatique (static)
Point d'entréen'importe quel nœud (any-node)
Documentation officiellehttps://docs.opensearch.org/latest/tuning-your-cluster/discovery-cluster-formation/settings/
Paramètre TLS entre pairstls_enabled
Commande d'état du clustercluster_health

Topologie par mode​

ModesNiveau le plus haut du catalogueRépartitionComposant du quorumDomaines de panneDescription
single-nodeautonome (standalone)unique (single)-1Un nœud portant tous les rôles.
clustercluster (cluster)actif-actif (active-active)manager3Un nombre impair de nœuds éligibles cluster manager et des nœuds de données portant shards primaires et réplicas.

Remarques​

  • L'élection du cluster manager utilise une configuration de vote (majorité des nœuds éligibles), notée ici raft ; un index ne survit à la perte d'un nœud qu'avec au moins un shard réplica.

Paramètres de configuration​

Réseau​

ParamètreTypeDéfautValeurs permisesObligatoireSecretRedémarrageDescription
Port HTTP (http_port)port9200-nonnonnonPort de l'API REST.
Port de transport (transport_port)port9300-nonnonnonPort du trafic entre nœuds.
Nom du cluster (cluster_name)stringnavin-search^[a-z][a-z0-9-]{1,40}$nonnonnonNom partagé par les nœuds du cluster.

Mémoire​

ParamètreTypeDéfautValeurs permisesObligatoireSecretRedémarrageDescription
Tas JVM (heap_mb)int2048min 512, max 31744, MBnonnonouiTas de la JVM : la moitié de la mémoire de l'hôte, au plus 31 Go (pointeurs compressés). (recommandé clamp(round(host.memory_mb * 0.5), 512, 31744))

Sécurité​

ParamètreTypeDéfautValeurs permisesObligatoireSecretRedémarrageDescription
Sécurité et TLS (tls_enabled)booltrue-nonnonnonTLS sur HTTP et sur le transport avec des certificats de l'autorité de la console. Le greffon de sécurité n'est jamais désactivé (P5C-006) : il exige les certificats du transport, la désactivation est donc refusée au rendu de la configuration.
Mot de passe administrateur (admin_password)passwordgénéré-nonouinonMot de passe initial de l'utilisateur admin, haché dans internal_users.yml au premier démarrage (l'index de sécurité le conserve ensuite).

Points d'accès​

Point d'accèsSchémaComposantPortCheminParamètre TLSParamètres de liaisonSecrets de liaisonCommande de provisionnement
httphttpnode9200 (http_port)-tls_enabledusername, tlspassword-

Commandes​

CommandeComposantCibleDescription
Santé du cluster (cluster_health)nodepremier hôteLit _cluster/health (état, nœuds, partitions non assignées).
Lister les nœuds (cat_nodes)nodepremier hôteLit _cat/nodes (rôles, tas, charge, gestionnaire élu).

Contrôles de santé​

Vivacité (par instance)​

ComposantContrôleDétails
managerTCP {{ host.ip or '127.0.0.1' }}:{{ config.http_port }}90 tentatives ; intervalle 2 s
nodeTCP {{ host.ip or '127.0.0.1' }}:{{ config.http_port }}90 tentatives ; intervalle 2 s

Disponibilité (contrôle du service)​

ContrôleDétails
TCP {{ host.ip or '127.0.0.1' }}:{{ config.http_port }}-

Contrôles préalables​

ContrôleTypeSignificationSévéritéComposants
memorymemory_mb {"min": 4096}au moins 4096 Mo de mémoirebloquanttous les composants
max_map_countsysctl_min {"key": "vm.max_map_count", "min": 262144}paramètre du noyau vm.max_map_count au moins égal à 262144avertissementtous les composants
http_port_freeport_free {"param": "http_port"}port 9200 libre sur l'hôtebloquanttous les composants

Sauvegarde et restauration​

Instantané de tous les index (index de sécurité excepté) dans un dépôt sur fichiers de path.repo, archivé (P5C-008, moteur opensearch_snapshot). Mode nœud unique seulement : un cluster exige un dépôt partagé par tous les nœuds et le script le refuse avec un message explicite.

Formatopensearch-snapshot
Composantnode
Fichiers{{ backup.dir }}/snapshot.tar.gz
Test de restaurationnon
Instances arrêtées pendant la restaurationnon

Désinstallation​

Chemins supprimés quand les données sont purgées : {{ paths.data }}, {{ paths.log }}.

Documentation amont​