Rozwiązywanie problemów z uaktualnieniami pakietów na hoście kontenera systemu Linux platformy Azure
Host kontenera systemu Linux platformy Azure dla usługi AKS ma dnf-automatic
domyślnie włączoną usługę systemową, która jest uruchamiana codziennie i automatycznie instaluje wszystkie ostatnio opublikowane zaktualizowane pakiety. Dzięki temu pakiety na hoście kontenera systemu Linux platformy Azure powinny zostać automatycznie zaktualizowane po opublikowaniu poprawki. Należy pamiętać, że w przypadku niektórych ustawień kanałudnf-automatic
uaktualniania systemu operacyjnego Node będzie domyślnie wyłączona.
Objawy
Jednak czasami pakiety na hoście kontenera systemu Linux platformy Azure nie otrzymują automatycznych uaktualnień, co może prowadzić do następujących objawów:
- Komunikaty o błędach podczas odwoływania się do zaktualizowanego pakietu lub korzystania z tego pakietu.
- Pakiety nie działają zgodnie z oczekiwaniami.
- Nieaktualne wersje pakietów są wyświetlane podczas sprawdzania listy pakietów kontenera systemu Linux platformy Azure. Możesz sprawdzić, czy pakiety na obrazie są synchronizowane z ostatnio opublikowanym pakietem, odwiedzając repozytorium w packages.microsoft.com lub sprawdzając informacje o wersji w repozytorium GitHub systemu Linux platformy Azure.
Przyczyna
Niektóre pakiety, takie jak jądro systemu Linux, wymagają ponownego uruchomienia, aby aktualizacje zaczęły obowiązywać. Aby ułatwić automatyczne ponowne uruchamianie, maszyna wirtualna z systemem Linux platformy Azure uruchamia usługę check-restart, która tworzy /var/run/reboot-required
plik, gdy aktualizacja pakietu wymaga ponownego uruchomienia.
Rozwiązanie
Aby upewnić się, że platforma Kubernetes działa na żądanie ponownego uruchomienia, zalecamy skonfigurowanie demona kured. Kured monitoruje węzły dla /var/run/reboot-required
pliku i, gdy zostanie znaleziony, opróżnia pracę z węzła i uruchamia go ponownie.
Następne kroki
Jeśli powyższe kroki nie rozwiążą problemu, otwórz bilet pomocy technicznej.