如何使2个Pod在Kubernetes中相互通信?

时间:2019-06-21 10:48:14

标签: http kubernetes minikube

我正在使用minikube,我有2个容器,即容器A和容器B。 我希望Pod A向Pod B发出http请求,假设两个Pod在同一个命名空间中(例如namepsace X)。

当我为Pod A编写代码时,应该使用哪个地址来标识Pod B?

1 个答案:

答案 0 :(得分:1)

您需要将Pod-B公开为服务。

对于Pod-B,假设您的Pod定义将其视为服务,如下所示:

apiVersion: v1
kind: Pod
metadata:
  name: Pod-B
  labels:
    app: my-service
spec:
  containers:
  - name: nginx
    image: nginx:2.0.0
    ports:
    - containerPort: 80

要将Pod-B封装为更高级别的抽象(即Service),请定义如下内容

kind: Service
apiVersion: v1
metadata:
  name: Pod-B-Service
spec:
  selector:
    app: my-service
  ports:
  - protocol: TCP
    port: 80
    targetPort: 80