Kubernetes负载均衡器

时间:2020-04-05 02:35:25

标签: kubernetes

我设置了树莓派PI集群并安装了metallb。我正在运行以下Wordpress服务。我很困惑为什么我无法通过浏览器或wget进程使它正常工作

pi@master:~ $ kubectl get svc
NAME         TYPE           CLUSTER-IP      EXTERNAL-IP    PORT(S)        AGE
kubernetes   ClusterIP      10.96.0.1       <none>         443/TCP        6d3h
mysql        ClusterIP      None            <none>         3306/TCP       41m
wordpress    LoadBalancer   10.101.63.209   192.168.1.50   80:32499/TCP   4m35s

当我尝试对网站进行wget操作时,它会继续尝试通过端口30820出局

我在做什么错了?

pi@master:~ $ wget 192.168.1.50
--2020-04-05 03:29:56--  http://192.168.1.50/
Connecting to 192.168.1.50:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: http://192.168.1.50:30820/ [following]
--2020-04-05 03:29:57--  http://192.168.1.50:30820/
Connecting to 192.168.1.50:30820... failed: No route to host.

这是我的部署。这样看起来还可以吗?

apiVersion: apps/v1
kind: Deployment
metadata:
  name: wordpress
  #namespace: wordpress
  labels:
    app: wordpress
spec:
  selector:
    matchLabels:
      app: wordpress
      tier: frontend
  strategy:
    type: Recreate
  replicas: 3
  template:
    metadata:
      labels:
        app: wordpress
        tier: frontend
    spec:
      containers:
      - image: wordpress:4.8-apache
        imagePullPolicy: IfNotPresent
        name: wordpress
        env:
        - name: WORDPRESS_DB_HOST
          value: mysql
        - name: WORDPRESS_DB_PASSWORD
          valueFrom:
            secretKeyRef:
              name: mysql-pass          # generated before in secret.yml
              key: password
        ports:
        - containerPort: 80
          name: wordpress
        volumeMounts:
        - name: wordpress-persistent-storage
          mountPath: "/var/www/html"          # which data will be stored
        resources:
          limits:
            cpu: '1'
            memory: '512Mi'
          requests:
            cpu: '500m'
            memory: '256Mi'
      volumes:
      - name: wordpress-persistent-storage
        persistentVolumeClaim:
          claimName: wordpress-persistent-storage
      tolerations:
      - effect: NoExecute
        key: node.kubernetes.io/not-ready
        operator: Exists
        tolerationSeconds: 300
      - effect: NoExecute
        key: node.kubernetes.io/unreachable
        operator: Exists
        tolerationSeconds: 300
---
apiVersion: v1
kind: Service
metadata:
  name: wordpress
  #namespace: wordpress
  labels:
    app: wordpress
    tier: frontend
spec:
  selector:
    app: wordpress
  ports:
    - protocol: 'TCP'
      port: 80
      targetPort: 80
  #externalTrafficPolicy: Local
  type: LoadBalancer

1 个答案:

答案 0 :(得分:0)

可能是您的Wordpress设置暗示重定向。 MetalLB和k8s Service都没有重定向功能,因为两者都可以在网络级别上工作。