Django AWS Kubernetes RDS连接

Django AWS Kubernetes RDS连接,django,amazon-web-services,kubernetes,amazon-rds,Django,Amazon Web Services,Kubernetes,Amazon Rds,我的AWS Kubernetes实例遇到了一些问题 我正试图让我的django实例通过DB端点连接到RDS服务 DATABASES = { 'default': { 'ENGINE': 'django.contrib.gis.db.backends.postgis', 'NAME': os.environ['NAME'], 'USER': os.environ['USER'], 'PASSWORD': os.environ[

我的AWS Kubernetes实例遇到了一些问题

我正试图让我的django实例通过DB端点连接到RDS服务

DATABASES = {
    'default': {
        'ENGINE': 'django.contrib.gis.db.backends.postgis',
        'NAME': os.environ['NAME'],
        'USER': os.environ['USER'],
        'PASSWORD': os.environ['PASSWORD'],
        'HOST': os.environ['HOST'],
        'PORT': os.environ['PORT']
    }
}
主机字符串类似于service.key.region.rds.amazonaws.com,并通过deploy.yml中的env传递给容器

containers:
  - name: service
    env:
      - name: HOST
        value: service.key.region.rds.amazonaws.com
这个设置在kubernetes本地工作,但当我把它放在AWS上的集群中时就不行了。它返回以下错误:

django.db.utils.OperationalError: could not translate host name


是否有任何建议或我遗漏了AWS处理问题的方式?

假设您的AWS部署现在与RDS位于同一VPC中,则您需要将主机更改为使用专用IP。

假设您的AWS部署现在与RDS位于同一VPC中,然后,您需要将主机更改为使用专用IP。

是否使用EKS?您的manage.py文件是否读取了错误的设置文件?尽管是关于Docker的问题,但我觉得这可能与您的问题有关。不要使用kubeadm,1 master 1 node来处理我自己的问题。正在努力学习。您的AWS部署现在与您的RDS在同一VPC中吗?@ingernet我只是仔细检查了我的设置文件,by base.py不保存任何数据库配置。我改变了一些东西,重建了图像只是为了确定,我仍然得到相同的错误。好主意,谢谢你的建议。你在使用EKS吗?你的manage.py文件是否读取了错误的设置文件?尽管是关于Docker的问题,但我觉得这可能与您的问题有关。不要使用kubeadm,1 master 1 node来处理我自己的问题。正在努力学习。您的AWS部署现在与您的RDS在同一VPC中吗?@ingernet我只是仔细检查了我的设置文件,by base.py不保存任何数据库配置。我改变了一些东西,重建了图像只是为了确定,我仍然得到相同的错误。好主意,谢谢你的建议。请原谅我的无知,但是我在哪里可以找到RDS的私有ip,在RDS仪表板中我能找到的最近的是端点。好的,在我确定这是绝对错误之前,请尝试ping RDS端点以获取私有ip地址。然后在你的部署中使用它。太棒了!我认为这与Kubernetes内部路由有关:感谢您的帮助和链接。非常感谢如果您在不同的VPC、不同的帐户、不同的地区会怎样?请原谅我的无知,但是我在哪里可以找到RDS的私有ip,在RDS仪表板中我能找到的最接近的是端点。好的,在我确定这是绝对错误之前,请尝试ping RDS端点以获取私有ip地址。然后在你的部署中使用它。太棒了!我认为这与Kubernetes内部路由有关:感谢您的帮助和链接。非常感激如果你在不同的VPC,不同的帐户,不同的地区怎么办?