Kubernetes Pod对象在尝试使用PostgreSQL DB部署停靠的Django应用程序时在无限循环中崩溃

Kubernetes Pod对象在尝试使用PostgreSQL DB部署停靠的Django应用程序时在无限循环中崩溃,django,postgresql,docker,kubernetes,google-kubernetes-engine,Django,Postgresql,Docker,Kubernetes,Google Kubernetes Engine,我正在进行Django项目,并试图将其部署到Kubernetes集群Google云提供商上。我已成功创建配置群集所需的所有文件: Django应用程序部署+服务.yml文件 Postgres DB部署+服务+PersistentVolumeClaim,动态创建PersistentVolume对象并在上使用PD存储 默认情况下,云节点+Secret.yml文件 Docker File+Docker Compose我对Docker没有太多的经验,所以他们可能有问题,也许这就是问题所在 这个问题我想不

我正在进行Django项目,并试图将其部署到Kubernetes集群Google云提供商上。我已成功创建配置群集所需的所有文件:

Django应用程序部署+服务.yml文件 Postgres DB部署+服务+PersistentVolumeClaim,动态创建PersistentVolume对象并在上使用PD存储 默认情况下,云节点+Secret.yml文件 Docker File+Docker Compose我对Docker没有太多的经验,所以他们可能有问题,也许这就是问题所在 这个问题我想不出来 由于某种原因,当我尝试应用它们时,我的pod,特别是Django应用程序pod,正在无限循环中崩溃。此外,我的Postgres吊舱没有崩溃,但它没有运行

谁能帮我找出我做错了什么?这是我的github回购协议:

我最好的猜测是,我没有在settings.py文件中正确设置数据库配置,并且我的Django应用程序找不到settings.py中指定的数据库主机。如果有人有任何建议,请留下评论

这是我的Kubernetes吊舱列表的图片:

下面是我描述的第一个吊舱对象的图片:

下面是我描述的一个节点的图片:

*更新*

以下是我尝试运行python src/manage.py runserver时的错误消息:


您的应用程序无法连接到数据库,因为您的Postgres服务器无法启动。您有0/1个POD处于就绪状态

你没有发布它的Pod事件,但我想主要原因是它的数量

在您的Postgres规范中,我看到您将卷类型设置为 ReadWriteMany,但Google Cloud不提供这种类型的卷、路径访问模式,实际上,我看不出您需要它的原因。将类型更改为ReadWriteOnce并重新部署数据库,这应该会有所帮助

另外,要获取集群中应用程序的日志,可以调用kubectl logs$podname,这会更有帮助
P.P.S.发布文本信息时,请使用文本格式

你能分享pods的日志、kubectl为你的pods描述$pod命令的结果以及你节点的标签吗?我已经更新了这个问题。请看一看,谢谢你的帮助!
(web_development) cepa995@cepa995-VirtualBox:~/Agentske_Tehnologije/agents$ python src/manage.py runserver
/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/psycopg2/__init__.py:144: UserWarning: The psycopg2 wheel package will be renamed from release 2.8; in order to keep installing from binary please use "pip install psycopg2-binary" instead. For details see: <http://initd.org/psycopg/docs/install.html#binary-install-from-pypi>.
  """)
/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/psycopg2/__init__.py:144: UserWarning: The psycopg2 wheel package will be renamed from release 2.8; in order to keep installing from binary please use "pip install psycopg2-binary" instead. For details see: <http://initd.org/psycopg/docs/install.html#binary-install-from-pypi>.
  """)
Performing system checks...

System check identified no issues (0 silenced).
Unhandled exception in thread started by <function check_errors.<locals>.wrapper at 0x7f6b37e9a9d8>
Traceback (most recent call last):
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/db/backends/base/base.py", line 216, in ensure_connection
    self.connect()
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/db/backends/base/base.py", line 194, in connect
    self.connection = self.get_new_connection(conn_params)
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/db/backends/postgresql/base.py", line 168, in get_new_connection
    connection = Database.connect(**conn_params)
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/psycopg2/__init__.py", line 130, in connect
    conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
psycopg2.OperationalError: could not translate host name "postgres-service" to address: Name or service not known


The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/utils/autoreload.py", line 225, in wrapper
    fn(*args, **kwargs)
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/core/management/commands/runserver.py", line 124, in inner_run
    self.check_migrations()
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/core/management/base.py", line 427, in check_migrations
    executor = MigrationExecutor(connections[DEFAULT_DB_ALIAS])
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/db/migrations/executor.py", line 18, in __init__
    self.loader = MigrationLoader(self.connection)
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/db/migrations/loader.py", line 49, in __init__
    self.build_graph()
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/db/migrations/loader.py", line 206, in build_graph
    self.applied_migrations = recorder.applied_migrations()
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/db/migrations/recorder.py", line 61, in applied_migrations
    if self.has_table():
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/db/migrations/recorder.py", line 44, in has_table
    return self.Migration._meta.db_table in self.connection.introspection.table_names(self.connection.cursor())
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/db/backends/base/base.py", line 255, in cursor
    return self._cursor()
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/db/backends/base/base.py", line 232, in _cursor
    self.ensure_connection()
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/db/backends/base/base.py", line 216, in ensure_connection
    self.connect()
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/db/utils.py", line 89, in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/db/backends/base/base.py", line 216, in ensure_connection
    self.connect()
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/db/backends/base/base.py", line 194, in connect
    self.connection = self.get_new_connection(conn_params)
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/django/db/backends/postgresql/base.py", line 168, in get_new_connection
    connection = Database.connect(**conn_params)
  File "/home/cepa995/anaconda3/envs/web_development/lib/python3.6/site-packages/psycopg2/__init__.py", line 130, in connect
    conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
django.db.utils.OperationalError: could not translate host name "postgres-service" to address: Name or service not known