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

Материал из Artem Aleksashkin's Wiki
Перейти к навигации Перейти к поиску
(Новая страница: «= Google Cloud Platform = * https://cloud.google.com/ = Amazon Web Services = * https://aws.amazon.com/»)
 
Нет описания правки
 
(не показано 57 промежуточных версий этого же участника)
Строка 1: Строка 1:
= Google Cloud Platform =
[[File:clouds.gif]]


* https://cloud.google.com/
Имея опыт в классическом Operations - ос, бд, веб-серверы и пр здесь я хочу сравнить решения облака с классическим решением
 
{| class="wikitable"
|-
! Задача !! Классическое решение !! Облачное решение
|-
| DNS ||
Необходимо минимум 2 сервера в независимых сетях с независимым электроснабжением (см [https://ru.wikipedia.org/wiki/%D0%A1%D0%B1%D0%BE%D0%B9_%D0%B2_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B5_Facebook_(2021) пример]).
* Primary BIND (1)
* Secondary BIND (>= 1)
||
* https://cloud.google.com/dns
* https://aws.amazon.com/ru/route53/
* https://azure.microsoft.com/ru-ru/products/dns/
* https://www.hetzner.com/dns-console
* https://www.alibabacloud.com/ru/product/dns
* https://cloud.yandex.ru/services/dns
* https://mcs.mail.ru/docs/networks/vnet/networks/publicdns
* https://www.cloudflare.com/dns/
|-
| Load Balancer ||
||
|-
| Firewall ||
IPTABLES правила на серверах с автоматической раскаткой. Также есть сервисы фильтрации DDOS атак и против ботов.
||
* https://cloud.google.com/firewalls
* https://aws.amazon.com/ru/network-firewall/
* https://azure.microsoft.com/en-us/products/azure-firewall/
* https://www.alibabacloud.com/ru/product/cloud-firewall
* https://www.cloudflare.com/magic-firewall/
* https://cloud.yandex.ru/docs/security/domains/network
* https://mcs.mail.ru/docs/networks/vnet/firewall
|-
| SSL ||
Классическое решение - на Load Balancer Proxy Web сервер ставится сертификат, а все что за ним не шифруется, т.к. происходит внутри локальной сети провайдера. Здесь необходим алертинг истечения срока действия сертификата и система раскатки сертификатов по веб серверам (если их несколько). Сертификат можно купить, а можно поставить Let's Encrypt (https://letsencrypt.org/ru/)
||
* https://cloud.google.com/load-balancing/docs/ssl-certificates
* https://aws.amazon.com/ru/certificate-manager/
* https://learn.microsoft.com/en-us/azure/app-service/configure-ssl-certificate
* https://www.alibabacloud.com/ru/product/certificates
* https://cloud.yandex.ru/services/certificate-manager
* https://mcs.mail.ru/cloud-platform/certificates/
* https://www.cloudflare.com/ssl/
|-
| CDN ||
Современные веб приложения - это набор статических JS, CSS, Image, Fonts файлов, которые публикуются в момент релиза приложения. Также CDN хорош при раздаче ассетов загружаемых пользователями.
 
Здесь решение может быть построено как несколько Nginx серверов в независимых датацентрах на Dedicated/VPS серверах кэширующих контент с мастер сервера или принудительно обновляемых контент с мастер сервера.
* Master Web Server (1)
* Secondary [Proxy] Web Server (>= 0)
||
* https://cloud.google.com/cdn
* https://aws.amazon.com/ru/cloudfront/
* https://azure.microsoft.com/ru-ru/products/cdn/
* https://www.alibabacloud.com/ru/product/content-delivery-network
* https://cloud.yandex.ru/services/cdn
* https://mcs.mail.ru/cdn/
* https://www.cloudflare.com/cdn/
|-
| MySQL ||
Ясно, что есть и другие базы данных, здесь MySQL как пример классической SQL базы.
В общем смысле нужно сделать репликацию Master(1)-Slave(>=0), чтобы улучшить доступность приложения. Кроме того нужно увеличить объемы кэшей для оптимального использования ресурсов БД. (См [https://dev.mysql.com/doc/refman/8.0/en/replication.html], [https://dev.mysql.com/doc/refman/8.0/en/memory-use.html]). Лучше, конечно, оптимально продумывать приложение на стадии проектирования.
 
Кластер БД серверов - это серьезная нагрузка на Ops команду, т.к. требует серьезного мониторинга и в случае краха системы быстрого восстановления.
||
* https://cloud.google.com/sql/docs/mysql
* https://aws.amazon.com/ru/rds/mysql/
* https://azure.microsoft.com/ru-ru/products/mysql/
* https://www.alibabacloud.com/ru/product/apsaradb-for-rds-mysql
* https://cloud.yandex.ru/services/managed-mysql
* https://mcs.mail.ru/databases/mysql/
|-
| MongoDB ||
Кластер серверов настроенных вручную
||
* https://cloud.google.com/mongodb
* https://aws.amazon.com/ru/solutions/partners/mongodb/
* https://learn.microsoft.com/ru-ru/azure/cosmos-db/mongodb/introduction
* https://www.alibabacloud.com/ru/product/apsaradb-for-mongodb
* https://cloud.yandex.ru/services/managed-mongodb
* https://mcs.mail.ru/databases/mongodb/
|-
| ElasticSearch ||
 
||
* 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 ||
 
||
* https://cloud.google.com/memorystore/docs/memcached
* https://aws.amazon.com/ru/elasticache/memcached/
* https://azure.microsoft.com/ru-ru/updates/memcached-cloud-available-in-the-azure-store/
* https://www.alibabacloud.com/ru/product/apsaradb-for-memcache
* https://sbercloud.ru/ru/products/memcached-virtual-appliance
|-
| SSO ||
 
||
|-
| Online Apps ||
||
|-
| Background Apps ||
||
|-
| Big Statistics Database ||
 
||
|-
| AI servers ||
||
|-
| Monitoring & Alerting ||


||
|}


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


* https://cloud.google.com/
* https://aws.amazon.com/
* https://aws.amazon.com/
* https://www.cloudflare.com/
* https://azure.microsoft.com/
* https://www.hetzner.com/ru/cloud
* https://eu.alibabacloud.com/
* https://cloud.yandex.ru/
* https://mcs.mail.ru/
* https://sbercloud.ru/ru
* https://www.akamai.com/
* https://www.fastly.com/
* https://www.digitalocean.com/

Текущая версия от 20:09, 11 ноября 2024

Clouds.gif

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

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

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

  • Primary BIND (1)
  • Secondary BIND (>= 1)
Load Balancer
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

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