设置 GCE 发现
编辑设置 GCE 发现编辑
先决条件编辑
在开始之前,您需要
- 您的项目 ID,例如
es-cloud
。从 Google API 控制台 获取。 - 要安装 Google Cloud SDK
如果您尚未设置,您可以定义将要使用的默认项目
gcloud config set project es-cloud
登录 Google Cloud编辑
如果您还没有,请登录 Google Cloud
gcloud auth login
这将打开您的浏览器。您将被要求登录 Google 帐户并授权访问 Google Cloud SDK。
创建您的第一个实例编辑
gcloud compute instances create myesnode1 \ --zone <your-zone> \ --scopes compute-rw
完成后,应该会出现类似这样的报告
Created [https://www.googleapis.com/compute/v1/projects/es-cloud-1070/zones/us-central1-f/instances/myesnode1]. NAME ZONE MACHINE_TYPE PREEMPTIBLE INTERNAL_IP EXTERNAL_IP STATUS myesnode1 us-central1-f n1-standard-1 10.240.133.54 104.197.94.25 RUNNING
您现在可以连接到您的实例
# Connect using google cloud SDK gcloud compute ssh myesnode1 --zone europe-west1-a # Or using SSH with external IP address ssh -i ~/.ssh/google_compute_engine 192.158.29.199
服务帐户权限
创建实例时,设置正确的权限非常重要。至少,您必须确保您拥有
scopes=compute-rw
未能设置此项会导致在启动 Elasticsearch 时出现未授权消息。请参阅 机器权限。
连接后,安装 Elasticsearch。
安装 Elasticsearch 发现 gce 插件编辑
安装插件
# Use Plugin Manager to install it sudo bin/elasticsearch-plugin install discovery-gce
打开 elasticsearch.yml
文件
sudo vi /etc/elasticsearch/elasticsearch.yml
并添加以下行
cloud: gce: project_id: es-cloud zone: europe-west1-a discovery: seed_providers: gce
启动 Elasticsearch
sudo systemctl start elasticsearch
如果出现任何错误,您应该检查日志
tail -f /var/log/elasticsearch/elasticsearch.log
如果需要,您可以通过打开 log4j2.properties
将日志级别更改为 trace
sudo vi /etc/elasticsearch/log4j2.properties
并添加以下行
# discovery logger.discovery_gce.name = discovery.gce logger.discovery_gce.level = trace