Стендап Сьогодні

📢 Канал в Telegram @stendap_sogodni

09.09.2022

🔥🧑‍🚒🔥 Сьогодні простій того самого сервісу AWS SSM Parameter Store, який я так хвалив нещодавно, спричинив 3 години простою нашого. Як так сталось?

Зазвичай SSM досить безпечний сервіс. Параметри завантажуються при старті додатка, і якщо він вже запустився, то проблеми з SSM не страшні. Але тут є і зворотна сторона — якщо SSM відключений, то, напевно, стартувати не вийде. Але оскільки подібні відключення вкрай рідкісні, то я не бачив в цьому ризику. Стартувати додатки теж не так часто доводиться.

Але був нюанс. Той самий SSM використався також у хелс-чеку. Та коли SSM зламався, то хелс-чек почав видавати помилку. Це спричинило нездоровий стан додатка та його перезапуск. А коли додаток перезапустився, то й він підхопив ту ж саму болячку... і вже не піднявся аж допоки SSM не повернувся до життя.

Стислі висновки:

- Хелс-чек краще робити найпростішим та з мінімальними залежностями. (Але так виходить не завжди.)
- Хелс-чек має видавати позитивний результат, якщо є побічна проблема з його виконанням — наприклад, з залежностями. Негативний результат видавати, тільки якщо сам хелс-чек працює добре, а додаток — ні.
- Конкретно по SSM: будемо зберігати останню успішну конфігурацію в локальне сховище, і використати в разі наступного відключення. Не думаю, що це дуже потрібно — головне виправити хелс-чек — але й зробити досить просто.