Django AWS Kubernetes RDS连接
我的AWS Kubernetes实例遇到了一些问题 我正试图让我的django实例通过DB端点连接到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[
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,不同的帐户,不同的地区怎么办?