RousselTMLEARNING

Observabilité

Installer OpenSearch et OpenSearch Dashboards

Installer OpenSearch avec Docker Compose ou l'archive : mot de passe initial, vm.max_map_count, certificats de démonstration et mémoire de la JVM, avec les erreurs rencontrées sur la version 3.9.

1. Avec Docker Compose #

Un nœud et sa console.

La pile #

Depuis la version 2.12, un mot de passe administrateur fort est obligatoire : sans lui, ou s'il est trop faible, OpenSearch s'arrête au démarrage. Placez-le dans un fichier .env, hors de Git.

OPENSEARCH_INITIAL_ADMIN_PASSWORD=Str0ng!Passw0rd-2026
services:
  opensearch:
    image: opensearchproject/opensearch:3
    environment:
      discovery.type: single-node
      OPENSEARCH_INITIAL_ADMIN_PASSWORD: ${OPENSEARCH_INITIAL_ADMIN_PASSWORD}
      OPENSEARCH_JAVA_OPTS: -Xms1g -Xmx1g
      path.repo: /usr/share/opensearch/data/snapshots
    ports:
      - "9200:9200"
    volumes:
      - os-data:/usr/share/opensearch/data

  dashboards:
    image: opensearchproject/opensearch-dashboards:3
    environment:
      OPENSEARCH_HOSTS: '["https://opensearch:9200"]'
    ports:
      - "5601:5601"
    depends_on: [opensearch]

volumes:
  os-data:
sudo sysctl -w vm.max_map_count=262144
docker compose up -d
curl -sk -u 'admin:Str0ng!Passw0rd-2026' -H 'Content-Type: application/json' https://localhost:9200/_cat/health?v

La console est sur http://localhost:5601 (utilisateur admin).

Les réglages de l'hôte #

Le conteneur s'arrête aussitôt ? Vérifiez vm.max_map_count sur l'hôte Linux : la valeur attendue est 262144. Rendez-la permanente dans /etc/sysctl.conf.

2. Avec l'archive #

Sans conteneur.

Installer sur un serveur #

tar -xf opensearch-3.9.0-linux-x64.tar.gz && cd opensearch-3.9.0
echo 'discovery.type: single-node' >> config/opensearch.yml
export OPENSEARCH_INITIAL_ADMIN_PASSWORD='Str0ng!Passw0rd-2026'
./opensearch-tar-install.sh

Le script installe des certificats de démonstration et démarre le nœud, en HTTPS : d'où l'option -k de curl. Pour une vraie production, remplacez ces certificats.

Message Multiple garbage collectors selected ? Rencontré lors de nos essais sur la 3.9 avec l'archive : il venait d'un OPENSEARCH_JAVA_OPTS exporté dans l'environnement. Réglez plutôt la mémoire dans config/jvm.options.

3. Dimensionner la mémoire #

Le réglage le plus important.

Le tas de la JVM #

Fixez -Xms et -Xmx à la même valeur, environ la moitié de la mémoire de la machine, et sans dépasser 32 Go. Le reste sert au cache du système, très utilisé par Lucene.

-Xms4g
-Xmx4g

Articles liés

OpenSearch : concepts, architecture et différences avec Elasticsearch

Comprendre OpenSearch : origine du projet, licence, différences avec Elasticsearch, index, shards, répliques,…

Indexer et chercher dans OpenSearch : mapping, DSL, PPL et SQL

Déclarer un modèle d'index, indexer avec bulk, chercher avec le Query DSL, agréger et interroger en PPL et en…

Alimenter OpenSearch : pipelines d'ingestion et Data Prepper

Transformer les données avec les pipelines d'ingestion, collecter avec Data Prepper, recevoir l'OTLP et évite…

Pour aller plus loin

Soutenir

♥ SOUTENIR

Soutenez RousselTM Learning

Les formations, articles, TP et attestations restent gratuits et sans publicité intrusive. Une contribution libre, du montant de votre choix, finance l’hébergement, les environnements de TP et l’écriture de nouveaux contenus.

Contribuer avec PayPal Montant libre · carte bancaire ou compte PayPalEn savoir plus
QR code PayPal
Ou scannez ce QR code avec votre téléphone

Merci, chaque contribution compte !