说实话,跳板机给研发的日常工作添加了些许麻烦。 幸好 fabric 提供了穿越跳板机的功能,使跳板机不再影响我们的工作。
$ fab --version
Fabric 1.8.1
Paramiko 1.12.0
# 跳板机
env.gateway = 'lisi@192.168.100.123'
# 目标服务器
env.hosts = ['foo@111.111.111.111',
'bar@111.111.111.112',
'bar2@122.123.124.139',
]
env.passwords = {
'lisi@192.168.100.123:22': 'pssword3', # 跳板机密码
'foo@111.111.111.111:22': 'pssword4', # 目标服务器密码
'bar@111.111.111.112:22': 'pssword5', # 目标服务器密码
'bar2@122.123.124.139:22': 'pssword6', # 目标服务器密码
}
@task
@hosts(env.hosts)
def foobar():
pass
穿越跳板机的原理是: SSH 隧道技术 。
Comments