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

本文涉及的产品
Elasticsearch Serverless通用抵扣包,测试体验金 200元
简介: 带你读《Elastic Stack 实战手册》之15:——3.4.1.8. ECK 安装(22)

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


定义一个 Gateway 资源,定义集群外部流量访问集群中 Elasticsearch 服务的入口。集群外部的客户通过 istio.elasticsearch.com 域名和 9200 端口访问集群内部的 Elasticsearch 服务。

apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
  name: istio-elasticsearch-gateway
  namespace: istio-demo
spec:
  selector:
    istio: ingressgateway
  servers:
  - port:
      number: 9200
      name: http
      protocol: HTTP
    hosts:
       - "istio.elasticsearch.com" #客户端访问的域名

将 VirtualService 绑定到 Gateway 上,使用 Istio 规则来控制从集群外部通过 Gateway 进入的流量。将所有写操作的流量转发至 Ingest 节点,其他操作的流量转发至 Coordinating 节点。


apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: istio-elasticsearch-gateway-virtualservice
  namespace: istio-demo
spec:
  hosts:
  - "istio.elasticsearch.com" #客户端访问的域名
  gateways:
  - istio-elasticsearch-gateway  #gateway 的名称
  http:
  - match:  #写入操作的请求分发至 ingest 节点
    - uri:
        regex: .*_doc.* #正则表达式匹配 url,例如创建文档 my-index-istio/doc/1
    - uri:
        prefix: /_bulk #匹配 url 前缀,bulk 批量提交
    route:
      - destination:
          host: istio-elasticsearch-es-ingest #kubernetes 集群中真正存在的 service
  - route:
    - destination:  #其余操作的请求分发至 coordinating 节点
        host: istio-elasticsearch-es-coordinating


使用以下命令应用 Istio 转发规则:


kubectl apply -f gateway.yaml
kubectl apply -f virtualservice.yaml

访问验证

 

由于在 Gateway 中定义的域名没有 DNS 服务器能解析到 SLB 的公网地址,我们需要在客户端添加 host 记录,在客户端编辑 /etc/hosts,添加以下记录:

 

121.41.8.133 istio.elasticsearch.com

客户端写入 1000 条数据:


for i in {1..1000};do curl -u elastic:L733hU98Y467IZMft4DzLq5m \
http://istio.elasticsearch.com:9200/my-index-istio/_doc\?pretty \
-X POST -H "Content-Type:application/json" \
-d '{"name":"tom","age":18}';done
#返回结果
{
  "_index" : "my-index-istio",
  "_type" : "_doc",
  "_id" : "1",
  "_version" : 1,
  "result" : "created",
  "_shards" : {
    "total" : 2,
    "successful" : 2,
    "failed" : 0
  },
  "_seq_no" : 0,
  "_primary_term" : 1
}
......

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

相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
相关文章
|
8月前
|
消息中间件 安全
为什么会选择使用RabbitMQ ? 有什么好处 ?
选择使用RabbitMQ是因为RabbitMQ的功能比较丰富 , 支持各种消息收发模式(简单队列模式, 工作队列模式 , 路由模式 , 直接模式 , 主题模式等) , 支持延迟队列 , 惰性队列而且天然支持集群, 保证服务的高可用, 同时性能非常不错 , 社区也比较活跃, 文档资料非常丰富 使用MQ有很多好处: ● 吞吐量提升:无需等待订阅者处理完成,响应更快速 ● 故障隔离:服务没有直接调用,不存在级联失败问题 ● 调用间没有阻塞,不会造成无效的资源占用 ● 耦合度极低,每个服务都可以灵活插拔,可替换 ● 流量削峰:不管发布事件的流量波动多大,都由Broker接收,订阅者可以按照自己的速度去
|
存储 关系型数据库 MySQL
【面试宝藏】MySQL 面试题解析
MySQL面试题解析涵盖数据库范式、权限系统、Binlog格式、存储引擎对比、索引原理及优缺点、锁类型、事务隔离级别等。重点讨论了InnoDB与MyISAM的区别,如事务支持、外键和锁机制。此外,还提到了Unix时间戳与MySQL日期时间的转换,以及创建索引的策略。
255 4
|
Linux Shell 数据安全/隐私保护
Linux 初学者必学的 10 个命令,学习!
【10月更文挑战第28天】
292 1
Linux 初学者必学的 10 个命令,学习!
|
小程序 API
微信小程序踩坑- tabBar.list[3].selectedIconPath 大小超过 40kb
微信小程序踩坑- tabBar.list[3].selectedIconPath 大小超过 40kb
358 0
|
编解码 JavaScript 前端开发
JS逆向浏览器脱环境专题:事件学习和编写、DOM和BOM结构、指纹验证排查、代理自吐环境通杀环境检测、脱环境框架、脱环境插件解决
JS逆向浏览器脱环境专题:事件学习和编写、DOM和BOM结构、指纹验证排查、代理自吐环境通杀环境检测、脱环境框架、脱环境插件解决
759 1
|
资源调度
Markdown 数学公式
Markdown 数学公式
204 0
|
前端开发 JavaScript 资源调度
npm打包前端项目太慢问题分析以及暂时解决方案
npm build 打包前端项目实际上是执行 node build/build.js,但是随着项目的依赖包越来越多,项目打包时间不断延长,为了改善这个问题,需要从node入手 暂时解决方案:扩大node运行程序的内存,经本人测试(项目和机器固定) 2G:308.
5685 0
|
前端开发
Promise的链式调用
Promise的链式调用是指在一个Promise对象上连续调用多个then方法的过程。通过链式调用,可以将多个异步操作按照顺序执行,并且可以在每个操作完成后处理返回的结果。
297 0
|
存储 缓存 分布式计算
Fluid新魔法:跨Kubernetes Namespace共享数据集
Fluid帮助数据科学家优化数据访问。不同的数据科学家团队会在多个不同的Namespace中创建数据密集型作业,且这些作业将访问相同的数据集。多个数据科学家复用相同的数据集,特别是开源数据集。各数据科学家拥有自己独立的Namespace提交作业。如果对于每个Namespace运行缓存运行时并进行缓存预热,会造成缓存资源浪费和作业启动延迟问题。
1000 0
Fluid新魔法:跨Kubernetes Namespace共享数据集
|
存储 弹性计算 安全
Intel Xeon(Ice Lake) Platinum 8369B
阿里云服务器CPU处理器Intel Xeon(Ice Lake) Platinum 8369B,基频2.7 GHz,全核睿频3.5 GHz,计算性能稳定。目前阿里云第七代云服务器ECS计算型c7、ECS通用型g7、内存型r7等规格均采用该款CPU
1520 0
Intel Xeon(Ice Lake) Platinum 8369B

热门文章

最新文章