ProHoster > Блог > басқарма > Kubernetes жүйесінде DNS ақаулары. Қоғамдық өлімнен кейінгі
Kubernetes жүйесінде DNS ақаулары. Қоғамдық өлімнен кейінгі
Ескерту аударма: Бұл компанияның инженерлік блогындағы жалпыға ортақ өлімнен кейінгі жазбаның аудармасы Алдын ала. Ол Kubernetes кластеріндегі қосылу мәселесін сипаттайды, бұл кейбір өндірістік қызметтердің ішінара тоқтап қалуына әкелді.
Бұл мақала постмортемдер туралы көбірек білгісі келетіндерге немесе болашақта кейбір ықтимал DNS ақауларының алдын алғысы келетіндерге пайдалы болуы мүмкін.
Бұл DNS емес
Бұл DNS болуы мүмкін емес
Бұл DNS болды
Preply-дегі өлімнен кейінгі және процестер туралы аздап
Өлімнен кейінгі ақаулық немесе өндірістегі қандай да бір оқиғаны сипаттайды. Өлімнен кейінгі кезең оқиғалардың уақыт кестесін, пайдаланушының әсерін, негізгі себебін, қабылданған әрекеттерді және алынған сабақтарды қамтиды.
Пиццамен апта сайынғы кездесулерде техникалық топ арасында біз әртүрлі ақпараттармен бөлісеміз. Мұндай кездесулердің ең маңызды бөліктерінің бірі - көбінесе слайдтармен презентациямен және оқиғаны тереңірек талдаумен сүйемелденетін постмортемдер. Біз өлгеннен кейін қол шапалақтамасақ та, «кінә жоқ» мәдениетін дамытуға тырысамыз (мінсіз мәдениет). Өлімнен кейінгі мәліметтерді жазу және ұсыну бізге (және басқаларға) болашақта осындай оқиғалардың алдын алуға көмектеседі деп сенеміз, сондықтан біз оларды бөлісеміз.
Оқиғаға қатысы бар адамдар жазадан немесе жазадан қорықпай егжей-тегжейлі айта алатынын сезінуі керек. Айып жоқ! Постмортем жазу - бұл жаза емес, бүкіл компания үшін оқу мүмкіндігі.
Триггер: Kubernetes кластерінің ішіндегі жүктеме аз болғандықтан, CoreDNS-автомасштабтаушысы орналастырудағы подкасттардың санын үштен екіге дейін қысқартты.
шешім: Қолданбаның келесі қолдануы жаңа түйіндерді құруды бастады, CoreDNS-автомасштабтаушысы кластерге қызмет көрсету үшін қосымша подкасттарды қосты, бұл conntrack кестесін қайта жазуды тудырды.
Анықтау: Prometheus мониторингі A, B және C қызметтері үшін көптеген 5xx қателерін анықтады және кезекші инженерлерге қоңырау шалды.
Кибанадағы 5xx қатесі
Әрекеттер
әсер
Түрі
Жауапты
Мақсаты
CoreDNS үшін автоматты масштабтауды өшіріңіз
алдын алды
Әмет У.
DEVOPS-695
Кэштеу DNS серверін орнату
төмендеуі
Макс В.
DEVOPS-665
Контракт мониторингін орнату
алдын алды
Әмет У.
DEVOPS-674
Сабақтар
Не жақсы өтті:
Мониторинг жақсы нәтиже берді. Жауап жылдам әрі ұйымшыл болды
Біз түйіндерге ешқандай шектеулер қойған жоқпыз
Не болды:
Осыған ұқсас нақты түпкі себебі әлі белгісіз арнайы қате қарсы
Барлық әрекеттер түпкі себебін емес, тек салдарын түзетеді (қате)
Біз ерте ме, кеш пе, DNS-ке қатысты проблемалар болуы мүмкін екенін білдік, бірақ біз тапсырмаларды бірінші орынға қоймадық
Бізге сәттілік қай жерде:
Келесі орналастыруды қосу кестесінің үстінен жазған CoreDNS-автомасштабтаушысы іске қосты.
Бұл қате кейбір қызметтерге ғана әсер етті
Хронология (EET)
Время
әсер
22:13
CoreDNS-автомасштабтауыш қосқыштар санын үштен екіге дейін қысқартты
Орталық процессорды пайдалануды азайту үшін Linux ядросы conntrack деп аталатын нәрсені пайдаланады. Қысқаша айтқанда, бұл арнайы кестеде сақталатын NAT жазбаларының тізімін қамтитын қызметтік бағдарлама. Келесі пакет бұрынғыдай бір подкастқа келген кезде, соңғы IP мекенжайы қайта есептелмейді, бірақ conntrack кестесінен алынады.
Conntrack қалай жұмыс істейді
Нәтижелері
Бұл кейбір пайдалы сілтемелері бар біздің постмортемдердің бірінің мысалы болды. Атап айтқанда, осы мақалада біз басқа компанияларға пайдалы болуы мүмкін ақпаратты бөлісеміз. Сондықтан біз қателесуден қорықпаймыз және сол себепті біз өлгеннен кейінгі зерттеулеріміздің бірін көпшілікке жария етеміз. Міне, бірнеше қызықты қоғамдық өлімнен кейінгі зерттеулер: