不允许使用Django,Kubernetes和Google Cloud Platform上的负载均衡器

时间:2018-05-11 15:58:16

标签: django kubernetes google-cloud-platform google-kubernetes-engine

我刚刚开始使用GCP和Kubernetes Engine。到目前为止,我设法启动了一个Kubernetes集群,在一个pod中运行我的应用程序并将其连接到Cloud SQL实例。我还添加了一个负载均衡器,所以现在我的应用程序有一个静态IP,我应该能够从外部连接到它。

但是,我刚收到DisallowedHost错误?我应该允许哪种IP? pod的IP是完全随机的还是负载均衡器的IP?

1 个答案:

答案 0 :(得分:3)

原来,这是负载均衡器的IP。在settings.py文件中,我将允许的主机更改为

ALLOWED_HOSTS = [os.environ.get('LOAD_BALANCER_IP', '127.0.0.1')]

在我的部署中,我将负载均衡器IP作为环境变量添加到我的容器中:

spec:
  containers:
    - env:
      - name: LOAD_BALANCER_IP
        value: xx.xx.xx.xx

通过这种方式,我可以让应用程序在部署到kubernetes集群和localhost上自动工作以进行开发。