ElasticSearch容器化从0到1实践(三)

文章目录

上一节说到了ECK落地的26个关键问题,这一节将对这26个关键点的实施进行详细的说明,并给出符合业务的合理建议。

另外如果你认真看了上一节提到的26个关键问题,并且也对这些关键点表示认同的话,本节一定要细细品鉴,我自认为可以让你收获巨大。

部署Elasticsearch

Elasticserch 样例

在正式开始之前,首先通过官方的示例来创建Elasticsearch集群,简单了解下大概的流程。

Bash 复制代码
cat <<EOF | kubectl apply -f -
apiVersion: elasticsearch.k8s.elastic.co/v1
kind: Elasticsearch
metadata:
  name: quickstart
spec:
  version: 8.10.3
  nodeSets:
  - name: default
    count: 1
    config:
      node.store.allow_mmap: false
EOF

观察es服务的启动情况

Bash 复制代码
kubectl get pod | grep es
kubectl get es

至此,一个简单的Es集群就在K8S集群中跑起来了。

但是,这远远还不够,真真在生产环境中使用还会涉及到很多问题,这里先简单描述下现有环境以及需要兼容的问题。

Elasticserch历史环境及痛点

现有环境问题整理,如下

说明 痛点 备注
环境 存在测试、开发、灰度、生产等多套环境 环境复杂,维护成本较高
部署方式 ansible方式部署、采用Ecs+数据云盘方式 有部署门槛,资源碎片严重,维护成本较高
数据管理方式 数据云盘 扩容、更换都需要手动操作
流量接入 直连IP + 默认端口 方式不统一、对业务透明度差
Elasticsearch认证 无认证 不安全 都为内网调用,可以接受
集群版本 6+、7+ 版本不统一、多个小版本存在
进程管理方式 依赖告警发现进程问题, 无法自愈
配置管理 配置混乱,无法复用

根据现有服务现状以及痛点问题, 通过容器化一次性解决,接下来对关键点问题逐步处理,给出合理方案。

关键问题点方案落地

ES集群是否启动TLS/ES是否启动认证

通过ECK方式启动的集群默认会开启TLS,用户在访问时需要通过证书连接。基于现有网络环境及当前的使用方式,决定维持现有状态关闭TLS和认证,在配置文件中增加下面2处配置即可。

YAML 复制代码
apiVersion: elasticsearch.k8s.elastic.co/v1
kind: Elasticsearch
metadata:
  name: quickstart
  namespace: elasticsearch
spec:
  version: 7.13.0
  http: # 指定协议类型
    tls:
      selfSignedCertificate:
        disabled: true
  nodeSets:
  - name: default
    count: 1
    config:
      node.store.allow_mmap: false
      xpack.security.enabled: false # 关闭xpack认证

具体配置管理方式及逻辑可以参考源码进行分析,参考文档:https://blog.csdn.net/u012881331/article/details/133925528?csdn_share_tail={"type"%3A"blog"%2C"rType"%3A"article"%2C"rId"%3A"133925528"%2C"source"%3A"u012881331"}

ES节点角色拆分方式

让我歇歇...

参考文档

官方安装文档:https://www.elastic.co/guide/en/cloud-on-k8s/2.8/k8s-deploy-eck.html

相关推荐
金融支付架构实战指南10 小时前
支付系统 ES 实战案例:从索引创建到真实业务查询
大数据·elasticsearch·搜索引擎·支付
Elastic 中国社区官方博客15 小时前
13.7万人,零人工决策:使用 Elasticsearch 实现智能体驱动的灾害响应系统
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
可乐ea16 小时前
【知识获取与分享社区项目 | 项目日记第 19 天】基于 Elasticsearch 实现关键词检索与业务权重排序
java·大数据·spring boot·mysql·elasticsearch·搜索引擎·全文检索
查拉图斯特拉面条18 小时前
Git操作指南:克隆、提交、推送与避坑大全
大数据·git·elasticsearch
Zhu75821 小时前
在k8s环境部署elasticsearch+kibana
elasticsearch·kubernetes·jenkins
为爱停留21 小时前
让智能体「记住」对话:Checkpoint 功能、持久化数据接口与 thread_id 详解
java·数据库·elasticsearch
可乐ea1 天前
【知识获取与分享社区项目 | 项目日记第 23 天】项目梳理下篇:高并发与最终一致性复盘:Redis、Kafka、Outbox、ES 与 RAG 如何协同
java·redis·mysql·elasticsearch·缓存·ai·kafka
chushiyunen1 天前
elasticsearch查询相关
大数据·elasticsearch·搜索引擎
jiayong231 天前
Claude Code 快速参考卡片
大数据·elasticsearch·搜索引擎·ai·claude·claude code
Elastic 中国社区官方博客2 天前
6个资源,1条命令:使用 Terraform 全自动化实现 Elastic 异常检测
大数据·人工智能·elasticsearch·搜索引擎·云原生·自动化·terraform