Як ми стерли PROD | Обережно GitOps | Чи врятує нас AI code review? | Thank God It's Friday #3

แชร์
ฝัง
  • เผยแพร่เมื่อ 26 ธ.ค. 2024

ความคิดเห็น • 65

  • @ip8201
    @ip8201 7 หลายเดือนก่อน +13

    Класне відео!
    Моя думка - звільняти за факапи, то дурість, особливо, коли вони із-за технічної помилки, навпаки, команда отримала важливий досвід і зробила висновки.

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน

      абсолютно підтримую. А як на Вашу думку, якщо подібний другий або третій факап - що робити?

    • @ip8201
      @ip8201 7 หลายเดือนก่อน

      @@DenysVasyliev мені сподобався підхід з google sre book, коли є певний бюджет даунтаймів, які не порушують sla, якщо ми близькі до межі, чи порушуємо sla - робимо паузу з новими фічами і фіксимо надійність, доки знов не зʼявиться бюджет, тоді знову нові фічі… і так по колу

    • @ip8201
      @ip8201 7 หลายเดือนก่อน

      @@DenysVasyliev мені колись сподобалася ідея з sre book, що має бути бюджет помилок/даунтаймів, який не повинен виходити за sla і якщо ми вичерпали наш бюджет, то працюємо над покращенням стабільності, а коли знов зʼявляється бюджет, то над новими фічами і так весь час балансуємо.
      P.S. Другий раз пишу комент, чомусь youtube попередній не опублікував.

    • @vmahilevskyi
      @vmahilevskyi 7 หลายเดือนก่อน +3

      В такому випадку можна говорити про звільнення. Це показує, що людина не зробила правильних висновків і не працює над своїми помилками. І бізнесу банально дешевше звільнити людину аніж піти на ризики майбутніх втрат через повторні помилки.

    • @ip8201
      @ip8201 7 หลายเดือนก่อน

      ​@@DenysVasyliev мені колись сподобалася ідея з sre book, що має бути бюджет помилок/даунтаймів, який не повинен виходити за SLA і якщо ми вичерпали наш бюджет, то працюємо над покращенням стабільності, а коли знов зʼявляється бюджет, то над новими фічами і так весь час балансуємо.
      P.S. Другий чи третій раз пишу комент, чомусь youtube попередні не опублікував.

  • @AT-rocket
    @AT-rocket 7 หลายเดือนก่อน +10

    Ну, блін, 2 години до повного рестору проду - навіть з проблемами відсутності деяких речей в коді - це дуже круто!

    • @AT-rocket
      @AT-rocket 7 หลายเดือนก่อน

      До речі, я, можливо, теж трохи параноік, і тому тримаю бд окремо від апки ;)
      Бачу, що в цілому це досить вірний підхід, враховуючи ваш досвід

    • @yurk_ukraine
      @yurk_ukraine 7 หลายเดือนก่อน

      @@AT-rocket теж пропагую такий підхід :)

  • @michaelhin2290
    @michaelhin2290 7 หลายเดือนก่อน +7

    Мій улюблений DevOps blogger, дякую!

  • @AndrewBashtovoy
    @AndrewBashtovoy 7 หลายเดือนก่อน +3

    Крутий кейс, дякую, не кожен зможе розповісти про такий глобальний факап з продом. Христос Воскрес!

  • @michaelhin2290
    @michaelhin2290 7 หลายเดือนก่อน +5

    НІколи не користувався Flux'ом. Але якщо пофантазувати, думаю, що можна провести аналогію з Тераформом та resource groups у Azure
    Поки щось буде у namespace, він просто буде видаляти ці ресурси, і тільки в останню чергу namespace
    Стосовно admission control - namespace спасе, але ресурси всередині наврядчи
    Можна спробувати заборонити delete ресурсів з ключовими labels, але дозволити update, щоб flux продовжив працювати ( але виглядає як костиль ;) )

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน +3

      дякую, це варіанти і вони корисні для глядачів адже у кожного різний досвід

  • @stefan282
    @stefan282 7 หลายเดือนก่อน

    щодо external-dns, він може перестворювати вже навіть існуючі записи, якщо ваш ingress controller перезапускався(ролінг апдейт), в моєму випадку це nginx-ingress-controller був, поставивши параметр в хельмі проблема ця зникла, на github external-dns навіть issue ці були:
    extraArgs:
    update-status-on-shutdown: "false"

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน

      Дякую - подивлюся на issues!

  • @Andrew-nh9he
    @Andrew-nh9he 7 หลายเดือนก่อน +1

    від nobody blame до ми звільняли за помилку, можливо саме блейм допоможе)))

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน +1

      то різні часові проміжки: спочатку звільняли, а зараз більше цінують людей і практики змінились.

  • @anatolijd
    @anatolijd 7 หลายเดือนก่อน +1

    Вітаю. Про лоадбалансери і ДНС не зрозуміло. Що значить 'зарезервована' ІР замінена на 'нову' ІР ? І як ви це виправили ?

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน +1

      Є ефемерні адреси, а є зарезервовані - перманентні. Коли балансер новий - він отримує ефемерну адресу, якщо конфігурацію не вказано інше. Далі можна переназначити, привʼязавши адресу "яку всі знають" до балансера cloud.google.com/kubernetes-engine/docs/how-to/load-balance-ingress

  • @АлексейИгнатенко-н3х
    @АлексейИгнатенко-н3х 7 หลายเดือนก่อน

    Дякую за постмортем, було дуже цікаво і повчально.
    Залишу декілька своїх коментарів:
    1. Гарний кейс того що не треба тримати всі яйця в одній корзині.
    2. Щодо повного вайпа проду, як зазначалось у відео, на мою думку трохи перебільшено, бо стореджі або їх стейт все таки залишився.
    3. Чи є у вас DRP на такі чи подібні випадки?

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน

      1. Ну по факту це різні сорси.
      2. Стораджі навіть якщо не збереглися, є снапшоти. Дату зберігати це ж нормально :)
      3. BCP ми називаємо - це саме гнучкість інфри та аплікації. Зараз вона стала ще краще і ми можемо гарантувати відновлення в зазначені терміни, адже кластери також в коді.

  • @xevis22
    @xevis22 7 หลายเดือนก่อน

    Крутезне відео. Втім як завжди. Дякую

  • @zaspa
    @zaspa 7 หลายเดือนก่อน

    Дякую!

  • @vmahilevskyi
    @vmahilevskyi 7 หลายเดือนก่อน +1

    Дякую за відео!
    Питання по Волту. А що у вас використовувалося як storage backend? Враховуючи, що Ви казали про втрату сікретів, які створювались не через код, то ресторнути волт не було із чого?

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน

      волт на клауд сторадж. це окремий сетап і з ним все ок. То про VSO йшлося
      - компонент для волта

    • @vmahilevskyi
      @vmahilevskyi 7 หลายเดือนก่อน +1

      Ааа, все, зрозуміло, дякую за уточнення. Доречі як альтернативу VSO можна також External Secrets, там також буде «кеш через нативні кубернетіс сікрети» і на додачу підтримує і інші сікрет стораджі

    • @vmahilevskyi
      @vmahilevskyi 7 หลายเดือนก่อน

      2. В якості рішення вирішили створювати key-value yaml для ось таких от секретів і класти його поруч із terragrunt.hcl, в ньому використовуємо вбудовану sops_decrypt_file функцію і значення передаємо в інпути як звичайні терраформ змінні. Ну і волт секрет тф ресурси вже використовуть ці тф змінні.

  • @yuriykutsiy3781
    @yuriykutsiy3781 7 หลายเดือนก่อน +1

    хороший контент 👍
    при нагоді було б цікаво почути, як, для чого використовуєте арго воркфлоу

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน

      в основному МЛ. дякую за ідею!

    • @yuriykutsiy3781
      @yuriykutsiy3781 7 หลายเดือนก่อน

      @@DenysVasyliev
      доречі, за те як використовуєш LM для себе теж цікаво ;)

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน +1

      @@yuriykutsiy3781 дивись епізод про Матрицю

    • @yuriykutsiy3781
      @yuriykutsiy3781 7 หลายเดือนก่อน

      там мало, що є про сам сетап)

  • @vsavl
    @vsavl 7 หลายเดือนก่อน

    Звільнення за один факап - це не правильно. Але якщо є повтори тоді питання до ліда - Чому? Й головне питання якщо бізнес приносить великі кошти тоді питання до архітектора Чому так?. Блю-грін проди це вже давно використовуемі рішення й тоді будь-який факап це вже не привід для звільнення.
    Гарні відео на каналі. Дякую!

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน

      Підтримую - всі помиляються і завдання ліда не зменшити ризики людського фактору (автоматизація, навчання), а апп повинен бути витривалим за архітектурою. 5 Whys - добра практика

  • @olegmakarikhin
    @olegmakarikhin 7 หลายเดือนก่อน

    Дивно було чути звільнення за факап при помилках налаштування днс. У нас одного разу в офісному влан дівчина розробник захотіла підняти собі vrrp разом з dhcp. Неналаштований dhcp призвело до наслідків. Я чув що її відправили здобувати ccna.

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน

      В нас було жорсткий відбір до команди NOC і слід зауважити, для неї то був випробувальний термін

    • @alexanderalex6619
      @alexanderalex6619 7 หลายเดือนก่อน

      Ну вона показала де є проблеми з архітектурою, acl, snooping... Це мало произвести тільки до алерту .

  • @yurademchenko9924
    @yurademchenko9924 7 หลายเดือนก่อน

    Лайк підписка.
    Пригадую як гтілба поклали овер дофіга "чогось". Було весело в онлайн режимі дивитись як то все відновлюють.
    І трохи флуду... не тримайте важливу інфу на SSD. рівно через два дні закінчення гарантії 1 TB 970 evo plus пішов спатки.
    Бекапи наше "все".
    Всім вдалого, мирнго дня.

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน +1

      Так було, пригадую. Дякую щодо ssd. А якщо вони не використовуються (не підключені постійно) - це ж повинно бути безпечно?

    • @yurademchenko9924
      @yurademchenko9924 7 หลายเดือนก่อน

      @@DenysVasyliev нууу... мої девопси сказали: "тримай власний клауд (бажано декілька) та HDD"
      Сумно, але це життя ;)

  • @sofia-p7d4t
    @sofia-p7d4t 7 หลายเดือนก่อน +2

    Коли я стерла прод - переїхала до Польщі, і змінила ім'я.

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน

      ого. це реальна історія?

    • @sofia-p7d4t
      @sofia-p7d4t 7 หลายเดือนก่อน

      @@DenysVasyliev На жаль. Це було на різдво 2021, тому скориставшись війною, я переїхала до Польщі.

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน

      @@sofia-p7d4t судячи з того що ім'я довелося змінити це сумна історія чи це не пов'язано?

    • @sofia-p7d4t
      @sofia-p7d4t 7 หลายเดือนก่อน +1

      @@DenysVasyliev ну, коштувала клієнту к-ка мільяонів доларів, як мені сказали.

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน

      @@sofia-p7d4t ну це дуже загадкова історія, гадаю. І ціна помилки, мабуть, то була таки помилка, доволі висока. Чи є десь в пабліку деталі, адже справа напевно гучна була?

  • @iwanbrowczuk8915
    @iwanbrowczuk8915 7 หลายเดือนก่อน +1

    Зжалося і до кінця відео не розжалося😂

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน +2

      ох! вибачте, але знайоме відчуття:)

  • @andreyruban4554
    @andreyruban4554 7 หลายเดือนก่อน +1

    цікавий кейс - але бляха жорсткий досвід)

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน +2

      і це я думав в той день взяти дейофф, адже почувався перегруженим. Сходив в басейн, повернувся і перед відпочинком заглянув у слак. Там вже інцидент мітінг йшов другу хвилину. Відпочив..

  • @sudo_apt_get
    @sudo_apt_get 7 หลายเดือนก่อน +2

    .spec.prune: true -> .spec.prune: false

  • @-aris-an
    @-aris-an 7 หลายเดือนก่อน

    👻

  • @mmospanenko
    @mmospanenko 7 หลายเดือนก่อน

    Звільнення за факапи) тобто оплатили такою ціною йому досвід і віддали конкуренту?))

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน +1

      ну можна використовувати як метод боротьби з конкурентами :)

  • @voyauger
    @voyauger 7 หลายเดือนก่อน +1

    флаг --recreation-policy never

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน

      А можна посилання на документацію з цією опцією?

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน

      Насправді, це spec.prune - github.com/fluxcd/flux2/discussions/3743

    • @voyauger
      @voyauger 7 หลายเดือนก่อน

      @@DenysVasyliev А посилання немає, AI вигадав цей флаг, сказавши потім, що зробив припущення що може існувати такий флаг, короче - просто обманув. А на питання нашо ти це зробив, він відповів, що просто не мав відповіді так вигадав... Отака от історія.😄

    • @DenysVasyliev
      @DenysVasyliev  7 หลายเดือนก่อน

      @@voyauger я десь так в зрозумів. Воно так треновані, не розчаровувати замовника:)