0% menganggap dokumen ini bermanfaat (0 suara)
47 tayangan

Modul Network Automation Python

Diunggah oleh

Adit 27
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
47 tayangan

Modul Network Automation Python

Diunggah oleh

Adit 27
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 35

Network Automation With Python

Jonggol It Bootcamp 2019

Midzan Yunus Aldhian


almizanyunusk@gmail.com
Python Introduction
Python Founder
Python diciptakan oleh Guido van Rossum pertama kali
di Centrum Wiskunde & Informatica (CWI) di Belanda
pada awal tahun 1990-an.

Guido van Rossum menciptakan python dari sebuah


bahasa scripting yang pernah dia bantu rancang
sebelumnya, ABC.

Nama python sendiri tidak berasal dari nama ular yang


kita kenal. Guido adalah penggemar grup komedi Inggris
bernama Monty Python. Ia kemudian menamai bahasa
ciptaannya dengan nama Python
Fitur Python Terdaftar
• sederhana: sintaks menggunakan Bahasa yg mudah dipahami dengan Bahasa
inggris dan Bahasa yang cukup sering di pakai dan populer

• Open Source : Bahasa yang kuat dan gratis bagi semua orang untuk
menggunakan dan mengubah sesuai kebutuhan.

• Being Embeddable & Extensible: Python dapat memiliki cuplikan bahasa lain di
dalamnya untuk melakukan fungsi tertentu.

• interpreted : Kekhawatiran tugas memori besar dan tugas CPU berat lainnya
diatasi oleh Python sendiri membuat Anda hanya khawatir tentang pengkodean.

Portable : dapat digunakan di berbagai platfrom hardware ,os,dan database


Opportunity of Learn Python :

• Data Scientist
• Machine Learning
• Internet of Things
• Web Development
• Data Visualization
• Automation
Python Basic
Variable = 5 #Variabel dalam tempat penyimpanan sederhana untuk
menyimpan value data
variable = "John"

#Sebuah set atau beberapa data yang berada di dalam SQUENCE DATA
sebuah variabel
buah-buahan = “apel”, ”pisang”, ”anggur”

Element
cars = "Ford", "Volvo", "BMW" #Setiap elemen adalah urutan dari posisi atau indeks sequence data
cars[0] = "Toyota“
## RULE variabel Python:

variabel harus dimulai dengan huruf atau karakter (_)

variabel tidak dapat dimulai dengan angka

variabel hanya dapat berisi karakter (A-z, 0-9, dan _)

variabel peka huruf besar-kecil (usia, Usia dan AGE adalah tiga
variabel berbeda)
Numeric Data
Ada tiga jenis numerik dalam Python:
•int
•float
•complex

#Int
x=1 # int, atau integer, adalah bilangan bulat, positif atau negatif, tanpa desimal, dengan panjang tak terbatas.

# float
y = 2.8 # Float, adalah angka, positif atau negatif, yang mengandung satu atau lebih desimal.

# Complex
z = 1j #Compleks, ditulis dengan "j" sebagai bagian imajiner
Type Conversion
kita dapat mengonversi dari satu jenis data ke jenis lainnya dengan int(), float(), and complex() methods:

x = 1 # int
y = 2.8 # float
z = 1j # complex

#convert from int to float:


a = float(x)

#convert from float to int:


b = int(y)

#convert from int to complex:


c = complex(x)
List Data
List adalah beberapa data yang berada dalam variabel
yang sama.sekaligus dengan jenis data yang berbeda

List dapat dihapus, artinya Anda dapat mengubah data


yang tersedia di dalamnya

Daftar didefinisikan menggunakan metode a = list () atau


menggunakan a = [] di mana ‘a’ adalah nama daftar

thislist = ["apple", "banana", "cherry"]


print(thislist)
Tuple Data
Tuple dalam Python sama dengan list.

immutable , Itu berarti bahwa setelah Anda


mendeklarasikan tuple, Anda tidak dapat menambah,
menghapus, atau memperbarui tuple.

Tuple dalam Python ditulis a = () atau a = tuple () di mana


‘a’ adalah nama tuple

thistuple = ("apple", "banana", "cherry")


print(thistuple)
String Data

String adalah parameter yang berisi data kata atau huruf

String ditulis dalam tanda kutip tunggal (‘’) tunggal ("").

print("Hello")
print('Hello')
Dictionary
Dictionary merupakan salah satu type data pada python
yang berisi pasangan key dan value.

#Dictionary type
dict = {"name" : "John",
"age" :36
}

Untuk mengakses data pada dictionary, kita tidak


menggukana indexing seperti list, namun kita bisa
menggunakan key.

x = dict[“name”]
Set Data
set adalah koleksi yang tidak diurut dan tidak diindeks.
Dalam set, data ditulis dengan sebuah operasi set

a = {1,2,3,4,4,4} #Result
b = {3,4,5,6}
print(a,b)
{1,2,3,4} {3,4,5,6}

print(a & b)
{3,4}

print(a-b)
{1,2}

print(a^b)
{1,2,5,6}
Operations in Sets Data Types
Operators in python
Operator digunakan untuk melakukan operasi pada variabel
dan nilai.

Python membagi operator dalam kelompok-kelompok •Arithmetic operators


berikut:
•Assignment operators

•Comparison operators

•Logical operators

•Identity operators

•Membership operators

