Облака: различия между версиями

Материал из Artem Aleksashkin's Wiki
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 82: Строка 82:


||
||
* https://console.cloud.google.com/marketplace/product/elastic-prod/elastic-cloud
* https://aws.amazon.com/ru/what-is/elasticsearch/
* https://learn.microsoft.com/en-us/dotnet/architecture/cloud-native/elastic-search-in-azure
* https://www.alibabacloud.com/ru/product/elasticsearch
* https://cloud.yandex.ru/services/managed-elasticsearch
* https://mcs.mail.ru/docs/additionals/mp/mp-faq/mp-elk-monitoring
|-
|-
| Memcache ||
| Memcache ||

Версия от 22:22, 23 декабря 2022

Имея опыт в классическом Operations - ос, бд, веб-серверы и пр здесь я хочу сравнить решения облака с классическим решением

Задача Классическое решение Облачное решение
DNS

Необходимо минимум 2 сервера в независимых сетях с независимым электроснабжением (см пример).

  • Primary BIND (1)
  • Secondary BIND (>= 1)
Firewall

IPTABLES правила на серверах с автоматической раскаткой. Также есть сервисы фильтрации DDOS атак и против ботов.

SSL

Классическое решение - на Load Balancer Proxy Web сервер ставится сертификат, а все что за ним не шифруется, т.к. происходит внутри локальной сети провайдера. Здесь необходим алертинг истечения срока действия сертификата и система раскатки сертификатов по веб серверам (если их несколько). Сертификат можно купить, а можно поставить Let's Encrypt (https://letsencrypt.org/ru/)

CDN

Современные веб приложения - это набор статических JS, CSS, Image, Fonts файлов, которые публикуются в момент релиза приложения. Также CDN хорош при раздаче ассетов загружаемых пользователями.

Здесь решение может быть построено как несколько Nginx серверов в независимых датацентрах на Dedicated/VPS серверах кэширующих контент с мастер сервера или принудительно обновляемых контент с мастер сервера.

  • Master Web Server (1)
  • Secondary [Proxy] Web Server (>= 0)
MySQL

Ясно, что есть и другие базы данных, здесь MySQL как пример классической SQL базы. В общем смысле нужно сделать репликацию Master(1)-Slave(>=0), чтобы улучшить доступность приложения. Кроме того нужно увеличить объемы кэшей для оптимального использования ресурсов БД. (См [1], [2]). Лучше, конечно, оптимально продумывать приложение на стадии проектирования.

Кластер БД серверов - это серьезная нагрузка на Ops команду, т.к. требует серьезного мониторинга и в случае краха системы быстрого восстановления.

MongoDB

Кластер серверов настроенных вручную

ElasticSearch
Memcache
SSO
Online Apps
Background Apps
Big Statistics Database
AI servers
Monitoring & Alerting

Список облачных провайдеров