Puncte:0

Podul din ReplicaSet doar 1 este gata

drapel id

Folosesc K3S (debian 10) și sunt super noob pentru kuber.

Iată problema:

server:~# kubectl get pod 
STAREA NUMELE GATA REINCEPE VARSTA
vlmcsd-server-q4vfv 1/1 Alergare 0 15m
vlmcsd-server-b6qmk 0/1 În așteptare 0 3s
vlmcsd-server-tvsnr 0/1 În așteptare 0 3s
vlmcsd-server-lg6gw 0/1 În așteptare 0 3s

Aici este fișierul k8:

apiVersion: apps/v1
fel: ReplicaSet
metadate:
  nume: vlmcsd-server
specificație:
  replici: 4
  selector:
    matchLabels:
      rol: server

  șablon:
    metadate:
      etichete:
        rol: server
    specificație:
      containere:
      - nume: vlmcsd-1
        imagine: mikolatero/vlmcsd
        porturi:
          - nume: service-vlmcsd
            containerPort: 1688
            portul gazdă: 1688
            protocol: TCP  

Așadar, de ce este gata doar un singur pod? Din câte pot ghici, conflict de port? Și asta înseamnă nume port containerPort hostPort maparea directă a portului este mai degrabă SLB sau ceva?

Dacă este vorba de un conflict de porturi, ce rețea ar trebui să folosesc?

server:~# kubectl descrie pod/vlmcsd-server-q4vfv
Nume: vlmcsd-server-q4vfv
Spațiu de nume: implicit
Prioritate: 0
Nod: tower.rczhiyun.local/10.188.180.251
Ora de începere: vineri, 06 august 2021 14:50:44 +0800
Etichete: rol=server
Adnotări: <niciuna>
Stare: Running
IP: 10.42.0.21
IP-uri:
  IP: 10.42.0.21
Controlat de: ReplicaSet/vlmcsd-server
Containere:
  vlmcsd-1:
    ID container: containerd://f45628cff396ae95a0678c4c5d8160ef83e068f5fbdf2b76f7528404644e588a
    Imagine: mikolatero/vlmcsd
    ID imagine: docker.io/mikolatero/vlmcsd@sha256:d4eb626c762780fa37ecdb4e3efabb666b7dbf8355dfebc874e21ba780e3803c
    Port: 1688/TCP
    Port gazdă: 1688/TCP
    Stare: alergare
      Început: vineri, 06 august 2021 14:50:47 +0800
    Gata: Adevărat
    Număr de reporniri: 0
    Mediu: <niciun>
    Suporturi:
      /var/run/secrets/kubernetes.io/serviceaccount de la kube-api-access-n77c5 (ro)
Conditii:
  Tastați Stare
  Adevărat inițializat 
  Gata Adevărat 
  ContainersReady Adevărat 
  PodScheduled Adevărat 
Volume:
  kube-api-access-n77c5:
    Tip: Proiectat (un volum care conține date injectate din mai multe surse)
    TokenExpirationSeconds: 3607
    ConfigMapName: kube-root-ca.crt
    ConfigMapOptional: <nil>
    DownwardAPI: adevărat
Clasa QoS: BestEffort
Selectori de noduri: <niciunul>
Tolerări: node.kubernetes.io/not-ready:NoExecute op=Există pentru 300 de secunde
                             node.kubernetes.io/unreachable:NoExecute op=Există timp de 300 de secunde
Evenimente:
  Introduceți Motivul Vârsta din mesaj
  ---- ------ ---- ---- -------
  Avertisment FailedScheduling 21m de noduri implicite de planificare 0/1 sunt disponibile: 1 nod(e) nu au avut porturi libere pentru porturile de pod solicitate.
  Avertisment FailedScheduling 21m de noduri implicite de planificare 0/1 sunt disponibile: 1 nod(e) nu au avut porturi libere pentru porturile de pod solicitate.
  Normal programat 21m default-scheduler Alocat cu succes default/vlmcsd-server-q4vfv tower.rczhiyun.local
  Tragere normală 21 m kubelet Tragere imagine „mikolatero/vlmcsd”
  Normal extras 21 m kubelet Imagine extrasă cu succes „mikolatero/vlmcsd” în 2,377603969s
  Normal Creat 21m kubelet Container creat vlmcsd-1
  Normal Pornit 21m kubelet Pornire container vlmcsd-1
server:~# kubectl descrie pod/vlmcsd-server-b6qmk
Nume: vlmcsd-server-b6qmk
Spațiu de nume: implicit
Prioritate: 0
Nod: <niciun>
Etichete: rol=server
Adnotări: <niciuna>
Stare: în așteptare
IP:             
IP-uri: <niciunul>
Controlat de: ReplicaSet/vlmcsd-server
Containere:
  vlmcsd-1:
    Imagine: mikolatero/vlmcsd
    Port: 1688/TCP
    Port gazdă: 1688/TCP
    Mediu: <niciun>
    Suporturi:
      /var/run/secrets/kubernetes.io/serviceaccount de la kube-api-access-ztdjn (ro)
Conditii:
  Tastați Stare
  PodScheduled Fals 
Volume:
  kube-api-access-ztdjn:
    Tip: Proiectat (un volum care conține date injectate din mai multe surse)
    TokenExpirationSeconds: 3607
    ConfigMapName: kube-root-ca.crt
    ConfigMapOptional: <nil>
    DownwardAPI: adevărat
Clasa QoS: BestEffort
Selectori de noduri: <niciunul>
Tolerări: node.kubernetes.io/not-ready:NoExecute op=Există pentru 300 de secunde
                             node.kubernetes.io/unreachable:NoExecute op=Există timp de 300 de secunde
Evenimente:
  Introduceți Motivul Vârsta din mesaj
  ---- ------ ---- ---- -------
  Avertisment FailedScheduling 6m22s planificatorul implicit 0/1 nodurile sunt disponibile: 1 nod(e) nu avea porturi libere pentru porturile de pod solicitate.
  Avertisment FailedScheduling Nodurile 0/1 din programatorul implicit de 6m20s sunt disponibile: 1 nod(e) nu avea porturi libere pentru porturile de pod solicitate.

Wytrzymały Wiktor avatar
drapel it
Bună @Alceatraz și bun venit la ServerFault! Această eroare vine de la Kubernetes Scheduler, dar înainte de a cerceta mai profund, vă rog să-mi spuneți de ce utilizați un „ReplicaSet” în loc de un „Deployment”?

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.