Не так давно amazon анонсировал появление дополнительной зоны в регионе us-east – us-east-1d – теперь у EC2 есть два региона – us-east-1 ( в котором есть 4 зоны us-east-1a, us-east-1b, us-east-1c, us-east-1d ) и eu-west-1 ( в котороем есть две зоны eu-west-1a и eu-west-1c ). Для начала о регионах – регионы в EC2 – это географически разные ДЦ, с полностью независимыми namespace для всего – единственное что их объединяет это платежный аккаунт – оба региона доступны в AWS console, и так же доступны через command line API – при этом для того чтобы команда применялась как региону отличному от региона по умолчанию необходимо использовать ключ –region – фактически обращение за данными по разным урлам – eu-west-1.compute.amazonaws.com и us-east-1.compute.amazonaws.com. При работе через SOAP нужно использовать соответствующий урл, а не параметр как ожидалось – было бы логичнее чтобы была одна точка входа, а регион был обычным параметром, каким он собственно и является. Пространства пар ключей, имен AMI, запущенных инстансов и все остальное в регионах абсолютно непересекаются – поэтому чтобы посмотреть все запущенные инстансы надо использовать ec2-describe-instances –region us-east-1 а потом ec2-describe-instances –region eu-west-1. И поэтому например официальные провайдеры AMI ( такие как alestic.com – ubuntu, sun – open solaris ) поддерживают свои образы для каждого региона, поскольку запустить instance можно только по AMI который находится в том же регионе где запускается данные instance. Впрочем, oracle например поддерживает только us-east-1, тем самым заставляя своих пользователей пользоваться ec2-migrate-bundle. Более того – расценки за ресурсы размещенные в разных регионах – разные ( в eu-west-1 немного выше ), также трафик между регионами не считается внутренним и также оплачивается. Регионом по умолчанию как правило является us-east-1, также по умолчанию в amazon EC2 есть верхняя граница одновременно запущенных instances – не более 10 на аккаунт. Если нужно больше – письмо в support ( реагируют они на самом деле достаточно быстро ) но расширяют возможности по увеличению количества одновременно запущенных instance предоставляя новый пул в регионе eu-west-1 в котором ресурсы несколько дороже чем us-east-1. Регионы в EC2 – это физически изолированные друг от друга instances которые находятся физически удаленно друг от друга, отдельно конфигурируются, имеют независимые namespace для ресурсов, создаются, ресурсы в которых имеют разную стоимость и трафик между регионами не считается внутренним и оплачивается. Естественно, что по внутреннему DNS имени instances доступны только внутри своего региона.
Зоны в EC2 имеют другой смысл – это также физически разные ДЦ ( или стойки ? ) , но зоны не имеют своих namespace – то есть для всех зон внутри региона все данные – ключи, AMI – общие, конфигуруются они также вместе, доступ между instance из разных зон возможен по внутреннему DNS имени, трафик между зонами считается внутренним, тарификация ресурсов в разных зонах для одного региона также одинаковая. Таким образом зоны позволяют в определенных пределах управлять физическим размещением кластера и гарантировать то что instance запущенны на физически разных серверах – такая проблема может возникнуть например для data-aware routing в случае возможного размещения instance на физически одной стойке характеристики приложения сильно изменяются – наличие зон в определённом плане решает данную проблему. Для запуска instance в конкретной зоне
ec2-run-instances –region -z <имя_зоны>
Посмотреть доступные зоны и регионы можно командой ec2-describe-availability-zones и ec2-describe-regions
abokov@abokov-desktop:~$ ec2-describe-availability-zones –region us-east-1
AVAILABILITYZONE us-east-1a available us-east-1
AVAILABILITYZONE us-east-1b available us-east-1
AVAILABILITYZONE us-east-1c available us-east-1
AVAILABILITYZONE us-east-1d available us-east-1
abokov@abokov-desktop:~$ ec2-describe-availability-zones –region eu-west-1
AVAILABILITYZONE eu-west-1a available eu-west-1
AVAILABILITYZONE eu-west-1b available eu-west-1
abokov@abokov-desktop:~$ ec2-describe-regions
REGION eu-west-1 eu-west-1.ec2.amazonaws.com
REGION us-east-1 us-east-1.ec2.amazonaws.com
Leave a Reply