kubernetes部署中的容器不使用主机网络

kubernetes部署中的容器不使用主机网络,kubernetes,networking,Kubernetes,Networking,我最近很熟悉库伯内特斯。我想在minikube集群中部署一个项目。以下是yaml文件: 部署.yml 我成功创建了部署,pod中的两个容器都已启动并运行,但这些容器无法连接到本地资源,如数据库(如redis) 我通过这个命令获取日志,结果如下 kubectl日志-f项目-5f5c6df6bc-q82s5容器1 错误111连接到127.0.0.1:6379。连接被拒绝 我认为您可以使用Minikube提供的带有特殊主机名的ExternalName类型的服务: 这公开了一个可以从Kubernetes

我最近很熟悉库伯内特斯。我想在minikube集群中部署一个项目。以下是yaml文件:

部署.yml

我成功创建了部署,pod中的两个容器都已启动并运行,但这些容器无法连接到本地资源,如数据库(如redis)

我通过这个命令获取日志,结果如下

kubectl日志-f项目-5f5c6df6bc-q82s5容器1

错误111连接到127.0.0.1:6379。连接被拒绝


我认为您可以使用Minikube提供的带有特殊主机名的
ExternalName
类型的服务: 这公开了一个可以从Kubernetes使用的外部服务

kind: Service
apiVersion: v1
metadata:
  name: redis
spec:
  type: ExternalName
  externalName: host.minikube.internal

在集群中运行的代码中,只需使用主机
redis
,这样Kubernetes就可以检索到到所需主机的映射。

我会在Kubernetes中单独部署redis和其他依赖项(可能使用预建的Helm图表)。您还需要包括
env:
设置,以告知应用程序Redis的实际位置。Kubernetes被设计为一个自包含的多节点系统,您不希望您的应用程序根据它部署到的节点选择随机数据存储(就此而言,您不希望在每个节点上部署独立的Redis)。非常感谢。那么,在什么情况下,我们使用HoestNeals:真的?我只考虑在一个初始阶段,它将在每个节点上运行一个副本,然后对于基础架构软件,我想在KubNeNes中管理,而不是使用不同的自动化工具。即使这样,我也不认为我真的用过它。
kind: Service
apiVersion: v1
metadata:
  name: redis
spec:
  type: ExternalName
  externalName: host.minikube.internal