[英]Unable to connect to ClusterIP service
我已經使用RabbitIP部署了ClusterIP服務。
部署:
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: rabbit-mq
name: rabbit-mq
spec:
replicas: 1
selector:
matchLabels:
app: rabbit-mq
strategy:
type: Recreate
template:
metadata:
labels:
app: rabbit-mq
spec:
containers:
- image: rabbitmq:3.6.1-management
name: rabbit-mq
ports:
- containerPort: 5672
volumeMounts:
- mountPath: /etc/rabbitmq
name: rabbit-mq-data
restartPolicy: Always
hostname: rabbit-mq
volumes:
- name: rabbit-mq-data
persistentVolumeClaim:
claimName: rabbit-mq-data
服務:
apiVersion: v1
kind: Service
metadata:
name: rabbit-mq-service
labels:
app: rabbit-mq
namespace: default
spec:
type: ClusterIP
ports:
- port: 5672
selector:
app: rabbit-mq
正如我對其他服務進行的測試以及在文檔中所說的那樣,ClusterIP服務對於群集內的所有Pod和節點都應該可見。 我需要RabbitMQ服務只能在集群內部訪問。 正如我定義的端口5672一樣,它也用於targetPort。
我有.NET Core應用程序使用以下連接字符串連接到服務: amqp://user:password@10.100.10.10:5672/
kubectl get svc rabbit-mq-service
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE rabbit-mq-service ClusterIP 10.100.10.10 <none> 5672/TCP 3h7m
當我嘗試連接到RabbitMQ時,出現錯誤:
Unhandled Exception: RabbitMQ.Client.Exceptions.BrokerUnreachableException: None of the specified endpoints were reachable ---> System.AggregateException: One or more errors occurred. (Connection failed) ---> RabbitMQ.Client.Exceptions.ConnectFailureException: Connection failed ---> System.TimeoutException: The operation has timed out.
我是否誤解了ClusterIP服務的工作方式?
嘗試這個:
apiVersion: v1
kind: Service
metadata:
name: rabbit-mq-service
labels:
app: rabbit-mq
namespace: default
spec:
type: ClusterIP
clusterIP: None
ports:
- port: 5672
selector:
app: rabbit-mq
和amqp://user:password@rabbit-mq-service:5672/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.