Automation Lab 4 : Backup config multiple device

 LAB 4

Script yang kita buat sebelumnya hanya bisa membackup konfigurasi pada satu device saja. Untuk melakukan backup konfigurasi pada banyak device sekaligus, kita harus melakukan sedikit modifikasi script. Berikut topologi yang kita gunakan.




Agarseluruh device bisa di automasi, kita harus menambahkan link management ke ubuntu, selanjutnya kita buat script python untuk backup konfigurasi pada banyak device menggunakan paramiko.

Ubuntu

root@NetworkAutomation-1:~#nano backupmultiple.py 
root@NetworkAutomation1:~# cat backupmultiple.py 
import paramiko import time 

ip_list = ["192.168.10.2","192.168.10.3", 
 "192.168.10.4","192.168.10.5"] 
username = "cisco" 
password = "cisco123" 

ssh_client = paramiko.SSHClient() ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 

for ip_address in ip_list: 
ssh_client.connect(hostname=ip_address, 
 username=username, 
 password=password) 

print "Success login to {0}".format(ip_address) 
conn = ssh_client.invoke_shell()

conn.send("terminal length 0\n") 
conn.send("show run\n") 
time.sleep(4) 
output = conn.recv(65535) 
output_file = open("{0}.cfg".format(ip_address), "w") 
output_file.write(output) output_file.close() 
print "Config in {0} saved!!\n".format(ip_address) 

ssh_client.close()

Pada script diatas kita hanya menambahkan list IP Address dari seluruh router dan melakukan looping di list tersebut. Selanjutnya kita memindahkan seluruh script, yaitu pada saat mulai melakukan koneksi ssh, kedalam blok for.

Sekarang kita coba jalankan script diatas

Ubuntu

root@NetworkAutomation-1:~# python backupmultiple.py 
Success login to 192.168.10.2 
Config in 192.168.10.2 saved!! 

Success login to 
192.168.10.3 Config in 
192.168.10.3 saved!! 

Success login to 
192.168.10.4 Config in 
192.168.10.4 saved!! 

Success login to 
192.168.10.5 Config in 
192.168.10.5 saved!!

Oke konfigurasi pada seluruh device telah terbackup, kita coba pastikan.

Ubuntu

root@NetworkAutomation-1:~# ls | grep .cfg 
192.168.10.2.cfg 
192.168.10.3. cfg 
192.168.10.4. cfg 
192.168.10.5. cfg

Perhatikan bahwa kita sudah memiliki 4 file .cfg, sesuai dengan jumlah router yang kita miliki. Kita coba lihat isi dari salah satu file tersebut.

Ubuntu

root@NetworkAutomation-1:~# more 192.168.10.5.cfg 
R4#terminal length 0 
R4#showrun 
Building configuration... 

Current configuration : 1222 bytes 

version 12.4 
service timestamps debug 
datetime msec service timestamps 
log datetime msec no service 
password-encryption 

hostname R4 

boot-start-marker 
boot-end-marker 
--More--(19%) 

Comments