elasticsearch/docs/reference/elasticsearch-plugins/discovery-azure-classic-usage.md
Liam Thompson b98606e712
[9.0] [docs] Migrate docs from AsciiDoc to Markdown (#123507) (#124124)
* [docs] Migrate docs from AsciiDoc to Markdown (#123507)

* delete asciidoc files

* add migrated files

* fix errors

* Disable docs tests

* Clarify release notes page titles

* Revert "Clarify release notes page titles"

This reverts commit 8be688648d.

* Comment out edternal URI images

* Clean up query languages landing pages, link to conceptual docs

* Add .md to url

* Fixes inference processor nesting.

---------

Co-authored-by: Liam Thompson <32779855+leemthompo@users.noreply.github.com>
Co-authored-by: Liam Thompson <leemthompo@gmail.com>
Co-authored-by: Martijn Laarman <Mpdreamz@gmail.com>
Co-authored-by: István Zoltán Szabó <szabosteve@gmail.com>
(cherry picked from commit b7e3a1e14b)

# Conflicts:
#	docs/build.gradle
#	docs/reference/migration/index.asciidoc
#	docs/reference/migration/migrate_9_0.asciidoc
#	docs/reference/release-notes.asciidoc
#	docs/reference/release-notes/9.0.0.asciidoc
#	docs/reference/release-notes/highlights.asciidoc

* Fix build file

* Really fix build file

---------

Co-authored-by: Colleen McGinnis <colleen.j.mcginnis@gmail.com>
2025-03-06 07:53:46 +01:00

3 KiB
Raw Blame History

mapped_pages
https://www.elastic.co/guide/en/elasticsearch/plugins/current/discovery-azure-classic-usage.html

Azure Virtual Machine discovery [discovery-azure-classic-usage]

Azure VM discovery allows to use the Azure APIs to perform automatic discovery. Here is a simple sample configuration:

cloud:
    azure:
        management:
             subscription.id: XXX-XXX-XXX-XXX
             cloud.service.name: es-demo-app
             keystore:
                   path: /path/to/azurekeystore.pkcs12
                   password: WHATEVER
                   type: pkcs12

discovery:
    seed_providers: azure

::::{admonition} Binding the network host :class: important

The keystore file must be placed in a directory accessible by Elasticsearch like the config directory.

Its important to define network.host as by default its bound to localhost.

You can use core network host settings. For example _en0_.

::::

How to start (short story) [discovery-azure-classic-short]

  • Create Azure instances
  • Install Elasticsearch
  • Install Azure plugin
  • Modify elasticsearch.yml file
  • Start Elasticsearch

Azure credential API settings [discovery-azure-classic-settings]

The following are a list of settings that can further control the credential API:

cloud.azure.management.keystore.path
/path/to/keystore
cloud.azure.management.keystore.type
pkcs12, jceks or jks. Defaults to pkcs12.
cloud.azure.management.keystore.password
your_password for the keystore
cloud.azure.management.subscription.id
your_azure_subscription_id
cloud.azure.management.cloud.service.name
your_azure_cloud_service_name. This is the cloud service name/DNS but without the cloudapp.net part. So if the DNS name is abc.cloudapp.net then the cloud.service.name to use is just abc.

Advanced settings [discovery-azure-classic-settings-advanced]

The following are a list of settings that can further control the discovery:

discovery.azure.host.type
Either public_ip or private_ip (default). Azure discovery will use the one you set to ping other nodes.
discovery.azure.endpoint.name
When using public_ip this setting is used to identify the endpoint name used to forward requests to Elasticsearch (aka transport port name). Defaults to elasticsearch. In Azure management console, you could define an endpoint elasticsearch forwarding for example requests on public IP on port 8100 to the virtual machine on port 9300.
discovery.azure.deployment.name
Deployment name if any. Defaults to the value set with cloud.azure.management.cloud.service.name.
discovery.azure.deployment.slot
Either staging or production (default).

For example:

discovery:
    type: azure
    azure:
        host:
            type: private_ip
        endpoint:
            name: elasticsearch
        deployment:
            name: your_azure_cloud_service_name
            slot: production