elasticsearch 如何在Kubernetes中实现弹性搜索的集群自动缩放?
我已经使用我遵循的以下步骤设置了弹性搜索elasticsearch 如何在Kubernetes中实现弹性搜索的集群自动缩放?,elasticsearch,kubernetes,google-kubernetes-engine,elasticsearch,Kubernetes,Google Kubernetes Engine,我已经使用我遵循的以下步骤设置了弹性搜索 创建的集群如下所示 gcloud容器群集创建群集-1--启用自动缩放--区域us-central1-c \--数量节点2 \--最小节点1 \--最大节点5 使用custom values.yaml安装弹性搜索 helm安装elasticsearch elastic/elasticsearch-f./values.yaml 价值观 创建索引并将文档插入数据库 curl-X PUT“http://elasticsearch.mydomain.com/
gcloud容器群集创建群集-1--启用自动缩放--区域us-central1-c \--数量节点2 \--最小节点1 \--最大节点5
helm安装elasticsearch elastic/elasticsearch-f./values.yaml
价值观
kubectl get nodes
NAME STATUS ROLES AGE VERSION
gke-cluster-1-default-pool-d6891b13-flf9 Ready <none> 18h v1.14.10-gke.36
gke-cluster-1-default-pool-d6891b13-hw2x Ready <none> 18h v1.14.10-gke.36
kubectl top pods
NAME CPU(cores) MEMORY(bytes)
elasticsearch-master-0 160m 371Mi
ingress-elastic-search-test-ingress-nginx-controller-5c96ctthr2 25m 68Mi
kubectl获取节点
姓名状态角色年龄版本
gke-cluster-1-default-pool-d6891b13-flf9就绪18h v1.14.10-gke.36
gke-cluster-1-default-pool-d6891b13-hw2x Ready 18h v1.14.10-gke.36
kubectl顶部吊舱
名称CPU(核心)内存(字节)
elasticsearch-master-0 160m 371Mi
ingress-elastic-search-test-ingress-nginx-controller-5c96ctthr2 25m 68Mi
因此,如何根据负载自动伸缩弹性搜索集群。如何在弹性搜索吊舱上生成负载?这是否回答了您的问题?您需要使Elasticsearch创建更多副本。扩展不一定很复杂,但扩展很困难,需要特定于数据库的知识,并且相对于负载的变化可能需要很长时间。确定群集自动扩展在弹性搜索中不可能吗?你是说我应该使用副本而不是群集自动缩放?如果POD的资源请求需要,群集自动缩放会导致群集创建更多节点。这里需要pod自动缩放,这对于Elasticsearch来说很棘手(我在链接的问题中对此进行了详细说明)。这是否回答了您的问题?您需要使Elasticsearch创建更多副本。扩展不一定很复杂,但扩展很困难,需要特定于数据库的知识,并且相对于负载的变化可能需要很长时间。确定群集自动扩展在弹性搜索中不可能吗?你是说我应该使用副本而不是群集自动缩放?如果POD的资源请求需要,群集自动缩放会导致群集创建更多节点。这里需要pod自动缩放,这对于Elasticsearch来说很棘手(我在链接的问题中对此进行了详细说明)。
#!/bin/bash
i=0 # set counter to 0
while true # infinite loop
do
curl -X GET "http://elasticsearch.mydomain.com/company/_search?pretty" -H 'Content-Type: application/json' -d'
{
"query" : {
"match" : { "name" : "John" }
}
}'
if [ $? -ne 0 ]
then
# curl didn't return 0 - failure
echo $i
break # terminate loop
fi
i=$(($i+1)) # increment counter
echo -en "$i \r" # display # of requests each iteration
sleep 0.25 # short pause between requests
done
kubectl get nodes
NAME STATUS ROLES AGE VERSION
gke-cluster-1-default-pool-d6891b13-flf9 Ready <none> 18h v1.14.10-gke.36
gke-cluster-1-default-pool-d6891b13-hw2x Ready <none> 18h v1.14.10-gke.36
kubectl top pods
NAME CPU(cores) MEMORY(bytes)
elasticsearch-master-0 160m 371Mi
ingress-elastic-search-test-ingress-nginx-controller-5c96ctthr2 25m 68Mi