首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >kubernetes Clusterip+port在某些情况下无法访问

kubernetes Clusterip+port在某些情况下无法访问
EN

Stack Overflow用户
提问于 2019-03-26 00:57:02
回答 1查看 269关注 0票数 0

L尝试在k8s中设置dvwa环境,当l暴露dvwa pod的端口时,l发现它不能正常工作。

我尝试暴露一个nginx样本,以确保我的k8s环境正常工作。是的,nginx在我的本地机器上运行良好。

以下是一些信息

代码语言:javascript
复制
# dvwa.yaml
apiVersion: v1
kind: ReplicationController
metadata:
  name: dvwa
spec:
  replicas: 2
  selector:
    app: dvwa
  template:
    metadata:
      labels:
        app: dvwa
    spec:
      containers:
        - name: dvwa
          image: citizenstig/dvwa:latest
          ports:
          - containerPort: 3306


# dvwa_service.yaml
apiVersion: v1
kind: Service
metadata:
  name: dvwa
spec:
  ports:
  - port: 3306
  selector:
    app: dvwa
  type: NodePort


$ kubectl get svc -o wide
NAME              TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)          
AGE     SELECTOR
dvwa              NodePort    10.98.238.130   <none>        
3306:32393/TCP   7m15s   app=dvwa
kubernetes        ClusterIP   10.96.0.1       <none>        443/TCP          
35h     <none>
nginx             NodePort    10.97.143.32    <none>        
80:31961/TCP     5m51s   app=nginx

当l ssh进入我的k8s机器并输入curl 10.97.143.32:80时,它返回nginx页面,但curl 10.98.238.130:3306不工作,docker图像是citizenstig/dvwa,它暴露了80和3306,l也尝试在dvwa_service.yaml中使用80端口,但仍然不能工作。

有人能帮我吗?提前感谢!

EN

回答 1

Stack Overflow用户

发布于 2019-03-26 02:38:01

您的服务定义中缺少targetPort

在下面的服务定义下尝试

代码语言:javascript
复制
apiVersion: v1
kind: Service
metadata:
  name: dvwa
spec:
  ports:
  - port: 3306
    targetPort: 3306
  selector:
    app: dvwa
  type: NodePort

您能进入dvwa pod并运行localhost:3306吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55342881

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档