mirror of
https://github.com/k3s-io/kubernetes.git
synced 2026-01-29 21:29:24 +00:00
Merge pull request #31777 from dshulyak/evict_pet
Automatic merge from submit-queue Delete evicted pet If pet was evicted by kubelet - it will stuck in this state forever. By analogy to regular pod we need to re-create pet so that it will be re-scheduled to another node, so in order to re-create pet and preserve consitent naming we will delete it in petset controller and create after that. fixes: https://github.com/kubernetes/kubernetes/issues/31098
This commit is contained in:
@@ -105,7 +105,13 @@ func (p *petSyncer) Sync(pet *pcb) error {
|
||||
if err := p.SyncPVCs(pet); err != nil {
|
||||
return err
|
||||
}
|
||||
if exists {
|
||||
// if pet failed - we need to remove old one because of consistent naming
|
||||
if exists && realPet.pod.Status.Phase == api.PodFailed {
|
||||
glog.V(4).Infof("Delete evicted pod %v", realPet.pod.Name)
|
||||
if err := p.petClient.Delete(realPet); err != nil {
|
||||
return err
|
||||
}
|
||||
} else if exists {
|
||||
if !p.isHealthy(realPet.pod) {
|
||||
glog.Infof("PetSet %v waiting on unhealthy pet %v", pet.parent.Name, realPet.pod.Name)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user