•Bitwise operators
Python Arithmetic Operators
Python Assignment Operators
Python Comparison Operators
Python Logical Operators

Python Identity Operators


Python Membership Operators

Python Bitwise Operators


Python If ... Elif…Else
If, elif, dan else akan mempengaruhi jalannya suatu program, jika paramter pada if bernilai benar,
maka blok code dibawah if akan dieksekusi.

Jika parameter pada if bernilai salah dan elif bernilai benar, maka blok code dibawah elif akan dieksekusi.
Dan jika ternyata parameter pada if dan elif bernilai salah, maka blok code pada else akan dieksekusi

>>> x = 5
>>>
>>> if x < 10:
... print "x kurang dari 10"
... elif x == 10:
... print "x adalah 10"
... else:
... print "x lebih dari 10“
...
x kurang dari 10
Break & Continue
Jika suatu program mencapai break, maka program tersebut akan berhenti melakukan
perulangan.

Dan jika suatu program mencapai continue, maka program akan skip dan melakukan
perulangan pada nilai selanjutnya

>>> for x in range(10):


>>> for x in range(10): ... if x == 4:
... if x == 4: ... continue
... break ... print x
... print x ...
... 0
0 1
1 2
2 3
3 …
9 >>>
Python Looping
Looping digunakan untuk melakukan suatu pekerjaan
dengan perulangan.

Loop di Python atau bahasa lain mimiliki 2 jenis TEST :

• Pre-Test Loops: test kondisi kemudian >>> eksekusi


statement

• Post Test Loops: eksekusi statement kemudian >>>


membaca kondisi
Loop Commands:

•for loops

fruits = ["apple", "banana", "cherry"]


for x in fruits:
print(x)

•while loops

i = 1
while i < 6:
print(i)
i += 1
Python Functions
Fungsi biasanya digunakan untuk menghemat suatu kode, daripada menulis kode yang sama beberapa kali,
kita bisa membuat sebuah fungsi, dimana fungsi itu akan kita panggil pada beberapa bagian di aplikasi yang
kita buat.

def my_function(): #Dalam Python fungsi didefinisikan menggunakan kata


print("Hello from a function") kunci def

def my_function():
print("Hello from a function") #Untuk memanggil suatu fungsi, gunakan nama fungsi yang
diikuti oleh tanda kurung
my_function()

def my_function(fname): #Parameter hanya dapat diteruskan ke fungsi sebagai


print(fname + " Refsnes") argumen.
my_function("Emil")
my_function("Tobias")
my_function("Linus")
Python Arrays
Array digunakan untuk menyimpan beberapa value dalam satu variabel tunggal:

Contoh menyimpan mobil dalam variabel tunggal dapat terlihat seperti ini:

car1 = "Ford"
car2 = "Volvo"
car3 = "BMW“

Namun, bagaimana jika Anda tidak memiliki 3 mobil, tetapi 300?

Array dapat menyimpan banyak nilai dengan satu nama, dan Anda dapat mengakses nilai dengan merujuk ke
posisi atau nomor indeks.

Contoh

cars = ["Ford", "Volvo", "BMW"]


Array Methods
SSH and Configuration script
Cisco
import paramiko
import time

ip_address = '192.168.1.3'
username = 'cisco'
password = 'cisco'

ssh_client = paramiko.SSHClient()
ssh_client.set_missing_key_host_policy(paramiko.AutoAddPolicy())
ssh_client.connect(hostname=ip_address,username=username,password=password)

print("success login to {}".format(ip_address))


conn = ssh_client.invoke_shell()

conn.send("conf t\n")
conn.send("int lo0\n")
conn.send("ip add 10.1.1.1 255.255.255.255 \n)
time sleep(1)

output = conn.recv(65535)
print(output.decode())

ssh_client.cloce
SSH and Configuration script
Mikrotik
import paramiko
import time

ip_address = '192.168.1.2'
username = 'admin'
password = ''

ssh_client = paramiko.SSHClient()
ssh_client.set_missing_host_policy(paramiko.AutoAddPolicy())
ssh_client.connect(hostname=ip_address,username=username,password=passwors)

print("success login to {}".format(ip_address))

ssh_client.exec_command("interface bridge add name=loopback0\n")


ssh_client.exec_command("ip address add address 10.2.2.1/32 interface=loopback0\n")

ssh_client.close
SSH and Configuration script
Dual vendor
import paramiko
import time

device = [
{
'ip_address' = '192.168.1.3',
'vendor : cisco'
'username' = 'cisco',
'password' = 'cisco'
}
{
'ip_address' = '192.168.1.2',
'vendor : mikrotik'
'username' = 'admin',
'password' = ''
}
]

ssh_client = paramiko.SSHClient()
sh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy))
for device in devices:
ssh.client.connect(hostname=device['ip_address'],username=device['username'],password=device['passw
ord'])

if device['vendor'] == 'cisco':
conn = ssh_client.invoke.shell()

conn.send("conf t\n")
conn.send("int lo0\n")
conn.send("ip add 10.1.1.1.3 255.255.255.255\n")
(time.sleep1)

output = conn.recv(65535)
print(output.decode())
else:
ssh_client.exec_command('interface bridge add name=loopback0\n')
ssh_client.exec_command('ip address add address 10.2.2.1/32 interface=loopback0\n')

ssh_client.close

Anda mungkin juga menyukai