Amazon Web Service / Boto: выгрузка и выполнение удаленного скрипта python / bash через SSH на локальном хосте - PullRequest
2 голосов
/ 18 октября 2011

Я могу запустить AWS Экземпляр Ubuntu EC2 с boto . Кто-нибудь пытался загрузить скрипт на удаленный Ubuntu EC2 (более 1) и выполнить скрипт через SSH локально?

Основная цель - автоматизировать весь процесс, используя скрипт Python, написанный на localhost. Есть ли альтернативный способ или инструменты Amazon API, чтобы сделать это возможным?

Ответы [ 3 ]

1 голос
/ 30 октября 2011

Я бы порекомендовал Ткань , она сделана для такого рода вещей.

0 голосов
/ 27 декабря 2016

Здесь код Paramiko для выполнения на удаленном Python AWS EC2:

import paramiko
sftp, transport= None, None,  None
try:
    if keyfilepath=='': keyfilepath= AWS_KEY_PEM
    if keyfiletype == 'DSA':  key = paramiko.DSSKey.from_private_key_file(keyfilepath)
    else:                     key = paramiko.RSAKey.from_private_key_file(keyfilepath)

    if contype== 'sftp' :
      transport = paramiko.Transport((host, port))
      transport.add_server_key(key)
      transport.connect(None, username,  pkey=key)
      sftp = paramiko.SFTPClient.from_transport(transport)
      if isprint : print('Root Directory :\n ', sftp.listdir())
      return sftp

except Exception as e:
    print('An error occurred creating client: %s: %s' % (e.__class__, e))
    if sftp is not None:      sftp.close()
    if transport is not None: transport.close()
    if ssh is not None: ssh.close()
0 голосов
/ 25 октября 2011

Использование paramiko API

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...