容器服务-k8s-connection refused

通过阿里云容器服务-k8s 部署Apollo,创建的是statefulset,
创建后提示 “Readness probe failed:10.0.2.203:8080: connect: connection refused”, work节点的防火墙都是not running状态
liveness 和 Readiness 都去掉后,可以成功创建,但是在容器内还是无法访问8080端口,以下是yaml文件内容:

---
# configmap for apollo-config-server-dev
kind: ConfigMap
apiVersion: v1
metadata:
  namespace: sre
  name: configmap-apollo-config-server-dev
data:
  application-github.properties: |
    spring.datasource.url=jdbc:mysql://service-mysql-for-apollo-dev-env.sre:3306/apolloconfigdbyfb?characterEncoding=utf8
    spring.datasource.username=XXX
    spring.datasource.password=XXX

---
kind: Service
apiVersion: v1
metadata:
  namespace: sre
  name: service-apollo-meta-server-dev
  labels:
    app: service-apollo-meta-server-dev
spec:
  ports:
    - protocol: TCP
      port: 8080
      targetPort: 8080
  selector:
    app: pod-apollo-config-server-dev
  type: ClusterIP
  clusterIP: None
  sessionAffinity: ClientIP

---
kind: Service
apiVersion: v1
metadata:
  namespace: sre
  name: service-apollo-config-server-dev
  labels:
    app: service-apollo-config-server-dev
spec:
  ports:
    - protocol: TCP
      port: 8080
      targetPort: 8080
      nodePort: 30002
  selector:
    app: pod-apollo-config-server-dev 
  type: NodePort
  sessionAffinity: ClientIP

---
kind: StatefulSet
apiVersion: apps/v1beta2
metadata:
  namespace: sre
  name: statefulset-apollo-config-server-dev
  labels:
    app: statefulset-apollo-config-server-dev
spec:
  serviceName: service-apollo-meta-server-dev
  replicas: 3
  selector:
    matchLabels:
      app: pod-apollo-config-server-dev
  updateStrategy:
    type: RollingUpdate
  template:
    metadata:
      labels:
        app: pod-apollo-config-server-dev
    spec:
      nodeSelector:
        node: "apollo"

      volumes:
        - name: volume-configmap-apollo-config-server-dev
          configMap:
            name: configmap-apollo-config-server-dev
            items:
              - key: application-github.properties
                path: application-github.properties
      
      containers:
        - image: registry-vpc.cn-hangzhou.aliyuncs.com/micrio-service-basic/apollo-config-server:v1.0.9
          securityContext:
            privileged: true
          imagePullPolicy: IfNotPresent
          name: container-apollo-config-server-dev
          ports:
            - protocol: TCP
              containerPort: 8080
          
          volumeMounts:
            - name: volume-configmap-apollo-config-server-dev
              mountPath: /apollo-config-server/config/application-github.properties
              subPath: application-github.properties
          
          env:
            - name: APOLLO_CONFIG_SERVICE_NAME
              value: "service-apollo-config-server-dev.sre"

          readinessProbe:
            tcpSocket:
              port: 8080
            initialDelaySeconds: 10
            periodSeconds: 5
          
          livenessProbe:
            tcpSocket:
              port: 8080
            initialDelaySeconds:  120
            periodSeconds: 10
          
      dnsPolicy: ClusterFirst



里面的用到了 阿里云的RDS数据库,通过 service-mysql-for-apollo-dev-env.sre 这个服务来访问的,此服务的yaml内容:

---

# 为外部 mysql 服务设置 service

kind: Service

apiVersion: v1

metadata:

  namespace: sre

  name: service-mysql-for-apollo-dev-env

  labels:

    app: service-mysql-for-apollo-dev-env

spec:

  type: ExternalName

  externalName: rm-bp1lun0fi3cn2d20z2o.mysql.rds.aliyuncs.com


(ExternalName类型的service不确定能否访问到)


也尝试过通过EndPoint来访问测试服务器的mysql,但是提示

the server could not find the requested resource



帮忙看看,给出些解决建议(猜测是访问RDS数据库的问题,但不知道怎么解决)?


非常感谢~

展开
收起
啊阿斯顿此次调查 2018-10-08 11:02:01 4719 分享 版权
1 条回答
写回答
取消 提交回答
  • 同样的问题,请问楼主解决了吗?
    2019-07-01 18:04:44
    赞同 1 展开评论

国内唯一 Forrester 公共云容器平台领导者象限。

还有其他疑问?
咨询AI助理