gpt4 book ai didi

Python 使用 Fabric 连接到 EC2 实例

转载 作者:行者123 更新时间:2023-12-01 05:21:46 25 4
gpt4 key购买 nike

我正在学习Fabric。我想要实现以下目标:通过 ssh 进入我的 EC2 计算机并 ls 主目录

我从以下开始:

from boto import ec2

from fabric.colors import green as _green, yellow as _yellow


class EC2Conn:
def __init__(self):
print(_green("Started..."))
self.ec2conn = None
self.user = 'fabUser'
self.access_key = 'xxxx'
self.secret_key = 'xxxx'

def connect(self):
print(_green("Connecting..."))
ec2.connect_to_region("eu-west-1a")
self.ec2conn = ec2.connection.EC2Connection(self.access_key, self.secret_key)

print(self.get_instances())


def get_instances(self):
return self.ec2conn.get_all_instances()


def run_me():
a = EC2Conn()
a.connect()

但这给了我一个空白列表 [] 我确实有 1 个实例正在运行,所以这是不正确的。

最佳答案

尝试在代码中进行一些更改,如下所示

self.ec2conn = ec2.connect_to_region('eu-west-1', 
aws_access_key_id=self.access_key,
aws_secret_access_key=self.secret_key)

print(self.get_instances())

或者

region = ec2.get_region('eu-west-1')
self.ec2conn = ec2.connection.EC2Connection(self.access_key,
self.secret_key, region=region)

print(self.get_instances())

请记住,ec2.connect_to_regionec2.connection.EC2Connection 均返回 ec2.connection.EC2Connection 对象。请参阅here

关于Python 使用 Fabric 连接到 EC2 实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22169754/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com