<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Azure Archive - CEOsBay</title>
	<atom:link href="https://ceosbay.com/tag/azure/feed/" rel="self" type="application/rss+xml" />
	<link>https://ceosbay.com/tag/azure/</link>
	<description>It&#039;s all about Tech</description>
	<lastBuildDate>Sun, 16 Apr 2023 10:40:08 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.1</generator>

<image>
	<url>https://i0.wp.com/ceosbay.com/wp-content/uploads/2022/11/image.jpg?fit=32%2C32&#038;ssl=1</url>
	<title>Azure Archive - CEOsBay</title>
	<link>https://ceosbay.com/tag/azure/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">211828771</site>	<item>
		<title>Kubernetes &#8211; Die Kunst des Container-Orchestrierens</title>
		<link>https://ceosbay.com/2022/12/24/erklaerung-kubernetes/</link>
					<comments>https://ceosbay.com/2022/12/24/erklaerung-kubernetes/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Sat, 24 Dec 2022 19:23:00 +0000</pubDate>
				<category><![CDATA[Cloud]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Container]]></category>
		<category><![CDATA[Control]]></category>
		<category><![CDATA[CRI]]></category>
		<category><![CDATA[Docker]]></category>
		<category><![CDATA[Fazit]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Hat]]></category>
		<category><![CDATA[Interface]]></category>
		<category><![CDATA[K8]]></category>
		<category><![CDATA[Kubernetes]]></category>
		<category><![CDATA[Maschinen]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Node]]></category>
		<category><![CDATA[Open]]></category>
		<category><![CDATA[Orchestrierung]]></category>
		<category><![CDATA[Plattform]]></category>
		<category><![CDATA[Runtime]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Shift]]></category>
		<category><![CDATA[Source]]></category>
		<category><![CDATA[Virtuelle]]></category>
		<category><![CDATA[Virtuelle Maschinen]]></category>
		<category><![CDATA[VM]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=1037</guid>

					<description><![CDATA[<p>Kubernetes &#8211; auch als K8s bezeichnet, ist ein von Google entwickeltes Open-Source-System zur Verwaltung von Container-Anwendungen. In diesem Umfeld wird die Verwaltung der technischen Container-Infrastruktur auch als Orchestrierung bezeichnet. Was sind Container? Container sind eine &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/12/24/erklaerung-kubernetes/">Kubernetes &#8211; Die Kunst des Container-Orchestrierens</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Kubernetes &#8211; auch als K8s bezeichnet, ist ein von Google entwickeltes <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/" target="_blank" rel="noreferrer noopener">Open-Source</a>-System zur Verwaltung von Container-Anwendungen. In diesem Umfeld wird die Verwaltung der technischen Container-Infrastruktur auch als Orchestrierung bezeichnet.</p>



<h3 class="wp-block-heading">Was sind Container?</h3>



<p>Container sind eine natürliche Weiterentwicklung <a href="https://ceosbay.com/2022/11/10/erklaerung-virtuelle-maschine/" target="_blank" rel="noreferrer noopener">virtueller Maschinen</a> zur effizienten Nutzung verfügbarer Hardware-Ressourcen. Da ein Container in vielen Fällen lediglich einen kleinen Teil einer größeren Anwendung enthält (Microservices), braucht es oftmals viele Container, um eine große Anwendung vollständig bereitzustellen. Siehe hierzu auch meinen Beitrag über <a href="https://ceosbay.com/2022/10/28/laufzeitumgebung-fuer-softwareanwendungen-docker/" target="_blank" rel="noreferrer noopener">Docker</a>. Während <a href="https://ceosbay.com/2022/10/28/laufzeitumgebung-fuer-softwareanwendungen-docker/" target="_blank" rel="noreferrer noopener">Docker</a> eine Container-Laufzeitumgebung ist, ist Kubernetes eine Plattform für die Ausführung und Verwaltung von Containern aus vielen Container-Laufzeitsystemen. Es unterstützt zahlreiche Container-Laufzeiten, darunter <a href="https://ceosbay.com/2022/10/28/laufzeitumgebung-fuer-softwareanwendungen-docker/" target="_blank" rel="noreferrer noopener">Docker</a>, containerd, CRI-O und jede Implementierung des Kubernetes CRI (Container Runtime Interface).</p>



<p>Im Betrieb von Container-Anwendungen spielen Verwaltungsaufgaben wie die Bereitstellung, die auf die Anfragelast bezogene automatische Skalierung, sowie das Monitoring der zum Betrieb notwendigen Anwendungscontainer und ihrer Infrastruktur eine wichtige Rolle. Es dient als Werkzeug zur Unterstützung dieser Orchestrierungsaufgaben.</p>



<p>Eingesetzt wird Kubernetes dabei bereits in kleinen und einfachen Containerumgebungen bis hin zu komplexen und verteilten Anwendungsfällen großer Technologieanbieter und ihrer containerbasierten <a href="https://ceosbay.com/2022/11/30/erklaerung-cloud-computing/" target="_blank" rel="noreferrer noopener">Cloud</a>-Produkte. Einige Beispiele sind hier: Microsofts Azure, IBM <a href="https://ceosbay.com/2022/11/30/erklaerung-cloud-computing/" target="_blank" rel="noreferrer noopener">Cloud</a>, Red Hat OpenShift, Amazons EKS, Googles Kubernetes Engine und Oracles OCI. Die bekannte Container-Technologie <a href="https://ceosbay.com/2022/10/28/laufzeitumgebung-fuer-softwareanwendungen-docker/" target="_blank" rel="noreferrer noopener">Docker</a> wird ebenfalls unterstützt.</p>



<h3 class="wp-block-heading">Kurze Zeitreise</h3>



<p>Kubernetes (Altgriechisch für „Steuermann“) wurde ursprünglich von Joe Beda, Brendan Burns und Craig McLuckie entwickelt. Kurze Zeit später stießen weitere Google-Entwickler wie Brian Grant und Tim Hockin hinzu. 2014 stellte Google Kubernetes als <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/" target="_blank" rel="noreferrer noopener">Open-Source</a>-Projekt der Öffentlichkeit vor.</p>



<p>Version 1.0 wurde am 21. Juli 2015 veröffentlicht. Dabei wurde auch die Gründung der <a href="https://www.cncf.io" target="_blank" rel="noreferrer noopener">Cloud Native Computing Foundation</a> unter dem Dach der <a href="https://ceosbay.com/2022/11/22/erklaerung-linux/" target="_blank" rel="noreferrer noopener">Linux</a> Foundation angekündigt und Kubernetes wurde von Google an diese gespendet.</p>



<h3 class="wp-block-heading">Was kann Kubernetes?</h3>



<p>Kubernetes bietet eine Reihe von Möglichkeiten, die eine Orchestrierung von komplexen Container basierten Anwendungen unterstützt. Einige davon sind:</p>



<ul class="wp-block-list">
<li>Starten von Containern im Bedarfsfall (Ausfall bestehender Container oder hinzufügen neuer Container bei hohem Anfragevolumen).</li>



<li>Überwachung anhand definierter Faktoren, ob Container noch erwartungsgemäß funktionieren.</li>



<li>Sinnvolle Verteilung der eingehenden Anfragelast auf die einzelnen Container.</li>



<li>Unterstützung beim Wechsel auf eine neuere Anwendungsversion.</li>
</ul>



<h3 class="wp-block-heading">Wie ist Kubernetes aufgebaut?</h3>



<p>Kubernetes-Infrastrukturen können je nach Anwendungsfall hoch komplex sein. Eine Kubernetes-Installation besteht aus dem Zusammenspiel mehrerer Server. Die Server aus diesem Verbund lassen sich in zwei Kategorien einteilen: Zur ersten Kategorie gehören Server, die sich um Verwaltungsaufgaben in diesem Verbund kümmern. Sie werden als „Control Planes“ bezeichnet und führen keinen Container aus, der Teil der betriebenen Anwendung ist.</p>



<p>Die zweite Kategorie, die anwendungsbezogenen Container, werden auf den „Worker Nodes“ ausgeführt. Sie haben keine Verwaltungsaufgaben, sondern dienen lediglich dazu, die eigentliche Arbeitslast der Anwendung abzuarbeiten. Die notwendige Anzahl und Leistung dieser „Worker Node Server“ ermittelt sich anhand der Ressourcenanforderung der Container. Je ressourcenintensiver die Container sind, desto mehr oder performantere Worker Nodes werden benötigt.</p>



<p>Alle Aufgaben eines Kubernetes-Clusters werden redundant auf mehreren Servern betrieben, um die Hochverfügbarkeit auch im Störungsfall aufrechtzuerhalten.</p>



<h3 class="wp-block-heading">Fazit</h3>



<p>Kubernetes bietet als <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/" target="_blank" rel="noreferrer noopener">Open-Source</a>-System zur Orchestrierung von Containern viele Vorteile. Besonders lohnt sich der Einsatz bei umfangreichen und hochskalierbaren <a href="https://ceosbay.com/2022/11/30/erklaerung-cloud-computing/" target="_blank" rel="noreferrer noopener">Cloud</a>-Anwendungen. Wenn man es einsetzt, kommt man schnell zu dem Punkt, an dem es komplex und aufwändig wird. Für ein effektives Management der Plattform brauchen Unternehmen Mitarbeitende mit Spezialwissen. Da diese Experten am Markt schwer zu finden sind und sich der Einsatz meist schon aus Kosten- und Rentabilitätsgründen nicht lohnt, lagern viele Unternehmen, die Kubernetes einsetzen, das Management und den Betrieb an diverse Managed <a href="https://ceosbay.com/2022/11/30/erklaerung-cloud-computing/" target="_blank" rel="noreferrer noopener">Cloud</a> Solution Provider aus. Man sollte aber nicht unbeachtet lassen, dass sich der Einsatz von Kubernetes nicht in jedem Fall lohnt. Letztendlich ist es immer eine Abwägung der Kosten und Aufwände gegen den Ertrag, den man sich durch den Einsatz erhofft.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/12/24/erklaerung-kubernetes/">Kubernetes &#8211; Die Kunst des Container-Orchestrierens</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2022/12/24/erklaerung-kubernetes/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1037</post-id>	</item>
		<item>
		<title>JavaScript &#8211; Die Sprache für interaktive und dynamische Webanwendungen</title>
		<link>https://ceosbay.com/2022/11/12/javascript/</link>
					<comments>https://ceosbay.com/2022/11/12/javascript/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Sat, 12 Nov 2022 06:00:00 +0000</pubDate>
				<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[Acrobat]]></category>
		<category><![CDATA[Anwendungsentwicklung]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Bibliotheken]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Codestruktur]]></category>
		<category><![CDATA[Deklarativ]]></category>
		<category><![CDATA[Dojo]]></category>
		<category><![CDATA[Dynamisch]]></category>
		<category><![CDATA[Frameworks]]></category>
		<category><![CDATA[Frontend]]></category>
		<category><![CDATA[Geschichte]]></category>
		<category><![CDATA[Heute]]></category>
		<category><![CDATA[Imperativ]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Multiparadigmisch]]></category>
		<category><![CDATA[Multipragmatisch]]></category>
		<category><![CDATA[Objektorientiert]]></category>
		<category><![CDATA[OOP]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[Paradigmen]]></category>
		<category><![CDATA[Programmierer]]></category>
		<category><![CDATA[Quellcode]]></category>
		<category><![CDATA[Reac]]></category>
		<category><![CDATA[React]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Semantik]]></category>
		<category><![CDATA[Single]]></category>
		<category><![CDATA[Thread]]></category>
		<category><![CDATA[Three]]></category>
		<category><![CDATA[ThreeJs]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=510</guid>

					<description><![CDATA[<p>JavaScript ist eine der bekanntesten Skriptsprachen für Websites. Es ist eine leichtgewichtige, interpretierte und just-in-time kompilierte Software-Sprache, die erstklassige Funktionen nutzt. Viele Nicht-Browser-Umgebungen wie Adobe Acrobat, Apache CouchDB und Node.JS® nutzen JavaScript. Diese weit verbreitete &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/11/12/javascript/">JavaScript &#8211; Die Sprache für interaktive und dynamische Webanwendungen</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>JavaScript ist eine der bekanntesten Skriptsprachen für Websites. Es ist eine leichtgewichtige, interpretierte und just-in-time kompilierte Software-Sprache, die erstklassige Funktionen nutzt. Viele Nicht-Browser-Umgebungen wie Adobe Acrobat, Apache CouchDB und <a href="https://ceosbay.com/2022/11/11/node-js-mit-npm-auf-macos/">Node.JS®</a> nutzen JavaScript. Diese weit verbreitete Software-Sprache ist prototypenbasiert, deklarativ, imperativ, stark objektorientiert, single-thread, dynamisch und multiparadigmatisch. Die genannten Begriffe werden nachfolgend erklärt aber zu einem späteren Zeitpunkt in einen anderen Beitrag, bei dem ich verschiedene Paradigmen vorstelle, verschoben.</p>



<h3 class="wp-block-heading">Prototypenbasierte Programmierung</h3>



<p>Prototypenbasierte Programmierung, auch als klassenlose Objektorientierung bekannt, ist eine Form der objektorientierten Programmierung, die auf das Sprachelement der Klasse verzichtet. Objekte werden nicht durch Instanziierung (Der&nbsp;Prozess des Lesens oder des Angebens von Informationen) einer Klasse, sondern durch Klonen bereits existierender Objekte erzeugt. Bei diesem Klonen werden alle Eigenschaften (Attribute und Methoden) des Prototyp-Objektes kopiert. Sie können aber überschrieben werden, und das neue Objekt kann mit neuen Eigenschaften versehen werden. Hierzu aber in einem anderen Beitrag mehr.</p>



<h3 class="wp-block-heading">Deklarative Programmierung</h3>



<p>In der Informatik ist die deklarative Programmierung ein Programmierparadigma &#8211; ein Stil zum Aufbau der Struktur und der Elemente von Computerprogrammen -, dass die Logik einer Berechnung ausdrückt, ohne ihren Kontrollfluss zu beschreiben. Folglich wird im Quellcode festgelegt, was in welcher Reihenfolge und wie zu tun ist: „First do this and next do that / Erst dies und dann das tun“.  Ich werde dieses Thema aber noch in einem anderen Beitrag ausführlich behandeln.</p>



<h3 class="wp-block-heading">Imperative Programmierung</h3>



<p>Die Imperative Programmierung ist ein Programmierparadigma, nach dem „ein Programm aus einer Folge von Anweisungen besteht, die vorgeben, in welcher Reihenfolge was vom Computer getan werden soll. Auch dieses Thema wird später noch in einem anderen Beitrag genauer thematisiert.</p>



<h3 class="wp-block-heading">Objektorientierte Programmierung</h3>



<p>Die objektorientierte Programmierung (kurz OOP) ist ein auf dem Konzept der Objektorientierung basierendes Programmierparadigma. Die Grundidee besteht darin, die Architektur einer Software an den Grundstrukturen desjenigen Bereichs der Wirklichkeit auszurichten, der die gegebene Anwendung betrifft. Eines der wichtigsten Programmierparadigmen unserer Zeit. Ich werde noch einige Beiträge zur objektorientierten Programmierung erstellen.</p>



<h3 class="wp-block-heading">Single-thread</h3>



<p>In der Informatik bezeichnet Thread einen Ausführungsstrang oder eine Ausführungsreihenfolge in der Abarbeitung eines Programms. Ein Thread ist Teil eines Prozesses. In meiner Jugend kannte man diesen Begriff noch in Zusammenhang mit Multithreading bei Prozessoren. War damals für uns wie ein Traum. Aber auch zu diesen Begrifflichkeit in einem anderen Beitrag mehr.</p>



<h3 class="wp-block-heading">Dynamische Programmierung</h3>



<p>Die dynamische Programmierung dient zur Lösung eines Optimierungsproblems durch algorithmische Verfahren. Das Problem wird in Teilprobleme zergliedert und es werden systematisch Zwischenergebnisse gespeichert. Auch hierzu in einem späteren Beitrag mehr.</p>



<h3 class="wp-block-heading">Multiparadigmatische Programmiersprachen</h3>



<p>Eine Multiparadigmen Programmiersprache ist eine Programmiersprache, die zur Problemlösung mit verschiedenen Programmierparadigmen die geeigneten Sprachmittel besitzt.</p>



<h3 class="wp-block-heading">Java = / ≠ JavaScript</h3>



<p>Sowohl Java als auch JavaScript sind in den USA und anderen Ländern eingetragene Marken von Oracle. Sie sind aber keineswegs identisch. Obwohl sie ähnlich klingen, sind sie in Bezug auf Syntax, Semantik und Anwendung der Sprache im wirklichen Leben sehr unterschiedlich.</p>



<h3 class="wp-block-heading">Geschichte</h3>



<p>Brendan Eich (Ein Programmierer der Netscape Communication Corporation) hat JavaScript 1995 entwickelt. Offenbar brauchte er etwa 10 Tage, um Mocha zu entwickeln. Später wurde der Name der Sprache in Mona und dann in LiveScript geändert. Derzeit ist sie allgemein als JavaScript bekannt. 1996 wurde es von der ECMA übernommen, die JavaScript mit der ECMAScript Language Specification und den ECMAScript Internationalized API Spezifikationen versah. Im Jahr 2005 traten Eich und Mozilla der ECMA bei, und die JavaScript-Gemeinschaft blühte auf. Im Jahr 2016 nutzten 92 % der Websites JavaScript, von großen Tech-Giganten wie Facebook und Google bis hin zu kleinen Start-Ups, wie <a href="https://www.coezbay.com" target="_blank" rel="noreferrer noopener">meines</a>.</p>



<h3 class="wp-block-heading">Heute</h3>



<p>Derzeit wird die Sprache immer noch überall eingesetzt und ist eine der am häufigsten verwendeten clientseitigen Skriptsprachen. Von 1995 bis heute hat JavaScript einen langen Weg zurückgelegt. Heutzutage wird es innerhalb von HTML-Elementen geschrieben, um Dynamik in Webprojekten und konventionellen Desktop-Anwendungen zu ermöglichen. So ziemlich alle Echtzeit Onlinespiele beinhalten die Sprache. Viele andere Technologien wurden auf der Grundlage von JavaScript entwickelt, zum Beispiel <a href="https://ceosbay.com/2022/11/11/node-js-mit-npm-auf-macos/">NodeJS®</a> &#8211; welches ich in einem anderen Beitrag kurz angeschnitten habe, React &#8211; was ich in einem anderen Beitrag thematisieren werde. JavaScript ist zwar alt und hat eine komplexe Vergangenheit, doch genau diese Tatsache haben wir es zu verdanken, dass sie auch enorm großes Spektrum an Bibliotheken und Frameworks bietet. Hierzu nachfolgend mehr.</p>



<h3 class="wp-block-heading">JavaScript-Bibliotheken</h3>



<p><a href="https://dev.to/t/discuss"></a>Um die Programmierung zu erleichtern, gibt es, wie bereits erwähnt, Unmengen an sogenannter JavaScript-Bibliotheken und -Frameworks. Diese Bibliotheken werden verwendet, um Code für komplexere Funktionalitäten schneller schreiben zu können. Sie ermöglichen es Entwicklern, vorgefertigte Code-Snippets zu nutzen und eigene Code-Snippets für die zukünftige Verwendung zu erstellen und zu speichern. Wenn man solch eine Bibliothek für seine eigenen Routinen erstellt hat und Herr dieser Daten ist, sind auch Zeit- als auch Arbeitsersparnisse die daraus resultieren immens. Beispiele für JavaScript-Bibliotheken sind: jQuery, ReactJS, Google Polymer, Dojo-Toolkit und Three.js. Wobei Three.js eine browserübergreifende JavaScript-Bibliothek und gleichzeitig eine Anwendungsprogrammierschnittstelle zur Erstellung und Anzeige animierter 3D-Computergrafiken in einem Webbrowser mit WebGL darstellt. Letzteres ist eines meiner Lieblingsdinge, mit denen ich mich beruflich als auch privat gerne beschäftige.</p>



<h3 class="wp-block-heading">JavaScript-Frameworks</h3>



<p>JavaScript-Frameworks sind Vorlagen, die eine Codestruktur vorgeben, der man folgen kann. Dadurch wird die Entwicklung teilweise erleichtert. Doch gleichzeitig schränkt es einen auch in gewisser Weise ein, da man als Entwickler gewisse Regeln beachten muss. Beispiele für JavaScript-Frameworks sind. beispielsweise Vue.js, AngularJS und Apache Royale.</p>



<p>Übrigens: Wenn JavaScript ohne die Verwendung von Bibliotheken oder Frameworks geschrieben, wird es als „Vanilla-JavaScript“ bezeichnet.</p>



<h3 class="wp-block-heading">Clientseitiges JavaScript und serverseitiges JavaScript</h3>



<p>JavaScript kann sowohl clientseitig als auch serverseitig genutzt werden. Clientseitiges JavaScript ermöglicht die Manipulation von Browsern und Webseiten. Es führt das Skript im Browser des Nutzers aus und ist eine der häufigsten Verwendungsformen von JavaScript. Ich habe hierzu in einem anderen <a href="https://ceosbay.com/2022/10/30/aus-alt-mach-neu/">Beitrag</a> ein paar Zeilen geschrieben bzw. es findet in der Three.js Web-Anwendung statt, die im Header Bereich <a href="https://cagatayoezbay.com">meiner persönlichen Website</a> zum Einsatz kommt.</p>



<p>Serverseitiges JavaScript läuft nicht im Browser, sondern auf dem Server. Generell ist es weniger verbreitet als clientseitiges JavaScript. Ein Beispiel für ein beliebtes serverseitiges Scripting-Framework für JavaScript ist <a href="https://ceosbay.com/2022/11/11/node-js-mit-npm-auf-macos/">NodeJS®</a>.</p>



<h3 class="wp-block-heading">Fazit</h3>



<p>JavaScript ist eine der wichtigsten Programmiersprachen. Sie ist sehr dynamisch und wird sowohl in der Anwendungs-, Frontend- als auch in der Backend-Webentwicklung verwendet.</p>



<p>Angesichts der möglichen Auswirkungen auf die Geschwindigkeit und Performance der Anwendung oder Webseite ist es wichtig zu verstehen, wie JavaScript funktioniert. Anhand von Best Practices kann man lernen, effektiver zu programmieren und die Leistung seiner Anwendungen und Webseiten zu verbessern. Auch in Bezug auf SEO (Search Engine Optimization = Suchmaschinenoptimierung &#8211; Die Maßnahmen, die dazu dienen, um die Sichtbarkeit einer Webseite und ihrer Inhalte für Benutzer einer Suchmaschine bzw. die Auffindbarkeit zu erhöhen) spielt dies eine sehr große Rolle. Aber das Thema SEO werde ich in einem späteren Beitrag thematisieren.<br></p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/11/12/javascript/">JavaScript &#8211; Die Sprache für interaktive und dynamische Webanwendungen</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2022/11/12/javascript/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">510</post-id>	</item>
		<item>
		<title>Virtuelle Maschinen &#8211; Flexibilität und Effizienz durch nahtlose Systemintegration und isolierte Umgebungen</title>
		<link>https://ceosbay.com/2022/11/10/erklaerung-virtuelle-maschine/</link>
					<comments>https://ceosbay.com/2022/11/10/erklaerung-virtuelle-maschine/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Thu, 10 Nov 2022 15:07:49 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[MacOS]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Raspberry Pi]]></category>
		<category><![CDATA[Sicherheit]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Betriebssystem]]></category>
		<category><![CDATA[Client]]></category>
		<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Computer System]]></category>
		<category><![CDATA[Container]]></category>
		<category><![CDATA[CPU]]></category>
		<category><![CDATA[Docker]]></category>
		<category><![CDATA[EMC]]></category>
		<category><![CDATA[Emulator]]></category>
		<category><![CDATA[Hack]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Hypervisor]]></category>
		<category><![CDATA[Informationstechnologie]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[IT-System]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Multi-Boot]]></category>
		<category><![CDATA[Netzwerk]]></category>
		<category><![CDATA[Netzwerktechnik]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[Parallels]]></category>
		<category><![CDATA[Penetration]]></category>
		<category><![CDATA[ProxMox]]></category>
		<category><![CDATA[Prozessor]]></category>
		<category><![CDATA[Red Hat]]></category>
		<category><![CDATA[Remote]]></category>
		<category><![CDATA[Risiko]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Test]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Unix]]></category>
		<category><![CDATA[Virtualisierung]]></category>
		<category><![CDATA[Virtuelle Maschinen]]></category>
		<category><![CDATA[VMs]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=411</guid>

					<description><![CDATA[<p>Eine Virtuelle Maschine bzw. Virtuelle Maschinen (VM) ist ein (OS = Operating System) oder eine Anwendungsumgebung, die auf einem bestehenden Betriebssystem auf der Software-Ebene installiert ist und eine dedizierte Hardware ausführt. Nicht zu verwechseln mit &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/11/10/erklaerung-virtuelle-maschine/">Virtuelle Maschinen &#8211; Flexibilität und Effizienz durch nahtlose Systemintegration und isolierte Umgebungen</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Eine Virtuelle Maschine bzw. Virtuelle Maschinen (VM) ist ein (OS = Operating System) oder eine Anwendungsumgebung, die auf einem bestehenden Betriebssystem auf der Software-Ebene installiert ist und eine dedizierte Hardware ausführt. </p>



<h3 class="wp-block-heading">Nicht zu verwechseln mit einem Emulator</h3>



<p>Als Emulator wird in der Computertechnik ein System bezeichnet, das ein anderes Computer System in bestimmten Teilaspekten nachbildet. Dabei handelt es sich um keine Virtuelle Maschinen 😉</p>



<h3 class="wp-block-heading">Auch nicht zu verwechseln mit einem Simulator</h3>



<p>Ein Simulator wird dazu genutzt um eine Simulation auszuführen. Beispielsweise für die Nachbildung von realen Szenarien zum Zwecke der Ausbildung von Piloten im Flugsimulator. Auch von Ärzten und Pflegepersonal in einem Patientensimulator kommt ein Simulator zum Einsatz. Kriegs- bzw. Gefechtssimulationen bei Einsatzkräften der Polizei oder dem Militär, sind heutzutage auch schon normal. Die Simulation zur Analyse von Systemen, deren Verhalten für die theoretische, formelmäßige Behandlung zu komplex sind, finden ebenfalls Einsatz. Auch wenn diese Art von Simulation sich grundlegend von den vorher genannten unterscheidet. Und dann gibt es natürlich die Simulation in Spielen (Aber diesen Dingen bei späteren Beiträgen mehr). </p>



<h3 class="wp-block-heading">Der Hypervisor</h3>



<p>Man kann sich die Sache mit den Virtuellen Maschinen im Endeffekt so vorstellen wie einen oder mehrere Computer in einem Computer zu betreiben. Spezialisierte Software, die man als Hypervisor bezeichnet, emulieren die CPU- (Central Processing Unit = Prozessor), den Speicher-, die Festplatten-, die Sound-, Netzwerk- und andere Hardwareressourcen des Computers oder Servers vollständig und ermöglicht es virtuellen Maschinen, die Ressourcen gemeinsam zu nutzen oder aber vollkommen zu isolieren. </p>



<p>Der Hypervisor kann mehrere virtuelle Hardwareplattformen emulieren. Diese können voneinander isoliert sein, so dass virtuelle Maschinen zum Beispiel Unix-, <a href="https://ceosbay.com/2022/11/22/erklaerung-linux/" target="_blank" rel="noreferrer noopener">Linux</a>&#8211; und Windows-Betriebssysteme auf demselben zugrundeliegenden physischen Computer ausführen können. Mit der Virtualisierung kann man beispielsweise auch die Kostensenkung der IT-Infrastruktur erreichen. </p>



<p>Virtuelle Maschinen nutzen die Hardware effizienter, wodurch sich die benötigten Hardwarekomponenten, die damit verbundenen Wartungs- und Instandhaltungskosten, sowie der Energiebedarf sänken lassen. Sie verringern auch den Aufwand der Administration, da sich alles an einem Ort befindet. Auch nutzt sich virtuelle Hardware innerhalb der Virtuellen Maschinen nicht ab und mechanische Fehler sind ausgeschlossen. </p>



<p>Admins (Administratoren = Benutzer mit erweiterten Rechten in IT-Systemen) können die Vorteile virtueller Umgebungen nutzen, um Images (In der Computertechnik ist ein Image ein Systemabbild bzw. eine serielle Kopie des gesamten Zustands eines Computersystems, die in einer nichtflüchtigen Form wie einer Datei gespeichert ist), Backups (Sicherheitskopien), das Einrichten und die Bereitstellung neuer Computersysteme und grundlegende Systemverwaltungsaufgaben zu vereinfachen. </p>



<p>Virtuelle Maschinen erfordern keine spezielle Hardware und sind in der Regel bzw. je nach Anwendungsbereich und den Anwendungen, die ausgeführt werden sollen, nicht sehr ressourcenhungrig. Wobei dies stark von der Menge der ausgeführten Virtuellen Maschinen und der jeweiligen Konfigurationen abhängt. Zu den Vorteilen gehört unter Anderem auch die Flexibilität beim Verschieben der Instanzen zwischen diversen Servern oder Computersystemen.</p>



<h3 class="wp-block-heading">Administration</h3>



<p>Alles in allem sind Virtuelle Maschinen etwas Feines. Zumal jemand, der mehrere Betriebssysteme einer IT-Infrastruktur administrieren, orchestrieren bzw. verwalten muss, die Vorzüge diverser Betriebssysteme auf einem dedizierten System nutzen kann. Nichtsdestotrotz besteht das Risiko, falls systemrelevante Anwendungen plattformübergreifend auf einem dedizierten Server bzw. Computer ausgeführt werden, bei einer Überlastung oder einem Hardwarefehler alle Systeme die darauf abgebildet sind, in Mitleidenschaft zieht. Folglich macht es Sinn, auch Virtuelle Maschinen auf der Hardware-Ebene redundant zu betreiben.</p>



<h3 class="wp-block-heading">Wozu benötigt man Virtuelle Maschinen?</h3>



<p>Virtuelle Maschinen sind vielseitig einsetzbar. Eines der wichtigsten Aspekte ist, wie bereits erwähnt, die synchrone Nutzung unterschiedlicher Betriebssysteme. Diese Art der Nutzung trifft man häufig beim Testen von Software- bzw. Web-Anwendungen an. So ist es beispielsweise möglich, die Tests auf verschieden Systemen mit verschiedenster Hardware-Ausstattung auszuführen und die Resultate bzw. Laufzeitergebnisse auf einem primären System zu evaluieren und zu verwalten. Dies macht auch dann Sinn, wenn es sich um sicherheitsrelevante Anwendungen handelt, die beispielsweise in einer isolierten Umgebung ausgeführt werden sollen/müssen oder wenn man Penetrationstests (Penetrationstest, kurz Pentest(ing), ist der fachsprachliche Ausdruck für einen umfassenden Sicherheitstest einzelner Rechner oder Netzwerke jeglicher Größe) in diversen Netzwerkumgebungen und verschiedenen Betriebssystemen ausführen möchte.</p>



<h3 class="wp-block-heading">Virtuelle Maschinen und Multi-Boot-Systeme</h3>



<p>Als die Virtualisierung noch nicht existierte, musste man ein Computer-System mit mehreren Betriebssystemen immer wieder neu booten (Neustarten), um auf die verschiedenen Betriebssysteme zuzugreifen. Jedes dieser Betriebssysteme konnte zwar sowohl abhängig als auch unabhängig vom Dateisystem agieren, doch sie konnten immer nur einzeln zu einem bestimmten Zeitpunkt verwendet werden. Auch heute macht man dies nach wie vor so. Beispielsweise wenn man Software nutzen will, die ausschließlich auf einem spezifischen Betriebssystem wie MacOS, Windows oder <a href="https://ceosbay.com/2022/11/22/erklaerung-linux/" target="_blank" rel="noreferrer noopener">Linux</a> funktionsfähig ist, die Hardware-Ressourcen relativ begrenzt sind und die vollständige Kapazität des Systems für das spezifische Betriebssystem oder die Anwendungen benötigt werden. Nachteile sind hierbei, meiner Erfahrung nach, besonders auf Apple Geräten, die fehlenden oder fehlerhaften Treiber bzw. das geschlossene Ökosystem des Herstellers.</p>



<h3 class="wp-block-heading">Virtuelle Maschinen und Cloud Computing</h3>



<p>Mit dem Aufkommen der Cloud lassen sich die virtuellen Maschinen auch in der Cloud ausführen bzw. umziehen/migrieren. Dieses Thema werde ich aber in einem anderen Beitrag genauer bearbeiten, da ich mich derzeit auch in diesem Umfeld bewege.</p>



<h3 class="wp-block-heading">Virtuelle Maschinen und Container</h3>



<p>Container funktionieren nach einem ähnlichen Prinzip wie Virtuelle Maschinen &#8211; Bis auf die Hardware versteht sich. Doch dies habe ich bereits in dem <a href="https://ceosbay.com/2022/10/28/laufzeitumgebung-fuer-softwareanwendungen-docker/">Blog-Beitrag </a> über <a href="https://ceosbay.com/2022/10/28/laufzeitumgebung-fuer-softwareanwendungen-docker/">Docker</a> beschrieben. Hier ist auch der Beitrag über <a href="https://ceosbay.com/2022/12/24/erklaerung-kubernetes/" target="_blank" rel="noreferrer noopener">Kubernetes</a> zu empfehlen.</p>



<h3 class="wp-block-heading">Welche Virtuellen Maschinen gibt es?</h3>



<p>Zu den Hauptanbietern gehören wohl VMware, was heute als EMC unter dem Dach von Dell existiert, Oracle, Microsoft und Parallels. Ansonsten sind da noch Open-Source-VM-Lösungen wie Red Hat Virtualization oder ProxMox, die ich zusammen mit Azure auch noch in späteren Beiträgen thematisieren möchte. Nicht zu vergessen Virtual Box von Oracle, was ebenfalls als „Open Source“ zu haben ist.</p>



<p></p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/11/10/erklaerung-virtuelle-maschine/">Virtuelle Maschinen &#8211; Flexibilität und Effizienz durch nahtlose Systemintegration und isolierte Umgebungen</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2022/11/10/erklaerung-virtuelle-maschine/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">411</post-id>	</item>
		<item>
		<title>Microsoft Zertifikate &#8211; Kompetenz unter Beweis stellen und beruflichen Erfolg in der Welt der Technologie fördern</title>
		<link>https://ceosbay.com/2022/11/07/weiterbildung-microsoft-zertifikate/</link>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Mon, 07 Nov 2022 11:21:38 +0000</pubDate>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Bildung]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Datenbanken]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Ausbildung]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Exams]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Hochschule]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[Learning]]></category>
		<category><![CDATA[Lösungen]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Prüfung]]></category>
		<category><![CDATA[Prüfungen]]></category>
		<category><![CDATA[Self-Development]]></category>
		<category><![CDATA[Weiterbildung]]></category>
		<category><![CDATA[Zertifikat]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=305</guid>

					<description><![CDATA[<p>Im Rahmen des Microsoft Ignite Events bin ich wieder auf die Microsoft Zertifikate aufmerksam geworden. Zertifizierungen können Arbeitgebern und Kunden zeigen, dass sich ein Bewerber/Anbieter mit dem Produkt auseinandergesetzt und eine Prüfung erfolgreich absolviert hat, &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/11/07/weiterbildung-microsoft-zertifikate/">Microsoft Zertifikate &#8211; Kompetenz unter Beweis stellen und beruflichen Erfolg in der Welt der Technologie fördern</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Im Rahmen des Microsoft Ignite Events bin ich wieder auf die Microsoft Zertifikate aufmerksam geworden. Zertifizierungen können Arbeitgebern und Kunden zeigen, dass sich ein Bewerber/Anbieter mit dem Produkt auseinandergesetzt und eine Prüfung erfolgreich absolviert hat, die zu diesem Zweck erstellt wurde. Microsoft-Zertifizierungen sind Standards, die weltweit anerkannt sind. Unter anderem sollen einige dieser bestandenen Zertifizierungsprüfungen bei einer ACE-Hochschule als Leistungspunkte angerechnet werden können. Doch vor allem, wenn es um den Nachweis für Kompetenz in der IT und in Microsoft-Netzwerken geht, können diese Zertifikate einen Vorteil darstellen. Aus diesem Grund sind Zertifizierungen seit Jahrzehnten ein Einstellungskriterium und häufig auch der Grund für Gehaltssteigerungen. Auf &#8222;<a href="https://learn.microsoft.com/de-de/certifications/" target="_blank" rel="noreferrer noopener">Microsoft Learn</a>&#8220; sind alle aktuellen Zertifizierungen zusammengestellt. </p>



<p>Nachdem diverse Angebote und Dienstleistungen immer mehr in die Cloud wandern, kann es durchaus Sinn machen, sich mit diesen Themen zu beschäftigen. Vor allem wenn man bedenkt, dass Microsoft neben AWS (Amazon Web Services) und Google einer der Big Player ist, wenn es um Cloud Lösungen geht.</p>



<h3 class="wp-block-heading">Was ist die Cloud?</h3>



<p>Kurz gesagt, wird mit der&nbsp;Cloud&nbsp;ein externer Datenspeicher bezeichnet, der sich nicht zu Hause oder im Büro befindet, sondern auf einem Server. Wenn man also etwas in die Cloud lädt, dann meint man in der Regel, Daten auf einem entfernten Server zu speichern. Dabei werden Daten von einem beliebigen Gerät über das Internet auf den Server eines Cloud-Anbieters hochgeladen. Später können die Dateien dann mit diesem oder anderen Geräten wieder abgerufen werden. Eines der Vorteile ist, dass man Plattformunabhängig auf die Daten zugreifen und verwalten kann. Auch benötigt man für die Verarbeitung der Daten keine High-End Geräte mit enormen Leistungs- und Speicherkapazitäten. Sicherlich gehen diverse andere positive und negative Aspekte mit Cloud Lösungen einher. Doch dies werde ich in einem separaten Beitrag ausführlicher thematisieren. Man kann auch VMs (Virtuelle Maschinen) in der Cloud einsetzen. Hierzu habe ich aber einen anderen <a href="https://ceosbay.com/2022/11/10/erklaerung-virtuelle-maschine/">Beitrag</a> erstellt.</p>



<h3 class="wp-block-heading">Wie läuft das Training bzw. Lernen für Microsoft Zertifikate ab?</h3>



<p>Die Lerninhalte sind in Pfaden bzw. Modulen organisiert. Man kann vorab eine Rolle definieren, die man anstrebt oder aber einen Pfad auf Basis der eigenen Interessen selber definieren. Man kann auch ein bestimmtes Microsoft Zertifikat auswählen und erhält dann die relevanten bzw. erforderlichen Module für die jeweilige Prüfung.</p>



<h3 class="wp-block-heading">Punktesystem</h3>



<p>Nach Abschluss eines jeden Moduls des jeweiligen Lernpfades erhält man Punkte. Jedes Modul wird darüberhinaus mit einer Wissensbeurteilung abgeschlossen, bei dem der Kenntnisstand über das jeweilige Thema evaluiert wird. Besteht man die Wissensbeurteilung, wird man mit weiteren Punkten belohnt und erhält Preise bzw. Badges. Diese Punkte und Badges werden dazu genutzt, in Leveln aufzusteigen. So viel zu effektiver Gamification. </p>



<h3 class="wp-block-heading">Was ist Gamification?</h3>



<p>Unter Gamification versteht man das Hinzufügen von Spielmechanismen in Umgebungen, die keine Spiele sind, wie z. B. eine Website, eine Online-Community, ein Lernmanagementsystem oder das Intranet eines Unternehmens, um die Beteiligung zu erhöhen. Ziel der Gamification ist es, Verbraucher, Mitarbeiter und Partner zur Zusammenarbeit, zum Austausch und zur Interaktion anzuregen. </p>



<p>Besonders praktisch sind die Zeitangaben. Da sowohl die Lernpfade, als auch die Module mit einer ungefähren Dauer zur Bewältigung versehen sind, ermöglicht dies ein ausgezeichnetes Zeitmanagement, mit dem es auch möglich ist, bei Pausen, die man sich an einem regulären Tag einräumt, effektiv zu lernen.</p>



<h3 class="wp-block-heading">Und der Abschluss von einem Microsoft Zertifikat?</h3>



<p>Microsoft Zertifikate werden durch das Bestehen einer Prüfung erreicht, die in einem zertifizierten Prüfungszentrum oder Remote, über eine spezielle Plattform abgelegt werden kann. Generell gehört zu jeder Zertifizierung auch ein passender Kurs mit Unterlagen. Wer in dem entsprechenden Gebiet bereits fit ist, kann einfach die Prüfung ablegen. IT&#8217;ler, die vorher einen Kurs besuchen, werden auf die Prüfung vorbereitet. Aus eigener Erfahrung kann ich sagen, dass es durchaus Sinn macht, zumindest bei den mündlichen Events, einmal teilgenommen zu haben, da die Fragen in den Examen relativ spezifisch sein können. </p>



<p>Die Präsenz-Kurse sind in den meisten Fällen Vollzeit, lassen sich also nicht während der normalen Arbeitszeit besuchen. Der Vorteil besteht darin, dass sich Teilnehmer mit anderen Teilnehmern austauschen können und Fragen direkt vom Trainer beantwortet werden. Für die meisten Zertifizierungen gibt es auch bei vielen Drittanbietern Crash-Kurse. In diesem Fall werden die Inhalte in komprimierter Form vermittelt und meistens gleich für mehrere Prüfungen hintereinander. Dadurch kann in kurzer Zeit, teilweise in 10 Tagen, eine Zertifizierung erfolgen. Seit einigen Monaten bzw. Jahren ist die Remote Teilnahme eine durchaus legitime Option. </p>



<p>Ich persönlich habe ausschließlich an den Remote Sessions und Prüfungen teilgenommen. Hierzu wird man wie bei allen legitimen remote Prüfungen, mit einem Ausweisdokument verifiziert und legt die Prüfung unter Beobachtung ab. Dadurch soll verhindert werden, dass man schummelt. Im Grunde genommen macht es aber wie bei jeder Prüfung wenig Sinn zu schummeln, da die Inhalte bereits wirklich auf das nötigste komprimiert sind und die Fähigkeiten, die man sich aneignet, fast lückenlos im realen Umfeld zum Einsatz kommen. Sicherlich sind die Zertifikate nicht zwingend erforderlich, wenn man sich beispielsweise nur aus Eigeninteresse mit den Themen beschäftigt. Hierfür bieten sich die kostenlosen Kurse an, die ebenfalls bei &#8222;Microsoft Learn&#8220; angeboten werden.</p>



<p>Nimmt man auf dem ein oder anderen Microsoft Event teil, winken einem auch hin und wieder Rabatte bei den Zertifizierungen. Dadurch spart man sich durchaus mal ca. 100 EUR und erfährt eine gewisse Anerkennung dafür, dass man sich mit den Produkten von Microsoft beschäftigt. Ich persönlich finde diese Praxis ausgezeichnet und durchaus motivierend.</p>



<h3 class="wp-block-heading">Gültigkeit von einem Microsoft Zertifikat</h3>



<p>Rollenbasierte und spezielle Microsoft-Zertifizierungen können ablaufen. Doch in der Regel kann man sein Wissen immer wieder auffrischen und die bereits erworbenen Zertifizierungen meistens kostenlos erneuern,  indem eine Onlinebewertung bzw. eine erneute Teilnahme an dem jeweiligen Examen auf Microsoft Learn bestanden wird.</p>



<h3 class="wp-block-heading">Fazit</h3>



<p>Meines Erachtens nach kann sich eine Zertifizierung für jeden IT-Profi lohnen, der mit Microsoft-Produkten arbeitet. Generell bieten Zertifikate neben der besseren Verhandlungsposition bei Gehaltsgesprächen, in den meisten Fällen auch eine bessere Chance auf neue Jobs. Beispielsweise als Quereinsteiger in neuen Berufsfeldern. Kunden gegenüber zeigen Zertifizierungen, dass das Unternehmen – bzw. der dort angestellte Spezialist – über das notwendige Wissen verfügt.</p>



<p>Wer sich bereits mit dem entsprechenden Produkt auskennt, kann Prüfungen direkt absolvieren, ohne im Vorfeld Kurse zu besuchen. Online-Kurse helfen allerdings dabei, einen Überblick zu erhalten, welches Wissen bei der entsprechenden Prüfung erforderlich ist. Natürlich kann man sich immer darüber streiten, ob eine Zertifizierung zuverlässig zeigt, dass ein IT-Profi über das notwendige Wissen verfügt. In jedem Fall ist eine Weiterbildung bzw. Zertifizierung in meinen Augen ein Benefit.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/11/07/weiterbildung-microsoft-zertifikate/">Microsoft Zertifikate &#8211; Kompetenz unter Beweis stellen und beruflichen Erfolg in der Welt der Technologie fördern</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">305</post-id>	</item>
		<item>
		<title>Homebrew &#8211; Paketmanager für MacOS (oder Linux)</title>
		<link>https://ceosbay.com/2022/10/25/homebrew-der-fehlende-paketmanager-fuer-macos-lassen-wir-fluegel-wachsen/</link>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Tue, 25 Oct 2022 21:40:00 +0000</pubDate>
				<category><![CDATA[MacOS]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[brew]]></category>
		<category><![CDATA[CLI]]></category>
		<category><![CDATA[Homebrew]]></category>
		<category><![CDATA[Install]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Package]]></category>
		<category><![CDATA[Package Manager]]></category>
		<category><![CDATA[Paketmanager]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Terminal]]></category>
		<category><![CDATA[Update]]></category>
		<category><![CDATA[Upgrde]]></category>
		<category><![CDATA[Virtual Machine]]></category>
		<category><![CDATA[Virtuelle Maschinen]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=26</guid>

					<description><![CDATA[<p>Nachdem ich immer wieder einige für mich &#8222;neue&#8220; Dinge lerne, darf Homebrew auf meinem System nicht fehlen. Falls man mit macOS unterwegs ist, sollte man die Installation durchaus in Erwägung ziehen. Homebrew ist eine freie &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/10/25/homebrew-der-fehlende-paketmanager-fuer-macos-lassen-wir-fluegel-wachsen/">Homebrew &#8211; Paketmanager für MacOS (oder Linux)</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Nachdem ich immer wieder einige für mich &#8222;neue&#8220; Dinge lerne, darf <a href="https://brew.sh/index_de.html" target="_blank" rel="noreferrer noopener">Homebrew</a> auf meinem System nicht fehlen. Falls man mit macOS unterwegs ist, sollte man die Installation durchaus in Erwägung ziehen. Homebrew ist eine freie / quelloffene / <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/" target="_blank" rel="noreferrer noopener">Open Source</a> Paketverwaltung, die Installationen von Software auf den Betriebssystemen macOS und <a href="https://ceosbay.com/2022/11/22/erklaerung-linux/" target="_blank" rel="noreferrer noopener">Linux</a> vereinfacht. Nur um es noch erwähnt zu haben &#8211; Paketmanager sind Teil der Basisausstattung einer jeden <a href="https://ceosbay.com/2022/11/22/erklaerung-linux/" target="_blank" rel="noreferrer noopener">Linux</a>-Distribution. Aus diesem Grund ist es schon gewollt bzw. provoziert, wenn dieser mal in einer Distribution fehlt.</p>



<h3 class="wp-block-heading">Installation</h3>



<p>Im Grunde genommen, ist es schnell installiert. Einfach den folgenden Code in das Terminal (Das Terminal ist ein CLI aka Command-Line Interpreter bzw. Command-Line Processor welches ein Command-Line Interface nutzt, um Befehle von einem Benutzer in Form von Textzeilen zu empfangen) von macOS kopieren und los geht&#8217;s mit einem kurzen Druck auf die Enter Taste. </p>



<pre class="wp-block-code"><code>/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"</code></pre>



<p>Dazu muss man noch sagen, dass es immer noch Systemvoraussetzungen gibt. Homebrew benötigt eine 64-bit Intel CPU (Central Processing Unit aka Prozessor) oder eine Apple Silicon CPU, mindestens macOS Mojave (10.14) und die installierten Xcode Command Line Tools (CLT) die wie folgt installiert werden können:</p>



<pre class="wp-block-code"><code>xcode-select —install</code></pre>



<p>Das Skript erklärt was es tun wird und wartet in der Regel auf Bestätigungen und/oder Befehle, bevor es etwas macht. Mehr Informationen gibt es natürlich auf der Website von Homebrew. Noch genauer, <a rel="noreferrer noopener" href="https://docs.brew.sh/Installation" target="_blank">hier</a>.</p>



<p>Wozu man es braucht? Ganz einfach, MacOS ist ein Unix-Betriebssystem &#8211; Nur ohne einen Paketmanager ist es so etwas wie ein Greifvogel, dem man die Flügel gestutzt hat. Sicherlich gibt es die Möglichkeit, VM&#8217;s (Virtuelle Maschinen zu installieren) oder andere Betriebssysteme nativ über Bootcamp zu installieren &#8222;In späteren Beiträgen gerne mehr&#8220;, doch wer hat schon Lust, für die einfachsten Anwendungen und Funktionen eine virtuelle Maschine zu installieren geschweige denn hochzufahren.</p>



<p>Im Grunde genommen ist Homebrew ein selbstgemachter Paketmanager für macOS. <a href="https://ceosbay.com/2022/11/22/erklaerung-linux/" target="_blank" rel="noreferrer noopener">Linux</a> User kennen Paketmanager, aber auf macOS fehlt dies leider &#8222;nativ&#8220;. Wer sich jetzt noch nicht über bestimmte fehlende Anwendungen wie z.B. wget auf seinem Mac gewundert hat, hat wahrscheinlich auch keinen Bedarf für einen Paketmanager wie Homebrew. Allen andere möchte ich hier einmal zeigen was geht und vor allem wie es geht.</p>



<p>Wenn man keine Lust mehr auf Homebrew hat und es wieder von seinem System entfernen möchte, macht man dies, wie bereits bei der Installation, mit einem Script:</p>



<pre class="wp-block-code"><code>/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall.sh)"</code></pre>



<p>Homebrew installiert über das Skript selbst unter dem bevorzugten Präfix (/usr/local für macOS Intel, /opt/homebrew für Apple Silicon). Homebrew benötigt dann kein Sudo mehr. Man kann es auch ausführen, wenn in /usr/local bereits Inhalte installiert sind. Homebrew installiert keine Dateien außerhalb seines Pfades und man kann den Ort einer Homebrew-Installation frei wählen. So kann man leicht prüfen, ob die Deinstallation alle Daten rückstandslos entfernt hat.</p>



<h3 class="wp-block-heading">Xcode installieren</h3>



<p>Als iOS Entwickler hat man wahrscheinlich bereits Xcode installiert. Falls nicht, gehören die Xcode CLI Tools auch noch zu den Systemvoraussetzungen auf der Software bzw. Tool Ebene. Diese lassen sich automatisch bei der Installation von Xcode über den Apple App Store installieren oder aber man gibt einfach den folgenden Befehl im Terminal ein:</p>



<pre class="wp-block-code"><code>xcode-select —install</code></pre>



<h3 class="wp-block-heading">Pakete und Befehle</h3>



<p>Nach der Installation von Homebrew können weitere Pakete installiert werden. Tatsächlich ist dies nun genauso simpel wie unter <a href="https://ceosbay.com/2022/11/22/erklaerung-linux/" target="_blank" rel="noreferrer noopener">Linux</a>.</p>



<p>Mit einem kurzen Befehl lassen sich alle bereits installierten Pakete anzeigen:</p>



<pre class="wp-block-code"><code>brew list</code></pre>



<p>Sollte diese Liste, aus welchem Grund auch immer, zu lang werden, kann man sich die Ausgabe auch mit dem nachfolgenden Befehl in eine Datei umleiten:</p>



<pre class="wp-block-code"><code>brew list &gt; homebrewpackages.txt</code></pre>



<p>Und wenn man mal nicht weiß, wofür das ein oder andere Paket eigentlich dient, kann man mit einem weiteren Befehl mehr Informationen über das spezifische Paket erhalten.</p>



<pre class="wp-block-code"><code>brew info &lt;paketname&gt;</code></pre>



<p>Mit dem nächsten Kommando lässt sich der genaue Standort des Pakets ermitteln:</p>



<pre class="wp-block-code"><code>brew --prefix &lt;paketname&gt;</code></pre>



<p>Standardmäßig sind alle Pakete in allen Versionen von macOS im selben Verzeichnis `/usr/local/Cellar/` installiert. Zusätzlich werden im Verzeichnis `/usr/local/opt/` noch symbolische Links erzeugt. Das folgende Kommando zeigt die Inhalte an:</p>



<pre class="wp-block-code"><code>ls -l /usr/local/opt/</code></pre>



<p>Homebrew und unsere installierten Pakete werden aktualisiert mit</p>



<pre class="wp-block-code"><code>brew update</code></pre>



<p>Was die Pakete betrifft, kann es vor einem Update/Upgrade auch interessant sein zu ermitteln, welche Pakete überhaupt ein Update benötigen. Dies überprüfen wir mit dem folgenden Kommando:</p>



<pre class="wp-block-code"><code>brew outdated</code></pre>



<p>Ein einzelnes individuelles Paket lässt sich mit dem folgenden Befehl aktualisieren:</p>



<pre class="wp-block-code"><code>brew upgrade &lt;paketname&gt;</code></pre>



<p>Und mit</p>



<pre class="wp-block-code"><code>brew upgrade</code></pre>



<p>lassen sich alle aktuallisieren.</p>



<p>Selbstverständlich lassen sich auch alle verfügbaren Pakete anzeigen. Dazu am besten den folgenden Befehl verwenden:</p>



<pre class="wp-block-code"><code>brew search &lt;search_string&gt;</code></pre>



<p>Wenn man beispielsweise auf der Suche nach Paketen für Azure ist, lässt sich dies auch mit einem Befehl umsetzen:</p>



<pre class="wp-block-code"><code>brew search azure</code></pre>



<p>In der Ausgabe lassen sich auf diesem Weg alle Pakete, die für Microsoft Azure (Im Grunde genommen alle Pakete, die den Terminus „azure“ im Namen innehalten) auffinden. Pakete mit einem grünen Häkchen lassen darauf schließen, dass diese bereits installiert sind.</p>



<p>Über Homebrew lässt sich auch ganz hervorragend PowerShell Core auf dem Mac installieren, um Windows Systeme mit Powershell verwalten zu können.</p>



<pre class="wp-block-code"><code>brew install --cask powershell</code></pre>



<p>Sicherlich will man auch hin und wieder das ein oder andere Paket loswerden. Dazu lässt sich dann der nachfolgende Befehl nutzen:</p>



<pre class="wp-block-code"><code>brew uninstall &lt;paketname&gt;</code></pre>



<h3 class="wp-block-heading">Fazit</h3>



<p>Diese Informationen ermöglichen einen kleinen Einblick in Hombrew. Selbstverständlich kann man noch vieles mehr damit anstellen und mehr darüber erfahren. Hierzu einfach in der <a href="https://docs.brew.sh/Manpage" target="_blank" rel="noreferrer noopener">Dokumentation</a> von Hombrew selbst vorbeischauen.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/10/25/homebrew-der-fehlende-paketmanager-fuer-macos-lassen-wir-fluegel-wachsen/">Homebrew &#8211; Paketmanager für MacOS (oder Linux)</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">26</post-id>	</item>
	</channel>
</rss>
