Serverless убьет DevOps?



    Каждый раз, когда приходится читать про очередного новорожденного убийцу айфона или фейсбука, невольно начинаешь улыбаться. За эти годы столько их уже было, а воз и ныне там. Поэтому, наткнувшись на очередную публикацию, где ключевой мыслью была идея о том, что наступающая эпоха бессерверных вычислений приложений (Serverless) «съест» DevOps, скепсису не было предела.

    Справедливости ради, стоит сказать, что облачные технологии действительно «рвут тельняшку» по всем фронтам. Во-многом причина тому, стремительное удешевление «железа», как следствие простота и доступность передовых технологий на фоне перманентной тяги бизнеса к повышению эффективности и скорости внедрения инноваций. Всем хочется здесь и сейчас, и желательно бесплатно.

    Появление концепции Serverless, предполагающей создание и запуск приложений без необходимости настраивать серверную часть на этом фоне кажется вполне логичным. Несмотря на популярность названия «Serverless», встречается также аббревиатура FaaS («Functions as a Service»). Так вот, вас не должно вводить в заблуждение пресловутое Serverless. Оно вовсе не означает полный отказ от серверов. Как известно: «Если что-то убыло, значит где-то прибыло». В данном случае, речь идет о том, что железо уходит на сторону Amazon, Microsoft и других монстров индустрии, предоставляя рядовым разработчикам возможность творить без оглядки на размер серверного шкафа и хороших отношений с командой DevOps.



    Основные преимущества концепции Serverless:

    • Простота создания и развертывания продукта;
    • Возможность быстро и просто масштабировать ваш проект;
    • Высокая доступность и отказоустойчивость бекенда;
    • Отсутствие необходимости управления серверной инфраструктурой и как следствие снижение ваших затрат на поддержку ее работоспособности;
    • Ускорение разработки приложений;
    • Сокращение затрат на инфраструктуру и DevOps (и вам больше не нужен Docker);

    Больше информации по теме можно почерпнуть, например, здесь, здесь и здесь.

    DevOps умер, да здравствует DevOps?


    Serverless является отличным дополнением к автоматизации. Любой хороший DevOps, использующий AWS, Azure, IBM Cloud или GCP, способен применить соответствующие бессерверные решения для повышения управляемости приложений. Но чем насыщенней среда, тем нужнее люди способные к ней адаптироваться. Иными словами, DevOps, конечно же не умрет, но требования к знаниям и навыкам специалистов неизбежно эволюционируют.

    Тем более, что сфера применения serverless уже сейчас очень широка:

    • Финансы
    • Ритейл
    • IoT
    • Социальные медиа
    • Чаты
    • Uber-like приложения

    Где на serverless можно реализовывать очень разные сценарии:

    • Backend для приложений и сайтов
    • Data Processing (images, video, логи)
    • IoT (включая SmartCity)
    • Serverless веб-сайты
    • Автоматизированные задачи (включая бекапы)
    • Cloudlet
    • (data preprocessing)
    • Чат-боты
    • Окружения для обучения программированию



    Кто здесь?


    Крупные игроки уже на этом рынке: Amazon AWS, Azure, IBM Cloud, Google Cloud, Oracle. Имея значительные ресурсы, ИТ-гиганты способны работать в перспективных направлениях, улавливая тренды и существенно опережая отрасль в своем развитии. Плюс, есть множество Open Source проектов, в той или иной степени реализующие serverless. Тем интереснее российский ландшафт.



    Сегодня мы имеем довольно пеструю картину. С одной стороны, как и во всем мире, доминируют решения от лидеров рынка типа Microsoft, Amazon и Google, а с другой стороны, возникают по-настоящему интересные альтернативы.

    К таковым можно отнести первое в России serverless облако — Rusonyx serverless на базе swifty.cloud. Эта штука – простой путь к махровому крутому, масштабируемому бекенду.

    Rusonyx serverless на базе swifty.cloud фактически — out-of-the-box платформа для бекендов приложений, сайтов и чат-ботов, но при этом не лимитированная возможностями традиционных Backend-as-a-Service решений. Она включает в себя большинство необходимых сервисов:

    • Serverless функции
    • SQL и noSQL базы данных
    • Object Storage
    • Authentication-as-a-Service
    • Симпатичный UI, API, CLI для Mac/Linux
    • Шаблоны функций и целых сервисов

    Условия:
    Первые 3 месяца пользования платформой Rusonyx Serverless бесплатны, так что все желающие могут попробовать serverless подход в деле. 

    Вместо заключения


    Мы всё дальше уходим от набора навыков, которые ассоциируется с традиционным DevOps. Технологии меняются, а вместе с ними должны меняться и мы. При этом, даже если за вас всё делает облачный провайдер, функция контроля качества продукта никуда не денется. Автоматизация освобождает вас от каждодневной рутины, предоставляя возможность заняться тем, что вы, возможно, долгое время откладывали в долгий ящик.

    Make your ideas come app, как говорят ребята из swifty.cloud.
    Rusonyx
    Company

    Comments 17

      0
      А мне вспомнилось, что когда я был моложе, программистов на собеседованиях спрашивали: «А есть ли у вас опыт разработки клиент-серверных приложений?»

      Видимо недалеки те времена когда «опыт разработки stendalone-приложений» будет также хорошо сбивать заплатные ожидания. :)
        0
        Так убьет или нет?
          0
          Да нет конечно, по крайней мере в обозримом будущем, например есть огромный пласт заказчиков, которые просто не доверяют облачным технологиям, предпочитают хранить все у себя, например те же государственные предприятия.
            +1
            Так то серверлесс это не только про облака — можно серверлесс развернуть и на собственных серверах. Уйдет преимущество PAYG оплаты, но быстрая разработка, масштабирование, «упрощенный» devops останутся.
              0

              Что-то как-то странно же звучит: поднять серверлесс на своих серверах. Как я понял в статье идёт речь о том, что не требуется для целевой задачи держать у себя серверы, а вместо них использовать сервисы представляющие услуги. Но и здесь по сути подход software as a service.

                0
                Под своими серверами я имею ввиду и серверы в вашем собственном датацентре, и виртуальные серверы AWS, Azure, Hetzner, да любые. Я рассматриваю serverless, как следующую степень абстракции инфраструктуры разработки, как cloud заменил on-prem. Зачем нужны виртуальные машины или контейнеры, когда все, что вам на самом деле нужно это запускать код? Зачем вам возиться с окружением, портами, сокетами, когда все, что вам нужно это API ссылка (опубликую кстати статью на эту тему)? Зачем думать о масштабировании, когда serverless платформа сама запустит вашу функцию миллион раз?
          +2
          Serverless создаёт иллюзию простоты на первых этапах развития продукта. Так что, как и контейнеры в своё время, serverless снизят порог входа для новичков и мелких стартапов, отнимая работу у низкоквалифицированных sysops/sre. Но в случае если стартап «выстрелит» — им понадобится дорогостоящие специалисты что бы поддерживать в дальнейшем и рефакторить вышедший из под конроля serverless хаос, состоящий из сотен неотслеживаемых приложений и связей между ними
            0
            Ага, поддержка пары сотен хостов AWS распределенных географически и по продуктам и тысяч Lambda функций, которые организовывают serverless механизм крупной компании, точно потребует нехилых компетенций.
              0
              Это да, конечно, serverless не убьет devops, потому что, например, какого-то 100% рецепта по организации того же devops процесса для serverless я не встречал. Но он появится и, уверен, он будет проще для serverless. Уже сейчас можно выстроить этот процесс на синхронизации с git и роутерах. Однако не согласен насчет хаоса. У вас отдельная функция, независимая ни от какой другой функции, выполняет одну конкретную задачу. Комбинируйте их как хотите, с разными языками, с монолитными приложениями. Объединяйте в группы согласно бизнес-функциям. В чем хаос?
                0
                Объединяйте в группы согласно бизнес-функциям. В чем хаос?

                представьте, что сотня разрабов самостоятельно (читаем «безконтрольно») строчат тысячи serverless приложений. Теперь попробуйте, например, обеспечить безопасность в такой среде, а ещё лучше — траблшутинг в ситуации, когда происходят необъяснимые провалы в производительности, а запрос проходит через пол-сотни функций, запущенных непонятно где и как.
                Serverless безусловно имеет право на жизнь, но он хорошо подходит для узкого круга (асинхронных) задач
              0
              Мне вообще начинает казаться, что чем больше всех этих облаков — тем больше будет нужно девопсов. Я ещё помню времена, когда в AWS можно было тремя кликами запустить виртуалку. А вот на прошлой неделе я зашел в Azure и хотел сделать простую виртуалку, запускающуюся раз в сутки ночью для тестов — провозился 2 часа и так и не вышло. Одна страница документации тянет за собой другую, та третью, скрипты какие-то, роли, права доступа. Плюнул и забил.
                0
                О да, но, кстати, AWS все-таки добавляет новые сервисы с человеческим лицом — Amplify Console, например. Если нужна простая VPS, то есть очень простой Lightsail. Правда без доступа ко всей мощи EC2, но все же.
                0
                Когда вышел Windows Server говорили, что админы не нужны, терь есть GUI, в результате появился windows администратор, потом ввели AD и теперь есть специализация как админ Active Directory, еще появлялись базы данных и появился DBA. Появился AWS и опять, админы не нужны, терь есть админы по железу, а есть кто по клаудам, и еще терь можно автоматизировать, админы точно не нужны, пишете код и виртуалки развернутся… появились DevOps. Просто появится новая специализация на serverless.

                Only users with full accounts can post comments. Log in, please.