带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(17)

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(17)

《Elastic Stack 实战手册》——三、产品能力——3.4.入门篇——3.4.1.Elastic Stack 安装部署——3.4.1.8. ECK 安装(16) https://developer.aliyun.com/article/1231264


部署 Elasticsearch

 

定义 Elasticsearch 资源文件,通过 annotations 定义自动缩放策略:

 

l name:用于标识自动缩放策略的名称。

l roles:此策略适用的节点角色,Elasticsearch 资源中必须至少存在一个具有完全相同角色集的 NodeSet。

l resources 定义计算资源使用量的上限和下限:

nodeCount:节点数量的上限和下限。

cpu:每个节点使用 cpu 的上限和下限。

memory:每个节点使用内存的上限和下限。

storage:每个节点存储容量的上限和下限。

当节点使用资源达到阈值时,ECK 首先会尝试为节点增加资源(CPU、内存、存储),当每个节点都达到单个节点使用资源的限制时,ECK 开始横向扩容节点数量。横向扩容是最快速的,因此建议将 CPU、内存、存储资源的 min 和 max 的值设置成一样。


apiVersion: elasticsearch.k8s.elastic.co/v1
kind: Elasticsearch
metadata:
  name: autoscaling-elasticsearch
  annotations:
    elasticsearch.alpha.elastic.co/autoscaling-spec: |
      {
          "pollingPeriod": "10s",
          "policies": [{
              "name": "di",
              "roles": ["data", "ingest" , "transform"],
              "deciders": {
                "proactive_storage": {
                    "forecast_window": "5m"
                }
              },
              "resources": {
                  "nodeCount": { "min": 3, "max": 8 },
                  "cpu": { "min": 2, "max": 2 },
                  "memory": { "min": "2Gi", "max": "2Gi" },
                  "storage": { "min": "20Gi", "max": "20Gi" }
              }
          }]
      }
spec:
  version: 7.14.0
  nodeSets:
- name: master
      count: 3
      config:
        node:
          roles: [ "master" ]
      volumeClaimTemplates:
      - metadata:
          name: elasticsearch-data
        spec:
          accessModes:
          - ReadWriteOnce
          resources:
            requests:
              storage: 20Gi
          storageClassName: alicloud-disk-efficiency
    - name: di
      config:
        node:
          roles: [ "data", "ingest", "transform" ]
      volumeClaimTemplates:
      - metadata:
          name: elasticsearch-data
        spec:
          accessModes:
          - ReadWriteOnce
          resources:
            requests:
              storage: 20Gi
          storageClassName: alicloud-disk-efficiency

使用以下命令应用 Elasticsearch 资源文件:


kubectl apply -f elasticsearch.yaml

查看创建的 Elasticsearch 节点,刚开始节点数量是指定的最小值,当节点使用资源达到阈值时,才会横向扩容。

> kubectl get pod
NAME                                    READY   STATUS    RESTARTS   AGE
autoscaling-elasticsearch-es-di-0       1/1     Running   0          11m
autoscaling-elasticsearch-es-di-1       1/1     Running   0          11m
autoscaling-elasticsearch-es-di-2       1/1     Running   0          11m
autoscaling-elasticsearch-es-master-0   1/1     Running   0          11m
autoscaling-elasticsearch-es-master-1   1/1     Running   0          11m
autoscaling-elasticsearch-es-master-2   1/1     Running   0          11m

清理现场

kubectl delete -f autoscaling/


《Elastic Stack 实战手册》——三、产品能力——3.4.入门篇——3.4.1.Elastic Stack 安装部署——3.4.1.8. ECK 安装(18) https://developer.aliyun.com/article/1231262

相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
12月前
|
Prometheus Kubernetes 负载均衡
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(1)
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(1)
163 0
|
12月前
|
运维 负载均衡 监控
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(18)
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(18)
|
12月前
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(23)
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(23)
|
12月前
|
安全 对象存储 索引
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(14)
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(14)
126 0
|
12月前
|
网络协议
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(22)
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(22)
|
12月前
|
容器 Perl
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(19)
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(19)
112 1
|
12月前
|
Kubernetes API 索引
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(16)
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(16)
163 0
|
12月前
|
存储 Kubernetes 固态存储
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(7)
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(7)
119 0
|
12月前
|
索引
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(10)
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(10)
|
12月前
|
存储 Kubernetes 固态存储
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(5)
带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(5)
117 0