kubernetesyandexcloud

LoadBalancer has EXTERNAL-IP address equal pending


I have registered in Yandex.Cloud. My payment-account is in Active status. Config file is:

apiVersion: apps/v1
kind: Deployment

metadata:
  name: my-web-deployment
  labels:
    app: my-k8s-deployment

spec:
  replicas: 3

  selector:
    matchLabels:
      project: app1

  template:
    metadata:
      labels:
        project: app1
    spec:
      containers:
        - name: app1-web
          image: adv4000/k8sphp:latest
          ports:
            - containerPort: 80

---
apiVersion: v1
kind: Service

metadata:
  name: my-single-pod-service
  labels:
    env: prod
    owner: AlexVld

spec:
  selector:
    project: app1
  ports:
    - name: app-listener
      protocol: TCP
      port: 80
      targetPort: 80
  type: LoadBalancer

Then, I run this config to create pods, deployment and service:
kubectl apply -f service-1-loadbalancer-single.yaml

Now I have this: enter image description here

You see that I have a problem with the service. The service my-single-pod-service with type LoadBalancer has the External-IP is pending. But I expect the value, that I will insert to the browser and will see a simple php application. But my pending is infinitely.

Can you help me? What I am doing wrong?


Solution

  • It was my error. It is nessesary to create service account with roles editor and container-registry.images.puller .Now I have created this account: enter image description here

    And now LoadBalancer is working.