Troubleshooten met een tijdmachine!?

Wie heeft er niet eens een script vakkundig om zeep geholpen met het toevoegen van een "kleine verbetering"?
Na uren troubleshooten toch maar een oude versie uit de back-up restoren omdat je niet meer kunt terugvinden wat er ook alweer precies gewijzigd was?

Zou het niet geweldig zijn als we hiervoor een tijdmachine zouden kunnen gebruiken?

Versiebeheer.. Gaap!?

Goed nieuws want deze tijdmachines zijn er al jaren en noemen we in goed Nederlands een versie beheersysteem ;-)
In dit artikel wil ik je laten zien dat je geen softwareontwikkelaar hoeft te zijn om toch voordeel te hebben van een versie beheersysteem.

Versiebeheer is natuurlijk niets nieuws, de meeste mensen komen ermee in aanraking op het moment dat ze met documenten in Sharepoint of Google Docs gaan werken.

Voor software ontwikkelaars is versiebeheer echter een essentieel onderdeel van het werk en met het oog op trends zoals DevOps en IaaC denk ik dat het slechts een kwestie van tijd is voordat dit ook een onmisbaar stuk gereedschap gaat worden van de gemiddelde IT professional.

Steeds meer (IT beheer) software biedt de mogelijkheid voor integratie en automation en vaak is dit alleen mogelijk door het toepassen van regels code.
Versie beheersystemen kunnen helpen hier goed mee om te gaan.
De grootste voordelen zijn:

  • Makkelijk teruggaan in de tijd naar een oudere (werkende) versie;
  • Voorkomen dat er in oude versies wordt gewerkt;
  • Inzicht in welke wijzigingen wanneer zijn doorgevoerd.

En last but zeker not least, versie beheer maakt een einde aan professionele bestandsnamen zoals Create-Aduser-v4_Fixed-MailBoxIssue_New_THIS-ONE-WORKS.ps1

Git

Wie versiebeheer zegt in software land, zegt Git. Git is een open source versie beheer systeem dat bedacht is door dè Linus Torvalds

In de meest simpele vorm kun je Git zien als een tabel waarin samen met een timestamp een overzicht van wijzigingen wordt weergegeven:

En wie is er tijdens de dagelijkse Google zoektochten naar een oplossing niet eens op Github terecht gekomen? Github is in 2016 door Microsoft aangekocht en op dit moment een van de meest populaire Cloud oplossing voor het samen werken aan software. Vrijwel ieder open source project maakt hier gebruik van.

Een van de grootste voordelen van Github is dat je op een gestructureerde manier een kopie kunt maken van een bestaand (werkend) project en de wijzigingen kunt integreren wanneer je er zeker van bent dat de wijzigingen geen problemen veroorzaken.

Praktijkvoorbeeld

Het is makkelijk om overrompeld te worden door Git. Zoals een echte IT-oplossing betaamd komen hier namelijk ook de nodige nieuwe gewichtige termen bij kijken zoals bijvoorbeeld forks en pull requests.

Daarom zal ik aan de hand van een concreet voorbeeld laten zien wat de toegevoegde waarde kan zijn:

Stel we hebben een opdracht gekregen voor het aanmaken van een subfolder genaamd OfficeAutoSave in de homefolder bij alle gebruikers accounts van een klant.

Na wat Googlen en testen hebben we een script gemaakt wat we hiervoor kunnen gebruiken:

Daarna krijgen we een nieuwe opdracht:

Omdat er problemen zijn met NTFS-rechten willen we graag een overzicht van de mapnaam inclusief NTFS eigenaar van iedere gebruiker.

Hiervoor passen we in het script regel 2 en 8 aan en slaan per ongeluk het bestand op onder dezelfde naam:

Met het overzicht kunnen we het probleem oplossen. We krijgen nu het verzoek om voor een andere map ook een aantal subfolders aan te maken. Echter willen we niet het wiel opnieuw uitvinden maar het script herstellen naar de oorspronkelijke staat.

Dit is het moment waarop we kunnen terugvallen op Git. In het screenshot hieronder zie je aan de linkerkant een overzicht van de zogenaamde commits. Dit zijn punten waarop Git een bestand heeft opgeslagen als een nieuwe revisie:

