Я вижу здесь 2 основных строительных блока:
Вам необходимо убедиться, что SSH включен для удаленного доступа (он может быть отключен по умолчанию на сервере EXSi. Включение можетчерез SDK)
Вам понадобится Python SSH-клиент для подключения через SSH и выполнения удаленных команд
IЯ являюсь автором пакета Python vmwc (высокоуровневый клиент VMware SDK на основе pyvmomi
).Объединение его с библиотекой SSH, такой как paramiko
, даст вам простое решение.
Установка
pip install vmwc paramiko
Использование:
#!/usr/bin/env python
from vmwc import VMWareClient
import paramiko
def main():
host = '192.168.1.1'
username = '<username>'
password = '<password>'
remote_ssh_command = 'touch /tmp/hello-world' # Your remote command
with VMWareClient(host, username, password) as client:
client.enable_ssh()
ssh = paramiko.SSHClient()
ssh.connect(host, username=username, password=password)
ssh.exec_command(remote_ssh_command)
client.disable_ssh() # optional in case you want to close the ssh access
if __name__ == '__main__':
main()