Как запустить код в экземпляре Amazone EC2?
Я почти ничего не понимаю для функционирования EC2. Я создал учетную запись Amazon Web Service (AWS). Затем я запустил экземпляр EC2.
И теперь я хотел бы выполнить код Python в этом экземпляре, и я не знаю, как продолжить. Нужно ли загружать код где-нибудь в экземпляре? Или в Amazon S3 и связать его с экземпляром?
Где есть руководство, объясняющее использование экземпляров, которые возможны? Я чувствую себя мужчиной перед приборной панелью летающего тарелки без руководства пользователя.
Ответы
Ответ 1
У вас есть множество вариантов. Вы можете просмотреть большую библиотеку AMI здесь.
Вы можете импортировать vm, инструкции здесь.
Это общая статья о AWS и python.
И в этой статье автор проведет вас через более совершенную систему с комбинацией хранилищ данных на python, используя крайне рекомендуемую инфраструктуру django.
Ответ 2
Здесь очень простая процедура для перемещения вашего Python script из локального экземпляра EC2 и запуска его.
> 1. scp -i <filepath to Pem> <filepath to Py File> [email protected]<Public DNS>.compute-1.amazonaws.com:<filepath in EC2 instance where you want
> your file to be>
> 2. Cd to to the directory in EC2 containing the file. Type Python <Filename.py> There it executed.
Вот конкретные примеры для тех, кто любит вещи, показанные шаг за шагом:
- В вашем локальном каталоге создайте python script со следующим кодом: print ( "Hello AWS" )
- Предполагая, что у вас уже установлена AWS, и вы хотите запустить этот script в EC2, вам необходимо передать файл SCP (Secure Copy Protocol) в каталог в EC2. Итак, вот пример:
-
- Мой путь к файлу - ~/Desktop/random.pem.
- My filepath для файла py - ~/Desktop/hello_aws.py
- Мой открытый DNS - ec22-34-12-888
- В каталоге ec2, где я хочу, чтобы мой script был в /home/ec 2-user
- Таким образом, полная команда, которую я запускаю в моем локальном терминале, такова:
scp -i ~/Desktop/random.pem ~/Desktop/hello_aws.py [email protected]:/home/ec2-user
- Теперь ssh для вашего экземпляра ec2, cd to/home/ec2-user (или где бы вы ни разместили файл) и Python hello_aws.py
Ответ 3
-
Запустите свой экземпляр через консоль управления Amazon → Действия экземпляра → Connect
(Подробнее в руководстве по началу работы)
-
Запустите Java SSH CLient
-
Плагины- > Передача файлов SCFTP
-
Загрузите файлы
-
запустите ваши файлы в фоновом режиме (с '&' в конце или используйте nohup)
Обязательно выберите AMI с включенным python, вы можете проверить, набрав "python" в оболочке.
Если ваше приложение требует каких-либо неортодоксальных пакетов, вам придется их установить.
Ответ 4
Запуск сценариев в экземплярах Linux ec2
Мне пришлось запустить script на Amazon ec2 и узнать, как это сделать. Несмотря на то, что вопрос задавался много лет назад, я подумал, что поделился бы тем, насколько он прост сегодня.
Настройка EC2 и ssh-ing на хост ec2
- Регистрация и запуск экземпляра ec2 (не забудьте сохранить файл сертификата, который будет создан при запуске ec2) с настройками по умолчанию.
- После запуска и запуска ec2 предоставить необходимые разрешения для файла сертификата
chmod 400 /path/my-key-pair.pem
(или файла .cer)
- Запустите команду:
ssh -i /path/my-key-pair.pem(.cer) [email protected] DNS
( USER изменения данных на основе операционной системы, которую вы запустили, обратитесь к нижеприведенному абзацу для более подробной информации и & Public DNS можно получить на странице экземпляра ec2)
Используйте команду ssh для подключения к экземпляру. Вы указываете файл закрытого ключа (.pem) и имя_пользователя @public_dns_name. Для Amazon Linux имя пользователя - ec2-пользователь. Для RHEL имя пользователя - ec2-пользователь или root. Для Ubuntu имя пользователя ubuntu или root. Для Centos имя пользователя - centos. Для Fedora имя пользователя является ec2-пользователем. Для SUSE имя пользователя - ec2-пользователь или root. В противном случае, если ec2-пользователь и root не работают, обратитесь к поставщику AMI.
Клонировать script в EC2
Чтобы запустить скрипты на ec2, я бы предпочел сохранить код в Github в качестве репо или в виде gist (если вам нужно сохранить закрытый код) и клонировать в ec2.
Выше упоминание очень легко и не подвержено ошибкам.
Запуск python script
Я работал с экземпляром RHEL Linux, и python уже был установлен. Таким образом, я могу запустить python script после ssh-ing для непосредственного подключения. Это зависит от выбранной вами операционной системы. Обратитесь к руководствам aws, если они уже не установлены.
Ссылка: AWS Doc