Что такое облачные технологии (cloud computing)?
Облачные технологии — аренда вычислительных ресурсов у провайдера вместо покупки собственных серверов. Компания берёт нужные мощности, базы и сервисы по требованию и платит только за фактическое потребление.
Главное преимущество — эластичность. Не нужно покупать оборудование «с запасом на пиковый день»: ресурсы добавляются за минуты и так же убираются, когда нагрузка спадает. Запуск нового проекта перестаёт зависеть от закупок и монтажа.
Модели различаются по глубине ответственности: IaaS даёт виртуальные серверы и сети, где вы отвечаете почти за всё; PaaS — готовую платформу для запуска приложений; SaaS — готовый продукт, которым просто пользуются. Крупнейшие провайдеры — AWS, Microsoft Azure и Google Cloud.
Связанные термины
AWS (Amazon Web Services) — крупнейшая облачная платформа, предоставляющая сотни сервисов: виртуальные серверы, хранилища, базы данных, сети, инструменты машинного обучения и мониторинга. Ресурсы арендуются по мере необходимости, оплата — за использование.
DevOpsDevOps — подход к разработке, в котором создание программы и её эксплуатация объединены в один процесс: та же команда отвечает и за код, и за то, как он собирается, разворачивается и работает на серверах. Цель — выпускать изменения часто, быстро и безопасно.
ServerlessServerless — модель запуска кода, при которой разработчик загружает функцию, а облачный провайдер сам выделяет ресурсы под каждый её вызов. Серверы, разумеется, существуют — просто ими не нужно управлять, и оплата идёт за фактические вызовы.
KubernetesKubernetes — система оркестрации контейнеров: она сама запускает нужное количество контейнеров на группе серверов, перезапускает упавшие, распределяет нагрузку и выкатывает обновления без остановки сервиса.
Infrastructure as CodeInfrastructure as Code — подход, при котором серверы, сети, базы и права доступа описываются в конфигурационных файлах и создаются автоматически по этому описанию, вместо ручной настройки через веб-интерфейс облака.