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

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

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


Istio IngressGateway HTTPS 加密

 

在前面创建 Istio 的 Elasticsearch 集群时我们选择不启用 Elasticsearch 自身的 HTTPS 加密,而交给 Istio 来管理 TLS 加密,现在我们在 Istio IngressGateway 上配置 HTTPS 加密。

创建用于服务签名的根证书和私钥:


openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 \
-subj '/O=elasticsearch Inc./CN=elasticsearch.com' \
-keyout elasticsearch.com.key \
-out elasticsearch.com.crt

为 istio.elasticsearch.com 域名创建证书和私钥:


openssl req -out istio.elasticsearch.com.csr -newkey rsa:2048 -nodes \
-keyout istio.elasticsearch.com.key \
-subj "/CN=istio.elasticsearch.com/O=istio organization"
openssl x509 -req -days 365 -CA elasticsearch.com.crt \
-CAkey elasticsearch.com.key -set_serial 0 \
-in istio.elasticsearch.com.csr -out istio.elasticsearch.com.crt

查看创建相关证书文件:

> ls -l
total 20
-rw-r--r-- 1 chengzw chengzw 1212 Aug 30 10:52 elasticsearch.com.crt
-rw------- 1 chengzw chengzw 1708 Aug 30 10:52 elasticsearch.com.key
-rw-r--r-- 1 chengzw chengzw 1074 Aug 30 10:54 istio.elasticsearch.com.crt
-rw-r--r-- 1 chengzw chengzw  948 Aug 30 10:53 istio.elasticsearch.com.csr
-rw------- 1 chengzw chengzw 1704 Aug 30 10:53 istio.elasticsearch.com.key

为 Ingress Gateway 创建 Secret:


kubectl create -n istio-system secret tls istio-elasticsearch-credential \
--key=istio.elasticsearch.com.key \
--cert=istio.elasticsearch.com.crt

修改原先 Istio Gateway 的资源文件,将 credentialName 的值指定为 istio-elasticsearch-credential,这个与刚刚创建的 Secret 名称相同,TLS 模式的设置为 SIMPLE。

apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
  name: istio-elasticsearch-gateway-tls
  namespace: istio-demo
spec:
  selector:
    istio: ingressgateway
  servers:
  - port:
      number: 9200
      name: https
      protocol: HTTPS #改为 HTTPS 协议
    hosts:
       - "istio.elasticsearch.com" #客户端访问的域名
    tls: #TLS 加密
      mode: SIMPLE
      credentialName: istio-elasticsearch-credential

定义 VirtualService 关联 Gateway。


apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: istio-elasticsearch-gateway-virtualservice-tls
  namespace: istio-demo
spec:
  hosts:
  - "istio.elasticsearch.com" #客户端访问的域名
  gateways:
  - istio-elasticsearch-gateway-tls  #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

删除原先的 Gateway 和 Virtualservice,创建新的 TLS 加密的 Gateway 和 Virtualservice。


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

由于我们的 HTTPS 证书是自签证书,客户端通过 curl 命令访问 Elasticsearch 时需要加上

-k 参数,表示允许连接不受信任的 HTTPS 连接。

 

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

相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
相关文章
|
存储 缓存 达摩院
企查查基于阿里云Elasticsearch 在复杂检索场景中的性能优化
本文分享企查查基于阿里云Elasticsearch 在复杂检索场景中的性能优化。
1880 0
typro收费了,怎么看markdown文章?推荐谷歌markdown插件
typro收费了,怎么看markdown文章?推荐谷歌markdown插件
565 0
typro收费了,怎么看markdown文章?推荐谷歌markdown插件
|
JavaScript Java 关系型数据库
心理健康测评|基于SprinBoot+vue的大学生心理健康测评管理系统(源码+数据库+文档)
心理健康测评|基于SprinBoot+vue的大学生心理健康测评管理系统(源码+数据库+文档)
343 1
|
8月前
|
消息中间件 NoSQL 调度
温故而知新,PHP Swoole使用过程中的一些思考
本文回顾了异步任务处理、进程与协程调度机制、Redis与消息队列的应用、Swoole协程原理等内容,探讨了CPU时间片分配、IO阻塞、协程切换等关键技术问题,适用于高并发场景下的性能优化与系统设计。
255 6
|
数据采集 Java Python
如何用Python同时抓取多个网页:深入ThreadPoolExecutor
在信息化时代,实时数据的获取对体育赛事爱好者、数据分析师和投注行业至关重要。本文介绍了如何使用Python的`ThreadPoolExecutor`结合代理IP和请求头设置,高效稳定地抓取五大足球联赛的实时比赛信息。通过多线程并发处理,解决了抓取效率低、请求限制等问题,提供了详细的代码示例和解析方法。
453 0
如何用Python同时抓取多个网页:深入ThreadPoolExecutor
|
10月前
小红书无限私信群发工具,小红书私信脚本插件,导入ID关注收藏评论留言
这是一款针对小红书平台开发的私信群发软件,可突破官方私信数量限制。通过这款插件,用户能够自由发送超过官方限制数量的私信
|
消息中间件 NoSQL Go
PHP转Go系列 | ThinkPHP与Gin框架之Redis延时消息队列技术实践
【9月更文挑战第7天】在从 PHP 的 ThinkPHP 框架迁移到 Go 的 Gin 框架时,涉及 Redis 延时消息队列的技术实践主要包括:理解延时消息队列概念,其能在特定时间处理消息,适用于定时任务等场景;在 ThinkPHP 中使用 Redis 实现延时队列;在 Gin 中结合 Go 的 Redis 客户端库实现类似功能;Go 具有更高性能和简洁性,适合处理大量消息。迁移过程中需考虑业务需求及系统稳定性。
449 1
|
机器学习/深度学习 人工智能 自然语言处理
Transformer到底解决什么问题?
本文希望围绕“Transformer到底是解决什么问题的”这个角度,阐述NLP发展以来遇到的关键问题和解法,通过这些问题引出Transformer实现原理,帮助初学者理解。
Transformer到底解决什么问题?
|
存储 分布式计算 Hadoop
HDFS如何处理大文件和小文件的存储和访问?
HDFS如何处理大文件和小文件的存储和访问?
441 0
|
边缘计算 人工智能 物联网
物联网未来展望:5G、AI与边缘计算的融合之路
本篇详细探讨了物联网领域的未来展望,包括5G与物联网的融合、人工智能在物联网中的应用,以及边缘计算与物联网的发展趋势。通过代码示例,读者可以了解如何利用5G网络进行物联网设备间的高效数据传输,以及如何应用人工智能技术进行智能感知和数据分析。此外,我们还介绍了边缘计算在物联网中的重要作用,以及如何在边缘设备上进行数据处理和分析。通过本篇内容,读者将对物联网未来的技术发展有更全面的认识,为把握物联网领域的机遇提供有益的前瞻性指导。
1066 0

热门文章

最新文章

下一篇
开通oss服务