我有两个数据库,一个在我的本地计算机上,另一个在我的亚马逊ec2 instance.Now上。我所做的是在我的本地计算机上运行一个python程序,对我本地计算机上的数据库进行更改。我希望这些更改定期反映到亚马逊ec2实例上的数据库上。我想在python中执行此操作。登录到亚马逊服务器的脚本将与那里的数据库建立连接并进行更改。
我遇到了一些模块,如pexcept、fabric和paramiko.But,我正在为密钥身份验证而苦苦挣扎。
我从终端ssh的方式是ssh -i my_rsa_file.pem username@ip_address.There is no password.How do I go go this ??另外,我想知道在subprocess中简单地使用Popen执行登录命令是否有效?
发布于 2013-09-16 20:56:46
这里的Boto EC2文档描述了EC2实例对象,"key_pair“是该对象的一个属性。在"boto.ec2.instance“下面看大约3/4的地方。
http://boto.readthedocs.org/en/latest/ref/ec2.html
例如,你可以像下面这样运行一些实例,然后将第一个实例存储为"inst":
reservation = conn.run_instances(...)
inst = reservation.instances[0]要以unicode字符串的形式检索密钥对名称,只需使用:
kp_name = inst.key_name然后,您可以使用get_key_pair检索相应的Boto对象:
kp_obj = conn.get_key_pair(kp_name)当然,这是一个愚蠢的例子,因为我首先需要将我的密钥对名称设置为run_instances。祝你找到一份更有成效的工作!
https://stackoverflow.com/questions/17296416
复制相似问题