Чи є міжрегіональна реплікація на 100% безвідмовною для відключень S3 регіону?


19

У Amazon S3 є можливість міжрегіональної реплікації, яка повинна бути досить стійкою до відмов проти відключень регіону / зони.

Чи означає це, що ті, хто мріє про відключення, не скористалися цим аспектом?

Або це те, що міжрегіональна реплікація не є абсолютно дурною і не допомогла б?



@Evgeny Дякую Я читав той самий пост, перш ніж запитати це :)
Dawny33

Відповіді:


11

Недолік, коли є реплікація, випливає з примітки нижче:

Amazon S3 здійснює маршрутизацію будь-яких віртуальних запитів у стилі розміщення до регіону Схід США (Н. Вірджинія) за замовчуванням, якщо ви використовуєте кінцеву точку Східної (Н. Вірджинія) США (s3.amazonaws.com), а не кінцеву точку для конкретного регіону (для наприклад, s3-eu-west-1.amazonaws.com).

Коли ви використовуєте реплікацію, ви зазвичай дозвольте AWS піклуватися про направлення псевдоніма до одного регіону, орієнтуючись s3.amazonaws.comу вашому запиті REST з ваших серверів, і нехай переспрямовування виконує свою роботу.

Щоразу, коли N.Virginia не працює, магія перестає працювати, і вам не пощастить отримати доступ до своїх даних, і вам доведеться оновити конфігурацію, щоб вибрати конкретну кінцеву точку регіону.

Проблема виникає не від DNS (запит до самого відра буде працювати), а від клієнтів S3, які підключуються до кінцевої точки API S3 перед тим, як отримати доступ до вікна, у цьому випадку роздільна здатність dns робиться на, s3.amazonaws.comі це схід-1 кінцева точка.

Використовуючи псевдонім регіонів, ви втрачаєте простоту збалансування навантаження над регіонами, включаючи перевірку стану здоров’я з включеної АРМ.

Якщо ви використовуєте DNS-ім'я, націлене на регіони для швидкого перемикання, ви несете відповідальність за свій DNS TTL, але нічого не гарантує, що кеш-сервери клієнтського провайдера будуть шанувати вашу цінність (один з багатьох кеш-пам'яток, з якими може зіткнутися ваш клієнт).

І, нарешті, якщо ви спробуєте навантажити баланс самостійно, ви, ймовірно, створите такий самий SPOF, як AWS, який вже є з додатковим тягарем його підтримання.

AWS працює над цим, але це вся інформація, яку я маю під час написання.


Відповідно до docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html можна використовувати "bucketname.s3-eu-west-1.amazonaws.com" (замінити улюблений регіон) як псевдонім DNS. IFF, який працює, це може бути способом швидкого переключення (так швидко, як дозволяє попередньо встановлений TTL)
Майкл Браво

@MichaelBravo продовжив відповідь, щоб вирішити вашу проблему :)
Tensibai

"Навіть якщо теоретично ви могли використовувати CNAME для кінцевих точок регіону, авторитетна відповідь покладається на службу в N.Virginia, наскільки я знаю, і я про це читав" Ви берете цитату про маршрутизацію до східного регіону США. за замовчуванням поза контекстом. Перш ніж example-bucketвідро існує, example-bucket.s3.amazonaws.comвже вказує на Схід США у DNS. Протягом декількох хвилин від початкового створення відра це постійно змінюється, щоб вказувати на правильну регіональну кінцеву точку. Попередження тут полягає в тому, що це ім'я хоста спочатку може бути коротко помилково одразу після створення пакета - не пізніше.
Майкл - sqlbot

... тому "Щоразу, коли N.Virginia не працює, магія перестає діяти, і вам не пощастить отримати доступ до своїх даних у будь-якому регіоні методом псевдоніму DNS" , тому невірно. Відмови в інших регіонах не вплинули на відключення us-east-1, включаючи ті, на які посилався цей стиль імені хоста.
Майкл - sqlbot

1
Ні, ви цього не робите. Вони змінюють запис DNS для вашого відра в s3.amazonaws.comзоні протягом декількох хвилин після створення відра, і ця зміна зберігається незалежно від нас-east-1. Створіть відро в іншому регіоні і спостерігайте за тим, як воно your-bucket-name.s3.amazonaws.comвирішується до, під час та декількох хвилин після створення відра. Інформація висувається в s3-1.amazonaws.comзону маршруту 53 після створення відра і зберігається там, без подальшої опори на нас-схід-1.
Майкл - sqlbot

10

Багато великих компаній були б винні в тому, що вони не використовували цю функцію. Це додає додаткових витрат, і історично будь-яке реальне рішення щодо відновлення аварій не є перевіреним, навіть якщо воно застосовується.

Окрім проблеми з витратами, компанії, які активно використовують реплікацію між регіонами, можуть висловити серйозне занепокоєння щодо затримки, необхідної для копіювання об'єкта. S3 не дозволяє (наскільки я знаю) консистенцію після читання після повторного запису на реплікуваних об'єктах, в той час як він дозволяє використовувати це відро в одній області.

Це запитання щодо ДП викликає занепокоєння, коли об'єкти не реплікуються належним чином або потрібні занадто багато часу для їх копіювання. За умови, що міжрегіональна реплікація проводиться в режимі можливої ​​послідовності, існує багато проблем.


8
Я хотів би зробити додатковий акцент на тому, що міжрегіональна реплікація S3 пропонує можливу послідовність деяких операцій. Це враховувати не банально. Залежно від програми це може бути прямо неприйнятним. У будь-якому випадку, це не дурень (це може призвести до великих проблем, якщо хтось припустить, що це магія)
Олександр
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.