使用microk8s连接到redis

relj7zay  于 2021-06-09  发布在  Redis
关注(0)|答案(1)|浏览(317)

这个问题在这里已经有答案了

名称解析redis暂时失败(2个答案)
9个月前关门了。
我一直在使用microk8s,redis似乎在flask网页上给出了以下错误:(redis是一个pod,flask网页在另一个pod中)

connecting to redis:6379. Temporary failure in name resolution.

我也经常会遇到以下错误:

grpc._channel._MultiThreadedRendezvous: <_MultiThreadedRendezvous of RPC that terminated with:
    status = StatusCode.UNAVAILABLE
    details = "DNS resolution failed"
    debug_error_string = "{"created":"@1585584578.284600062","description":"Failed to pick subchannel","file":"src/core/ext/filters/client_channel/client_channel.cc","file_line":3941,"referenced_errors":[{"created":"@1585584578.284535859","description":"Resolver transient failure","file":"src/core/ext/filters/client_channel/resolving_lb_policy.cc","file_line":262,"referenced_errors":[{"created":"@1585584578.284532411","description":"DNS resolution failed","file":"src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.cc","file_line":370,"grpc_status":14,"referenced_errors":[{"created":"@1585584578.284452899","description":"C-ares status is not ARES_SUCCESS: Timeout while contacting DNS servers","file":"src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc","file_line":244,"referenced_errors":[{"created":"@1585584578.284444557","description":"C-ares status is not ARES_SUCCESS: Timeout while contacting DNS servers","file":"src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.cc","file_line":244}]}]}]}]}"

不确定这是否与dns或grpc有关
python连接:

conn = redis.StrictRedis(host='redis', port=6379)

服务yml:

apiVersion: v1
kind: Service
metadata:
  labels:
    app: redis
  name: redis
spec:
  selector:
    app: redis
  type: NodePort
  ports:
  - port: 6379
    nodePort: 10000
    protocol: TCP

部署:

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-cli -p 10000
x759pob2

x759pob21#

根据您的错误日志,这似乎是一个问题与dns服务器本身,而不是与记录 redis . 我不熟悉micro-k8s,不知道kube系统中是否运行核心dns或kube dns。

相关问题