ElasticSearch的ipv6改造

ElasticSearch的ipv6改造



前言

新浪科技讯 北京时间11月26日下午消息,据国外媒体报道,负责英国、欧洲、中东和部分中亚地区互联网资源分配的欧洲网络协调中心(RIPE NCC)近日宣布,全球所有43亿个IPv4地址已全部分配完毕,这意味着没有更多的IPv4地址可以分配给ISP(网络服务提供商)和其他大型网络基础设施提供商。
因此国内的服务进行ipv6改造是必然的。其中ElasticSearch的ipv6改造如文章内容所示。


一、服务器的ipv6准备工作

  1. 确定服务器是否分配了ipv6地址
    执行ifconfig命令查网卡信息,信息中包含了global这一行的信息为ipv6地址。
ifconfig

![在这里插入图片描述](https://img-blog.csdnimg.cn/2fde18be89b144abb106a8e3d6bb21f6.png在这里插入图片描述

  1. 如果查看没有ipv6地址需要申请并给服务器添加ipv6地址。
    ipv6配置方法见连接:

https://blog.csdn.net/qq_26711103/article/details/103823918

3.在服务器的hosts文件中添加ipv6地址与主机名
主机名通过命令hostname获得

hostname

这里的ipv6不需要添加中括号。如果是elasticsearch集群,需要在这里添加其他部署elasticsearch服务器的主机名与地址

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
ipv6地址	主机名  当前主机的信息
ipv6地址	主机名	节点1的服务器信息
ipv6地址	主机名	节点2的服务器信息
ipv6地址	主机名	节点3的服务器信息

二、 修改ElasticSearch的config下的配置文件:elasticsearch.yml

cluster.name: ansible-es
node.name: node1
network.host: node01											#修改这里的network.host: 为你的主机名称
http.port: 9200
transport.tcp.port: 9300
discovery.seed_hosts: ['node01', 'node02', 'node03']			#修改这里的三个node*为你对应的elasticsearch集群对应的主机名
cluster.initial_master_nodes: ['node01', 'node02', 'node03']	#修改这里的三个node*为你对应的elasticsearch集群对应的主机名
gateway.recover_after_nodes: 1
bootstrap.memory_lock: true
bootstrap.system_call_filter : false
http.cors.enabled : true
http.cors.allow-origin : "*"
http.cors.allow-methods : OPTIONS, HEAD, GET, POST, PUT, DELETE
http.cors.allow-headers : X-Requested-With,X-Auth-Token,Content-Type, Content-Length
# forbid auto create index
#path.data: /opt/ultrapower/esdata7

#indices.memory.index_buffer_size: 50%
#indices.memory.min_index_buffer_size: 96mb


xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: /config/certs/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: /config/certs/elastic-certificates.p12

xpack.security.http.ssl.enabled: true
xpack.security.http.ssl.keystore.path: /config/certs/elastic-certificates.p12
xpack.security.http.ssl.truststore.path: /config/certs/elastic-certificates.p12
xpack.security.http.ssl.client_authentication: optional

三、验证是否ipv6启动,以及ipv6通信

代码如下(示例):

方式1

  1. 通过curl验证
    如果开启了SSL认证和https认证需要添加密码与-K
curl http://node03:9200/_cat/nodes?v
#SSL认证与https认证
curl -u username:password 'https://node03:9200/_cat/nodes?v' -k

  1. 结果:
    在这里插入图片描述

方式2

  1. 使用命令netstat -an|grep 9300 查看端口使用的地址
netstat -an|grep 9200 
netstat -an|grep 9300 
  1. 结果此处elasticsearch使用的端口为45070
    在这里插入图片描述

错误总结

如果配置文件中的"network.host"配配置了::0也能达到在浏览器通过ipv6地址访问es的目的,但是在节点在加入集群时,仍然会是ipv4的地址。因此需要使用主机名进行更替。

总结

通过对服务器添加ipv6地址与修改elasticsearch的配置文件达到elasticsearch集群通过ipv6访问的目的。

ps:创作不易,多点赞,多评论,多收藏!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值