【发布时间】:2020-07-08 15:03:05
【问题描述】:
我最近一直在学习 Kubernetes。我正在尝试使用 redis,但出现以下错误:
Error:Error -3 connecting to redis:6379. Temporary failure in name resolution.
我正在使用:
conn = redis.StrictRedis(host='redis', port=6379)
码头工人作曲家:
redis:
image: redis:alpine
ports:
- "6379:6379"
redis-deploy.yml
apiVersion: apps/v1
kind: Deployment
metadata:
name: redis-deploy
spec:
selector:
matchLabels:
app: redis
template:
metadata:
labels:
app: redis
spec:
containers:
- name: redis
image: redis:alpine
ports:
- containerPort: 6379
服务 redis:
apiVersion: v1
kind: Service
metadata:
labels:
app: redis
name: redis
spec:
selector:
app: redis
type: NodePort
ports:
- port: 6379
protocol: TCP
kubectl 获取 svc
redis NodePort 10.152.183.209 <none> 6379:32649/TCP 7m31s
编辑:图像是从 docker 拉取的,这里是部署文件之一。
apiVersion: apps/v1
kind: Deployment
metadata:
name: greeter-client-deploy
spec:
replicas: 10
selector:
matchLabels:
app: greeter-client
minReadySeconds: 10
strategy:
type: RollingUpdate
rollingUpdate:
maxUnavailable: 1
maxSurge: 1
template:
metadata:
labels:
app: greeter-client
spec:
containers:
- name: greeter-client
image: seancork92/greeter_client:latest
【问题讨论】:
-
那个python代码在哪里运行?
-
我添加了一个编辑。它从 docker 中拉出,并在每个 redis、服务器的容器 pod 中(如编辑中所示)
-
你提到的这个 docker composer 和 kubernetes 有什么关系?请解释你的设置,什么在哪里运行。什么与什么有关。您还提到了
greeter_client:latest图像,但是当我拉出它时,我发现客户端代码中没有与 redis 相关的代码。你的描述很混乱,请具体点,因为现在我们只能猜测。
标签: kubernetes redis