类似 k8s 的 namespace 用于资源隔离。测试环境和生产环境用同一个 ES,因为 index 名称是写在程序里的,所以数据会造成污染吧!如果不存在 namespace 这种操作,我只能多命名一个测试用的 index 吗?例如:生产环境-v2ex,测试环境:v2ex_test 。
1
sadfQED2 2021-08-10 17:05:18 +08:00 via Android
一般做法是部署两套 es,不同环境加载不同的服务器。
当然你也可以在 index 后面加个后缀,然后把后缀放到配置文件里面 |
2
hutoer 2021-08-10 17:05:48 +08:00
我们是部署 2 套,生产环境不是谁都可以碰的
|
3
sadfQED2 2021-08-10 17:06:03 +08:00 via Android
另外,es 没有 namespace 这个概念
|
4
yghack 2021-08-10 17:08:48 +08:00
docker 启 2 个,换个端口,完事
|
5
wangbenjun5 2021-08-10 17:09:22 +08:00 via Android
测试环境和生产公用一个 ES 也是 666,这和你公用一个数据库有啥区别,整个测试的 ES 最好吧
|
6
securityCoding 2021-08-10 17:30:38 +08:00
测试环境 docker 起一个吧 , 生产环境乱搞要跑路的
|
7
coolcoffee 2021-08-10 17:34:19 +08:00
基于 SearchGuard 可以隔离出 Tenant 租户,可以直接用 aws 维护的 opendistro 分支,默认集成了 SearchGuard 。
但是测试和生产最好还是分开,万一哪天需要升级配置或者版本,你连个验证缓冲的环境都没有。 |
8
Morriaty 2021-08-10 17:38:47 +08:00
正常情况下生产环境和测试环境网络都是隔离的吧
|
9
777777 OP 大家不用在意生产和测试隔离,我只是举个例子。总结一下:1. 大多数是部署 2 套 es 2. 基于 SearchGuard 可以隔离出 Tenant 租户
|