1. 编写python 自动化运维脚本,并上传到虚拟机中 2. 使用python脚本重启网络服务 3.使用python 测试网络连通性
时间: 2024-10-24 07:05:43 浏览: 31
编写Python自动化运维脚本并上传到虚拟机中:
1. 首先,你需要熟悉Python的基本语法和一些常用的运维工具库,如`paramiko`用于SSH远程连接,`subprocess`用于执行系统命令等。
```python
import paramiko
# 创建SSH客户端
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect('虚拟机IP', username='用户名', password='密码')
# 通过SCP将脚本上传到虚拟机
sftp = client.open_sftp()
local_script_path = 'your/local/script.py'
remote_script_path = '/path/to/remote/script.py'
sftp.put(local_script_path, remote_script_path)
sftp.close()
# 关闭SSH连接
client.close()
```
使用Python脚本重启网络服务:
```python
import subprocess
def restart_network_service(service_name):
command = f'sudo systemctl restart {service_name}'
subprocess.call(command, shell=True)
# 示例中,假设你想重启名为"network.service"的服务
restart_network_service('network.service')
```
测试网络连通性:
```python
import socket
def check_network_connection(host, port=80):
try:
socket.create_connection((host, port))
print(f"Host {host} is reachable")
except (ConnectionRefusedError, ConnectionError) as e:
print(f"Host {host} is not reachable: {str(e)}")
# 检测特定主机的网络连接
check_network_connection('www.google.com')
```
阅读全文