Johtaja - ymmärrätkö mikä on API-ekosysteemi ja mitä automaatio IT-infrassa tarkoittaa? Paras tapa kasvattaa ymmärrystä on opiskella vähän. Meistä johtajista ei varmaan tule firmojemme johtavia verkkoautomaatio-ohjelmoijia, mutta on tärkeää ymmärtää perusteet. Mihin ohjelmointi pystyy - niin hyvässä kuin pahassa. Python on yksi yleisimmin käytetyistä verkkoautomaation ohjelmointikielistä. Se leviää kovaa vauhtia ja siihen kehitetään kaiken aikaa kirjastoja, joilla voi tehdä monia asioita tehokkaasti. Peruskurssin ja sen sisältämien oikeiden, hyvin yksinkertaisien harjoitustehtävien kautta silmäsi aukeaa, mihin kaikkeen se pystyykään kokeneen ohjelmoijan käsissä.
Opiskellessani Juniperin Mist -ratkaisua vähän väliä tuli vastaan API-käsite (application programming interface) ja esimerkkejä, mitä kaikkea sen kautta voi tehdä. Mistin hallintajärjestelmä on rakennettu natiivisti pilveen, josta asiakkaat tai palveluntarjoajat heidän puolestaan käyttävät sitä verkkoympäristön operointiin. Palvelua käytetään kuten mitä tahansa SaaS-palvelua. Sitä ohjataan täysin APIn kautta ja myös sen oma graafinen käyttöliittymä (GUI) on toteutettu saman APIn kautta. Tämän vuoksi se voidaan integroida mihin tahansa toiseen järjestelmään, josta voidaan tehdä kaikki käyttöönottoon ja operointiin vaadittavat asiat.
Kursseilla näytettiin esimerkkejä, miten lyhyellä skriptillä provisioidaan 15 minuutissa 500 myymälän wifi-verkko. Ajattele - 15 minuuttia siihen, mihin jollakin voi mennä 100 tuntia kliksuttelemalla graafista hallintaliittymää.
Kiinnostuin lisää - pakko ymmärtää tätä paremmin, jotta ymmärtää mihin kaikkeen se taipuu ja ennenkaikkea - mitä taitoja tulevaisuuden verkkointegraattori tarvitsee ollakseen relevantti asiakkailleen.
Etsin verkosta kursseja ja päädyin Fitech-sivujen kautta Lappeenrannan teknillisen yliopiston ohjelmoinnin perusteet Python-kurssille.
Ohjelmointia oppii vain ohjelmoimalla ja sen voiman näkee tekemällä yksinkertaisia skriptejä. Ohjelmointi on avain automaatioon. Jos osaat käskeä skriptin tekemään yhden kerran yksinkertaisen tehtävän on sen käskyttäminen tekemään sama 500 kertaa todella yksinkertaista.
Pythonissa on lukuisia kirjastoja, valmiita moduleita, joissa on hyvinkin monimutkaisia rutiineja, kuten esimerkiksi RestAPI-kutsuihin rakennettu requests-kirjasto. Oheinen esimerkki osoittaa miten lyhyellä scriptillä voidaan hakea tietoa APIn kautta. Tämä hakee yrityksen nimen y-tunnuksen perusteella PRH:n avoimen rajapinnan kautta. Parilla lisärivillä se hakisi 10000 yrityksen nimet, jos meillä olisi y-tunnukset listassa.
import requests
ytun = "3323325-7"
url = 'https://avoindata.prh.fi/bis/v1/'+ytun
response = requests.get(url)
if (response.status_code == 200):
res = response.json()
info = res['results'][0]
print("Yrityksen nimi on:",info["name"])
else:
print(f"Virhekoodi: {response.status_code}, Ei yritystä tällä y-tunnuksella")
APIen avulla integroidaan järjestelmiä toisiinsa ja automatisoidaan yhden järjestelmän tehtäviä. APIen käyttö on valtava mahdollisuus josta on toki puhuttu jo parikymmentä vuotta ja joka on arkipäivää normaaleissa sovelluksissa. IT-infran puolella sen mahdollisuudet ovat vielä laajalti käyttämättä. Osittain tämä johtuu ammattilaisten pelosta oman roolinsa suhteen - jos olet ollut komentoriviguru viimeiset 20 vuotta, siirtyminen ohjelmointiin voi olla pitkä loikka. Mutta yhtä lailla tämä johtuu minun ja sinun tietämättömyydestä. Jos emme ymmärrä, miten työn tekemistä voisi tehostaa automaation kautta, emme sitä voi myöskään vaatia. Tämän vuoksi kehoitan kaikkia IT-infran johtotehtävissä olevia tekemään ainakin se peruskurssi. API-ekonomia kun on tullut jäädäkseen myös IT-infran puolella.
Kirjoittaja on Reformo Networksin toimitusjohtaja