Доступно ли какое-либо моделирование / эмуляция amazon web services (aws)?

#amazon-ec2 #amazon-web-services #amazon

#amazon-web-services #amazon-ec2

Вопрос:

Я хочу использовать интерфейс python boto для разработки. В настоящее время я использую Google App Engine, и в его SDK включена платформа моделирования, которую я использую для разработки. Мне интересно, существует ли такая платформа моделирования / эмуляции и для AWS. Если такой платформы нет, то как я могу протестировать свои веб-приложения до того, как они поступят на реальные серверы AWS?

Ответ №1:

Существует несколько довольно сложных фреймворков, имитирующих облачные сервисы, таких как kinesalite, dynalite или moto.

Вы также могли бы взглянуть на LocalStack (теперь переведен на новое репозиторий), фреймворк, который объединяет существующие лучшие в своем классе инструменты и предоставляет полностью функциональную локальную облачную среду, которую можно использовать для интеграционного тестирования. Это позволяет вам тестировать свои приложения в автономном режиме, без подключения и без оплаты за какие-либо облачные сервисы.

(Приношу извинения за ответ на старый вопрос, но это может помочь людям, которые обнаруживают эту тему)

Комментарии:

1. LocalStack выглядит многообещающе.

2. Бесплатная версия LocalStack не поддерживает ECS, поэтому в лучшем случае это демонстрационная версия с отключенными функциями.

Ответ №2:

Проект с открытым исходным кодом Eucalyptus реализует API Amazon на вашем собственном оборудовании. Это предоставляет способ реализовать ваше собственное «частное облако», но не предоставляет вам локальное моделирование облака EC2 (хотя, возможно, вы могли бы настроить его как таковое).

Такая среда «локального тестирования» была бы сложной, поскольку экземпляр EC2 представляет собой целую виртуальную машину и, как таковой, потреблял бы много ресурсов на вашей машине разработки (не говоря уже о том, если бы вам нужно было эмулировать несколько из них). EC2 принципиально отличается от App Engine — с EC2 вы арендуете виртуальные машины и можете тестировать на них так же легко, как и на локальной виртуальной машине.

Ответ №3:

Amazon предлагает «Бесплатный уровень», который предоставляет ограниченное бесплатное использование всем, кто находится вне их облачного стека. Это идеально подходит для тестирования и даже производственного хостинга сайтов / приложений небольшого объема.

http://aws.amazon.com/free/

Существуют некоторые сторонние эмуляции некоторых частей стека AWS, но официального инструмента эмуляции от Amazon нет, и ни одно из предложений сторонних производителей не является полным…

Комментарии:

1. Это не отвечает на вопрос OP: «… перед переходом на реальные серверы AWS?». Предположение о том, что причиной необходимости «автономного тестирования» является нежелание платить за вычислительное время во время разработки, не обязательно верно. Могут быть и другие причины, например, отсутствие постоянного подключения к Интернету.

Ответ №4:

Платформа Amplify с открытым исходным кодом, пожалуйста, также учитывайте это (кажется, поддерживается AWS)

https://aws.amazon.com/blogs/aws/new-local-mocking-and-testing-with-the-amplify-cli/