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

Материал из Artem Aleksashkin's Wiki
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
 
(не показано 40 промежуточных версий этого же участника)
Строка 1: Строка 1:
[[File:clouds.gif]]
Имея опыт в классическом Operations - ос, бд, веб-серверы и пр здесь я хочу сравнить решения облака с классическим решением
Имея опыт в классическом Operations - ос, бд, веб-серверы и пр здесь я хочу сравнить решения облака с классическим решением


Строка 10: Строка 12:
* Secondary BIND (>= 1)
* Secondary BIND (>= 1)
||
||
Естественно облачный провайдер легко может решить задачу DNS, т.к. имеет несколько датацентров с независимым энергоснабжением.
* https://cloud.google.com/dns
* https://cloud.google.com/dns
* https://aws.amazon.com/ru/route53/
* https://aws.amazon.com/ru/route53/
Строка 19: Строка 20:
* https://mcs.mail.ru/docs/networks/vnet/networks/publicdns
* https://mcs.mail.ru/docs/networks/vnet/networks/publicdns
* https://www.cloudflare.com/dns/
* 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 ||
| CDN ||
Строка 28: Строка 54:
||
||
* https://cloud.google.com/cdn
* 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 ||


= Google Cloud Platform =
||
* 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 ||


* https://cloud.google.com/
||
|-
| Online Apps ||
||
|-
| Background Apps ||
||
|-
| Big Statistics Database ||


= Amazon Web Services =
||
|-
| AI servers ||
||
|-
| Monitoring & Alerting ||


* https://aws.amazon.com/
||
|}


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


* https://cloud.google.com/
* https://aws.amazon.com/
* https://www.cloudflare.com/
* https://azure.microsoft.com/
* https://azure.microsoft.com/
= Hetzner Cloud =
* https://www.hetzner.com/ru/cloud
* https://www.hetzner.com/ru/cloud
= Alibaba Cloud =
* https://eu.alibabacloud.com/
* https://eu.alibabacloud.com/
= Yandex Cloud =
* https://cloud.yandex.ru/
* https://cloud.yandex.ru/
= Mail Ru Cloud =
* https://mcs.mail.ru/
* https://mcs.mail.ru/
 
* https://sbercloud.ru/ru
= CloudFlare =
* https://www.akamai.com/
 
* https://www.fastly.com/
* https://www.cloudflare.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

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