【发布时间】:2020-11-15 16:26:54
【问题描述】:
之前我一直在 Docker for Desktop Kubernetes 上试验这个命令
helm install my-release --set password=password bitnami/redis
我已经发出了命令helm uninstall my-release。
现在我正在尝试使用 redis 让我的 todolistclient 在 (Docker for Desktop) Kubernetes 中工作:
kubectl run redis --image=bitnami/redis:latest --replicas=1 --port=6379 --labels="ver=1,app=todo,env=proto" --env="REDIS_PASSWORD=password" --env="REDIS_REPLICATION_MODE=master" --env="REDIS_MASTER_PASSWORD=password"
kubectl run todolistclient --image=siegfried01/todolistclient:latest --replicas=3 --port=5000 --labels="ver=1,app=todo,env=proto"
当我查看 ToDoListClient 的日志时,我看到一个堆栈跟踪,表明它无法连接到 redis 服务器并显示以下错误消息:
System.AggregateException: One or more errors occurred. (No connection is available to service this operation: EVAL; SocketFailure on my-release-redis-master.default.svc.cluster.local:6379/Subscription, origin: Error, input-buffer: 0, outstanding: 0, last-read: 0s ago, last-write: 0s ago, unanswered-write: 9760s ago, keep-alive: 60s, pending: 0, state: Connecting, last-heartbeat: never, last-mbeat: -1s ago, global: 0s ago)
这是什么my-release-redis-master.default.svc.cluster.local?这已经被卸载了,我不再运行它了。
我的 C# 代码正在使用
连接到 Redis.AddDistributedRedisCache(options => { options.InstanceName = "OIDCTokens"; options.Configuration = "redis,password=password"; })
为了确定我确实使用了上面的代码,特别是“redis”,我重新编译了我的代码并再次推送到 DockerHub,但我又遇到了同样的错误。
显然,redis 的 helm 版本留下了一些东西,将“redis”翻译成“my-release-redis-master”。如何删除它以便连接到我当前的 redis?
谢谢
齐格飞
【问题讨论】:
标签: docker kubernetes .net-core redis dns