目录
4.6 查询myes2相同索引热备成功
1 资源下载
2 解压
以x86的为例,arm同
# 1 新建gateway文件夹 mkdir -p /usr/local/gateway # 2 解压 tar -zxvf gateway-1.6.0_SNAPSHOT-657-linux-amd64.tar.gz -C /usr/local/gateway# 具体解压后文件如下图
3 修改配置文件
# 1 备份默认的gateway.yml
mv gateway.yml gateway.yml.bak
# 2 新建gateway.yml文件
vim gateway_to_es.yml
---------------
path.data: data
path.logs: log
# 网关的请求入口配置
entry:
# 定义一个名为my_es_entry的资源入口
- name: my_es_gateway
enabled: true
# 引用名为my_router的请求转发路由
router: my_router
max_concurrency: 10000
network:
# 所有本地网卡监听IP的自定义18888端口
binding: 0.0.0.0:18888
# 开启TLS实现网关对外提供HTTPS协议
tls:
enabled: true
# 定义一个名为my_kibana_entry的资源入口
- name: my_kibana_entry
enabled: true
# 引入名为my_kibana_router的请求转发路由
router: my_kibana_router
max_concurrency: 10000
network:
# kibana对外映射自定义端口15601
binding: 0.0.0.0:15601
# 转发路由引用配置
router:
- name: my_router
default_flow: default_flow
- name: my_kibana_router
default_flow: kibana_flow
# 处理逻辑配置,读取写入按照顺序执行
flow:
- name: default_flow
filter:
# es1集群
- elasticsearch:
elasticsearch: es1
# es2集群
- elasticsearch:
elasticsearch: es2
# 开启认证
- basic_auth:
valid_users:
# 用户名:密码
testUserName: 123456
- name: kibana_flow
filter:
- http:
# 如果kibana的模式是https,则此处要配置https
schema: "http"
# 主机映射名:端口号
host: "kibanaServerIP:5601"
# 对应的ES节点
elasticsearch:
- name: es1
enabled: true
# es1主机映射名:es1端口号
endpoint: http://es1:9201
- name: es2
enabled: true
# es2主机映射名:es2端口号
endpoint: http://es2:9202
----------------------------------------
4 启动网关
4.1 启动
# 0 查看目录结构
[root@es gateway]# ll
总用量 21364
-rwxr-xr-x 1 124 130 21864448 5月 31 15:35 gateway-linux-amd64
-rw-r--r-- 1 124 130 4290 5月 31 15:35 gateway_to_es.yml
drwxr-xr-x 3 124 130 4096 5月 30 09:46 sample-configs
# 1 启动网关
# 其实网关配置文件的默认名就是gateway.yml,如果此文件名没有改动,直接执行 ./gateway-linux-amd64 即可!
[root@es gateway]# ./gateway-linux-amd64 -config gateway_to_es.yml
___ _ _____ __ __ __ _
/ _ \ /_\ /__ \/__\/ / /\ \ \/_\ /\_/\
/ /_\///_\\ / /\/_\ \ \/ \/ //_\\\_ _/
/ /_\\/ _ \/ / //__ \ /\ / _ \/ \
\____/\_/ \_/\/ \__/ \/ \/\_/ \_/\_/
[GATEWAY] A light-weight, powerful and high-performance elasticsearch gateway.
[GATEWAY] 1.6.0_SNAPSHOT, 2022-05-31 07:35:13, 2023-12-31 10:10:10, 21ec7be5de546f5454b3ccb58b2ce9183cd1ff2d
[06-30 10:44:23] [INF] [app.go:174] initializing gateway.
[06-30 10:44:23] [INF] [app.go:175] using config: /usr/local/gateway/gateway_to_es.yml.
[06-30 10:44:23] [INF] [instance.go:72] workspace: /usr/local/gateway/data/gateway/nodes/caq3282sb5pld6028890
[06-30 10:44:23] [INF] [app.go:283] gateway is up and running now.
[06-30 10:44:23] [INF] [actions.go:358] elasticsearch [es1] is available
[06-30 10:44:23] [INF] [actions.go:358] elasticsearch [es2] is available
[06-30 10:44:23] [INF] [api.go:262] api listen at: http://0.0.0.0:2900
[06-30 10:44:23] [INF] [reverseproxy.go:261] elasticsearch [es1] hosts: [] => [192.168.1.1:9201]
[06-30 10:44:23] [INF] [reverseproxy.go:261] elasticsearch [es2] hosts: [] => [192.168.1.2:9202]
[06-30 10:44:23] [INF] [entry.go:331] entry [es_gateway/] listen at: https://0.0.0.0:18888
[06-30 10:44:23] [INF] [entry.go:331] entry [my_kibana_entry/] listen at: http://0.0.0.0:15601
[06-30 10:44:23] [INF] [module.go:116] all modules are started
4.2 访问kibana前需要先输入认证
4.3 关联的kibana访问状态
4.4 测试语句
# 1 创建测试索引
curl -XPUT -k https://kibanaServerIP:18888/test_index_20220627 -H 'Content-Type: application/json' -d'
{
"settings":{
"number_of_shards":6,
"number_of_replicas":0
},
"mappings":{
"properties":{
"account_holder_name":{
"type":"text",
"fields":{
"keyword":{
"type":"keyword",
"ignore_above":256
}
}
}
}
}
}
'
=======================
# 2 向该索引插入数据
curl -XPOST -k https://kibanaServerIP:18888/test_index_20220627/_doc/id2 -H 'Content-Type: application/json' -d'
{
"properties":{
"account_holder_name":"极限网关测试插入数据"
}
}
'