gpt4 book ai didi

docker - 在Kubernetes集群中运行的Elasticsearch Pod的基本身份验证

转载 作者:行者123 更新时间:2023-12-02 12:04:56 24 4
gpt4 key购买 nike

我们需要为运行在我们的kubernetes集群中的elasticsearch和kibana oss(Apache许可证)创建基本(用户名/密码)身份验证。
我们在AWS(EKS),Google Cloud(GKE),本地安装中有多云安装,并且我们计划使用Azure。

我认为具有基本身份验证的nginx反向代理在每个elasticsearch / kibana pod中作为sidecar容器运行。这将是一个简单且已知的解决方案。

问题是:什么是k8s集群中正确的解决方案?我们可以从无数种易于维护的解决方案中得到什么?

最佳答案

好吧,如果您使用的是nginx ingress controller,则可以添加基本身份验证,如下所示:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: kibana
namespace: kibana
annotations:
kubernetes.io/ingress.class: "nginx"
# type of authentication
nginx.ingress.kubernetes.io/auth-type: basic
# name of the secret that contains the user/password definitions
nginx.ingress.kubernetes.io/auth-secret: my-secret-basic-auth
# message to display with an appropriate context why the authentication is required
nginx.ingress.kubernetes.io/auth-realm: 'Authentication Required - kibana-admin'
...
...
my-secret-basic-auth必须使用 htpasswd创建:
$ htpasswd -c auth foo
New password: <bar>
New password:
Re-type new password:
Adding password for user foo

然后,您需要创建 secret :
$ kubectl create secret generic my-secret-basic-auth --from-file=auth
secret "my-secret-basic-auth" created

这很容易维护,但是您将永远与 nginx ingress controller保持联系。

关于docker - 在Kubernetes集群中运行的Elasticsearch Pod的基本身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55090808/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com