Aan de rechterkant kun je per revisie zien wat er precies is gewijzigd in de kleuren rood en groen. Je kunt je nu wel voorstellen hoeveel tijd het kan opleveren als je voortaan zo snel je wijzigingen kunt terugzoeken!

IT Toolbox

Persoonlijk denk ik dat dit een essentiële tool wordt voor iedere IT-professional, iets wat nu al het geval is voor elke software ontwikkelaar.

Hopelijk heb je door dit artikel iets meer inzicht gekregen in de kracht van een versiebeheer systeem zoals Git en is dit het startpunt voor het leren van een nieuwe vaardigheid!

 


Systeembeheerder 2.0

Systeembeheerder met uitsterven bedreigd?

Het zijn roerige tijden voor de klassieke systeembeheerder, innovaties, complexiteit en nieuwe trends volgen elkaar in rap tempo op.
Eén van de resultaten hiervan is dat de IT als dienst steeds meer wordt “uitgehold”. Enkele voorbeelden hiervan zijn trends als Bring Your Own Device (BYOD) aan de voorkant en het toenemend aantal Cloud diensten aan de achterkant. De digitalisering van de samenleving heeft ervoor gezorgd dat gebruikers van IT middelen steeds assertiever zijn geworden en steeds vaker zélf wil bepalen waarmee men wil werken.

Met BYOD kan men hierop inspelen, de organisatie laat zelf hun medewerker zijn favoriete apparatuur aanschaffen, gebruiken en beheren. Vervolgens wordt op deze apparatuur de IT als dienst afgenomen (denk aan toegankelijk maken van applicaties en data, ongeacht welke apparatuur). De bescherming van deze data vind niet meer plaats op de apparatuur, maar vanuit de backend.

Als gevolg hiervan wordt er steeds minder gebruik gemaakt van de diensten van werkplek beheer. Tegelijkertijd worden aan de achterkant steeds meer traditionele diensten aangeboden als Cloud diensten waarbij wesoftware, Back-up, en zelfs hele virtuele Infrastructuren kunnen afnemen! Deze kunnen vaak veel efficiënter en kosten effectiever worden afgenomen. Als organisatie betaal je na gebruik Deze trend wordt versneld doordat deze diensten en hun vereisten de laatste jaren steeds meer volwassen zijn geworden en de mogelijkheden laagdrempeliger

Outsourcing

De gevolgen die de huidige systeembeheerder ervaart is dat server en applicatie beheer binnen de organisatie steeds meer bij Cloud leveranciers komen te liggen. Er vanuit de systeembeheerder verwacht wordt meer regie te houden dan beheren van de IT omgeving.

Daarnaast is voor veel organisaties de IT dusdanig complex en bedrijf kritisch geworden dat het voor steeds meer IT beheerders niet meer mogelijk is om alle details te beheersen.

Ook op dit vlak wordt er vaak een beroep gedaan op een externe IT dienstverlener die wél over de juiste specialistische kennis beschikt.

Dit zijn een aantal voorbeelden van nieuwe ontwikkelingen die ervoor zorgen dat de rol van de systeembeheerder flink gaat veranderen. Het technische en haast ambachtelijke van de oude vertrouwde systeem beheerder zal onvermijdelijk gaan verdwijnen.

Het zal steeds minder belangrijk worden of een systeem beheerder alle vinkjes van de back-up applicatie te kennen maar zich meer moeten richten op functioneel effectief inzetten van IT.

Denk hierbij aan de functionele wensen van collega’s in het CRM pakket of details van het Service Level contract met de Cloud leverancier.

Een sleutel rol

De behoefte aan technische expertise in een organisatie zal afnemen. Hiervoor in de plaats komen nieuwe verantwoordelijkheden waarbij het accent komt te liggen op functioneel vlak en het bewaken van onderhoudscontracten. De regisseur!

De IT zelf zal dus steeds meer als een dienst afgenomen worden, op technisch vlak zal de functie minder uitdagend worden maar dit biedt ook een enorme kans.

De nieuwe systeembeheerder 2.0 zal de sleutel zijn tot het effectief inzetten van IT voor de business. Hier ligt namelijk de cruciale rol om de behoefte en wensen van de business naar de IT partner(s).