Azure虚拟机发现

编辑

Azure VM发现允许使用Azure API执行自动发现。以下是一个简单的示例配置

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

绑定网络主机

密钥库文件必须放置在Elasticsearch可以访问的目录中,例如config目录。

定义network.host非常重要,因为默认情况下它绑定到localhost

您可以使用核心网络主机设置。例如_en0_

如何开始(简述)

编辑
  • 创建Azure实例
  • 安装Elasticsearch
  • 安装Azure插件
  • 修改elasticsearch.yml文件
  • 启动Elasticsearch

Azure凭据API设置

编辑

以下是可以进一步控制凭据API的设置列表

cloud.azure.management.keystore.path

/path/to/keystore

cloud.azure.management.keystore.type

pkcs12jceksjks。默认为pkcs12

cloud.azure.management.keystore.password

密钥库的your_password

cloud.azure.management.subscription.id

您的your_azure_subscription_id

cloud.azure.management.cloud.service.name

您的your_azure_cloud_service_name。这是云服务名称/DNS,但不包括cloudapp.net部分。因此,如果DNS名称为abc.cloudapp.net,则要使用的cloud.service.name仅为abc

高级设置

编辑

以下是可以进一步控制发现的设置列表

discovery.azure.host.type
可以是public_ipprivate_ip(默认)。Azure发现将使用您设置的IP来 ping 其他节点。
discovery.azure.endpoint.name
使用public_ip时,此设置用于标识用于将请求转发到Elasticsearch的端点名称(即传输端口名称)。默认为elasticsearch。在Azure管理控制台中,您可以定义一个端点elasticsearch,例如将公共IP上的端口8100上的请求转发到虚拟机上的端口9300。
discovery.azure.deployment.name
部署名称(如果有)。默认为使用cloud.azure.management.cloud.service.name设置的值。
discovery.azure.deployment.slot
可以是stagingproduction(默认)。

例如

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