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