{"id":8387,"date":"2013-08-22T00:12:56","date_gmt":"2013-08-21T22:12:56","guid":{"rendered":"http:\/\/www.bernd-leitenberger.de\/blog\/?p=8387"},"modified":"2013-08-21T23:21:27","modified_gmt":"2013-08-21T21:21:27","slug":"hochverfuegbarkeit-am-beispiel-einer-webpraesentation-oder-eines-webshops-2","status":"publish","type":"post","link":"https:\/\/www.bernd-leitenberger.de\/blog\/2013\/08\/22\/hochverfuegbarkeit-am-beispiel-einer-webpraesentation-oder-eines-webshops-2\/","title":{"rendered":"Hochverf&uuml;gbarkeit am Beispiel einer Webpr&auml;sentation oder eines Webshops 2"},"content":{"rendered":"<p>So heute der zweite Teil des Gastbeitrages von Andreas Buschmann, der erste Teil erschien <a href=\"http:\/\/www.bernd-leitenberger.de\/blog\/2013\/08\/20\/hochverfuegbarkeit-am-beispiel-einer-webpraesentation-oder-eines-webshops-1\/\">gestern<\/a>.<\/p>\n<h2>Teil 2<\/h2>\n<h2>Einf&uuml;hrung von Redundanten Elementen<\/h2>\n<p>Wenn die Verf&uuml;gbarkeit einer Hot Standby L&ouml;sung nicht ausreichend ist, oder eine Hot Standby L&ouml;sung nicht m&ouml;glich ist, gibt es die M&ouml;glichkeit Redundante Elemente einzusetzen.<!--more--><\/p>\n<h2>Redundante Server<\/h2>\n<p>zwei oder mehr baugleiche Server sind gleichzeitig aktiv, und arbeiten parallel.<\/p>\n<p>Bei einem Ausfall eines der Server &uuml;bernimmt der\/die verbleibenden Server die volle Last.<\/p>\n<p>F&uuml;r die Verteilung der http Requests auf die Server ist ein Loadbalancer erforderlich, der die eingehenden Requests auf die vorhandenen verf&uuml;gbaren Server verteilt.<\/p>\n<p>Weiterhin ist ein Mechanismus erforderlich, der die Daten zwischen den Servern konsistent h&auml;lt.<\/p>\n<p>Das wieder aktivieren eines ausgefallenen Servers mu&szlig; in der Regel manuell geschehen, da vorher die Konsistenz der Daten gesichert werden mu&szlig;.<\/p>\n<p>Single point of failure ist jetzt nicht mehr der Webserver, sondern der Loadbalancer und die Datenhaltung.<\/p>\n<h2>Loadbalancer<\/h2>\n<p>Wenn aus Last- oder aus Verf&uuml;gbarkeitsgr&uuml;nden eine Webseite von mehreren Servern parallel pr&auml;sentiert werden soll, ist ein Loadbalancer zwischen Webbrowser und Webserver erforderlich.<\/p>\n<p>Die Einf&uuml;hrung eines Loadbalancers erzeugt mehrere Probleme:<\/p>\n<ul>\n<li>Ein Loadbalancer ist ein zus&auml;tzlicher single point of failure.d.h. in der Regel ist ein Loadbalancer Paar erforderlich.<br \/>\n(active\/passive oder active\/active)<\/li>\n<li>Ein Loadbalancer kann niemals komplett transparent sein. Die Implementierung der Webseite mu&szlig; auf den Loadbalancer abgestimmt werden.<\/li>\n<li>in der Regel m&uuml;ssen alle Zugriffe einer Websession den selben Webserver erreichen.Wenn ein Webserver ausf&auml;llt, mu&szlig; eine Websession in der Regel neu aufgebaut werden; was vom Kunden bemerkt wird.<\/li>\n<li>Loadbalancer sind im Verh&auml;ltnis zu PC-Servern teuer.<\/li>\n<li>Einige verf&uuml;gbare Loadbalancer sind limitiert auf\n<ul>\n<li>IPv4<\/li>\n<li>1GBit Ethernet<\/li>\n<li>bestimmte Netzwerk Konfigurationen<\/li>\n<li>NAT<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul>\n<li>Insbesondere neuere Loadbalancer basieren auf PC-Server Hardware, und haben daher keine besseren Verf&uuml;gbarkeiten, als PC-Server selbst.Verf&uuml;gbarkeiten und Lebensdauer, wie von Cisco Routern und Switchen gewohnt w&auml;ren w&uuml;nschenswert.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<h2>Datenhaltung<\/h2>\n<p>Ab Hot Standby Servern ist die Synchronisation der Datenhaltung ein Problem, welches vom Design der Webpr&auml;sentation bzw. des Webshops ber&uuml;cksichtigt werden mu&szlig;.<\/p>\n<p>Bei einer reinen Webpr&auml;sentation, die keine Daten welche sie vom Webbrowser entgegen nimmt persistent speichern mu&szlig;, besteht noch die M&ouml;glichkeit alle Dateien &uuml;ber ein spezielles FTP Programm hochzuladen, welche jede Datei auf alle verf&uuml;gbaren Webserver verteilt, bevor die Datei als hochgeladen markiert wird.<\/p>\n<p>Wenn ein in Wartung befindlicher Server wieder aktiv geschaltet werden soll, mu&szlig; die folgende Reihenfolge eingehalten werden, um die Konsistenz der Daten zu gew&auml;hrleisten:<\/p>\n<ul>\n<li>Abschalten des FTP Uploads<\/li>\n<li>Synchronisieren des Datenbestandes von einem aktiven Rechner auf den neu hinzuzuf&uuml;genden.<\/li>\n<li>Wieder aktivieren des FTP Uploads<\/li>\n<\/ul>\n<p>Wenn das nicht m&ouml;glich ist, oder die Webserver auf ihren Datenbestand selbst schreiben sollen ist eine andere L&ouml;sung erforderlich.<\/p>\n<p>Verwendet werden k&ouml;nnen:<\/p>\n<ul>\n<li>ein globales Filesystem (GFS)<br \/>\n(un&uuml;blich)<br \/>\n(Performance Probleme mit vielen kleinen Dateien)<\/li>\n<li>ein NFS Server<br \/>\n(neuer single Point of Failure)<br \/>\nhilft nur f&uuml;r die Verf&uuml;gbarkeit, wenn regelm&auml;&szlig;ig &Auml;nderungen an den Webservern erforderlich sind, und der NFS Server sehr selten angefa&szlig;t werden mu&szlig;.Bis vor f&uuml;nf Jahren konnte hier ein Sun Sparc Server unter Solaris verwendet werden, der eine h&ouml;here Verf&uuml;gbarkeit als PC-Server hatte. Ist heute in der Regel entweder nicht m&ouml;glich, oder nicht bezahlbar.<\/li>\n<li>eine NFS Appliance<br \/>\n(neuer single Point of Failure)<br \/>\nz.B.: NetApp<\/li>\n<li>Replizierte Datenbanken<\/li>\n<\/ul>\n<h2>Virtualisierung<\/h2>\n<p>Eine Virtualisierung l&ouml;st hier keine Probleme, sondern erzeugt zus&auml;tzliche Wartungszeiten.<br \/>\nAnsonsten wie Virtualisierung ohne redundante Elemente.<\/p>\n<h2>Verteilung auf mehrere Standorte<\/h2>\n<p>Die Voraussetzung hier ist, da&szlig; man die redundanten Elemente schon im Griff hat.<\/p>\n<h3>Zwei Standorte<\/h3>\n<p>Die Loadbalancer werden auf beide Standorte verteilt.<\/p>\n<p>Die Server werden auf beide Standorte verteilt.<\/p>\n<h4>Datenkonsistenz<\/h4>\n<p>Es sind zwei NFS Server oder zwei NFS Appliances erforderlich, die im Master Slave Betrieb jeweils die Daten vom prim&auml;ren Ger&auml;t auf das standby Ger&auml;t spiegeln.<\/p>\n<p>Zur Optimierung k&ouml;nnen ggf. die Daten in zwei Partitionen unterteilt werden, so da&szlig; jedes Ger&auml;t f&uuml;r eine Partition Master ist.<\/p>\n<p>Wenn die Standorte mehr als N km von einander entfernt sind, ist eine synchrone Spiegelung nicht mehr m&ouml;glich, da dadurch die Schreibgeschwindigkeit zu sehr beeintr&auml;chtigt wird.<\/p>\n<p>Eine asynchrone Spiegelung erzeugt aber einen Datenverlust beim Umschalten vom prim&auml;ren auf das standby Ger&auml;t.<\/p>\n<p>Das Umschalten mu&szlig; beim asynchronen Spiegeln manuell gemacht werden.<\/p>\n<h3>Drei Standorte<\/h3>\n<h4>Loadbalancer<\/h4>\n<ul>\n<li>Eine Unterst&uuml;tzung von drei Standorten ist bei Loadbalancern un&uuml;blich. ggf. m&uuml;ssen an jedem Standort zwei Loadbalancer aufgebaut werden, oder die Loadbalancer m&uuml;ssen speziell partitioniert werden.<\/li>\n<\/ul>\n<h4>Datenhaltung<\/h4>\n<ul>\n<li>Ein automatisches Failover bei einer auf drei Standorte verteilte Datenhaltung ist m&ouml;glich.zwei Standorte mit Disksystemen und ein Standort mit Voter ist u.U. m&ouml;glich.<\/li>\n<li>Ein m&ouml;gliches Problem ist die notwendige Verkabelung zwischen den Standorten. Mir ist nicht klar, ob alle Leitungen die selbe Bandbreite ben&ouml;tigen, oder ob die Leitungen zum Voter eine niedrigere Bandbreite haben d&uuml;rfen. Was geschieht, wenn die Hauptleitung ausf&auml;llt?<\/li>\n<\/ul>\n<h4>Datenkonsistenz<\/h4>\n<p>zum Thema verteilte bzw. replizierte Datenhaltung schreibe ich noch einen eigenen Artikel.<\/p>\n<h3>geplante Downtimes<\/h3>\n<p>geplante Downtimes sind:<\/p>\n<ul>\n<li>Updates\n<ul>\n<li>von Firmware<\/li>\n<li>des Betriebsystems<\/li>\n<li>des Webservers<\/li>\n<li>der Webseiten<\/li>\n<li>der Datenbank Software<\/li>\n<\/ul>\n<\/li>\n<li>Reparatur von Hardware<\/li>\n<li>Austausch von Hardware<\/li>\n<li>Umverkabeln des Netzwerks<\/li>\n<li>Umziehen von Komponenten in andere Racks<\/li>\n<\/ul>\n<h3>ungeplante Downtimes<\/h3>\n<ul>\n<li>Ausf&auml;lle durch Fehler\n<ul>\n<li>in der Hardware<\/li>\n<li>im Netzwerk<\/li>\n<li>in der Stomversorgung<\/li>\n<li>im Betriebssystem<\/li>\n<li>in der Software<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2>weitere Artikel<\/h2>\n<p>F&uuml;r n&auml;here Details werde ich eigene Artikel schreiben.<br \/>\nInsbesondere will ich auf die Datenhaltung f&uuml;r Hochverf&uuml;gbare Systeme eingehen.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>So heute der zweite Teil des Gastbeitrages von Andreas Buschmann, der erste Teil erschien gestern. Teil 2 Einf&uuml;hrung von Redundanten Elementen Wenn die Verf&uuml;gbarkeit einer Hot Standby L&ouml;sung nicht ausreichend ist, oder eine Hot Standby L&ouml;sung nicht m&ouml;glich ist, gibt es die M&ouml;glichkeit Redundante Elemente einzusetzen.<\/p>\n","protected":false},"author":169,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[4,529],"tags":[3259,3260],"class_list":["post-8387","post","type-post","status-publish","format-standard","hentry","category-computer","category-gastbeitraege","tag-andreas-buschmann","tag-hochverfuegbarkeit","entry"],"a3_pvc":{"activated":false,"total_views":405,"today_views":0},"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":18683,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2026\/06\/01\/die-glorreichen-10-programmiersprachen-2\/","url_meta":{"origin":8387,"position":0},"title":"Die glorreichen 10 \u2013 Programmiersprachen (2)","author":"Bernd Leitenberger","date":"1. Juni 2026","format":false,"excerpt":"Der heutige Teil schlie\u00dft nahtlos an den ersten Teil an, der gestern erschien. Es geht um 10 Kriterien anhand derer man Programmiersprachen kategorisieren kann. Maschinennah oder universell, aber komplex Als eine maschinennahe Sprache bezeichnet man eine Sprache, die nahe den M\u00f6glichkeiten von Prozessoren ist. Das Paradebeispiel ist C. Alle Prozessoren\u2026","rel":"","context":"In &quot;Die Glorreichen 10&quot;","block_context":{"text":"Die Glorreichen 10","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/allgemein\/die-glorreichen-10\/"},"img":{"alt_text":"","src":"https:\/\/vg09.met.vgwort.de\/na\/7f5d9cf5265047179df05b778bf455b5","width":350,"height":200},"classes":[]},{"id":18610,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2026\/03\/27\/galileos-cds-teil-1\/","url_meta":{"origin":8387,"position":1},"title":"Galileos CDS &#8211; Teil 1","author":"Bernd Leitenberger","date":"27. M\u00e4rz 2026","format":false,"excerpt":"Hall\u00f6chen, es wird Zeit das ich mich mal wieder melde. Es gab zwei Gr\u00fcnde, warum ich mich so rar gemacht habe. Das eine ist das es gerade nicht so viel aktuelles gibt, au\u00dfer einem Update zu Artemis, zu dem ich vielleicht noch etwas schreibe. W\u00e4hrend Trump das ganze Programm nach\u2026","rel":"","context":"In &quot;Raumfahrt&quot;","block_context":{"text":"Raumfahrt","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/raumfahrt\/"},"img":{"alt_text":"","src":"https:\/\/vg07.met.vgwort.de\/na\/4fb81c7bafbd4d9d88b5695abdb33d29","width":350,"height":200},"classes":[]},{"id":18614,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2026\/03\/29\/galileos-cds-teil-3\/","url_meta":{"origin":8387,"position":2},"title":"Galileos CDS &#8211; Teil 3","author":"Bernd Leitenberger","date":"29. M\u00e4rz 2026","format":false,"excerpt":"So nun zum dritten Teil \u00fcber das prim\u00e4re Computersystem von Galileo, das CDS. Nachdem sich die ersten beiden Teile nur mit dem RCA 1802, warum er gew\u00e4hlt wurde und seiner Architektur befassten geht es heute um das Computersystem selbst. Der Artikel schlie\u00dft so an seine beiden Vorg\u00e4nger gestern und vorgestern\u2026","rel":"","context":"In &quot;Raumfahrt&quot;","block_context":{"text":"Raumfahrt","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/raumfahrt\/"},"img":{"alt_text":"","src":"https:\/\/vg07.met.vgwort.de\/na\/6e7f572a246b4ac395de9c260733b707","width":350,"height":200},"classes":[]},{"id":14393,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2019\/11\/06\/warum-tut-man-sich-so-schwer-auf-etwas-voellig-ueberfluessiges-zu-verzichten\/","url_meta":{"origin":8387,"position":3},"title":"Warum tut man sich so schwer, auf etwas v&ouml;llig &Uuml;berfl&uuml;ssiges zu verzichten?","author":"Bernd Leitenberger","date":"6. November 2019","format":false,"excerpt":"Gestern war erneut das \u201eKlimakabinett\u201c aktiv. Sie haben den Ausbau der Ladeinfrastruktur und des Netzes an Wasserstoffnetzen beschlossen. Mal abgesehen davon das dies nicht in den Verantwortungsbereich der Bundesregierung, sondern der Betreiber der entsprechenden Stationen f\u00e4llt, ist das wieder ein Beispiel f\u00fcr Aktionismus. Genauso wie die nun erh\u00f6hte Elektroautopr\u00e4mie. Wer\u2026","rel":"","context":"In &quot;Allgemein&quot;","block_context":{"text":"Allgemein","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/allgemein\/"},"img":{"alt_text":"","src":"https:\/\/vg02.met.vgwort.de\/na\/a4a87b4f3c004c9ba9d11e2f979f8aac","width":350,"height":200},"classes":[]},{"id":18643,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2026\/04\/22\/reiches-endlager\/","url_meta":{"origin":8387,"position":4},"title":"Reiches Endlager","author":"Bernd Leitenberger","date":"22. April 2026","format":false,"excerpt":"Man ist ja von der derzeitigen Bundeswirtschaftsministerin Katherina Reiche einiges gewohnt. Mal will sie 40 neue Gaskraftwerke bauen, dann die F\u00f6rderung regenerativer Energien ab dem 1. Januar 2027 einstellen, schon jetzt bekommen nach einer Gesetzesreform Betreiber von Windkraftanlagen keine Verg\u00fctung mehr f\u00fcr Strom. den sie nicht einspeisen k\u00f6nnen, weil die\u2026","rel":"","context":"In &quot;M\u00fcnchhausens Kolumne&quot;","block_context":{"text":"M\u00fcnchhausens Kolumne","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/satire\/muenchhausen\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":18406,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2025\/09\/23\/der-blogautor-von-der-ki-beurteilt\/","url_meta":{"origin":8387,"position":5},"title":"Der Blogautor von der KI beurteilt","author":"Bernd Leitenberger","date":"23. September 2025","format":false,"excerpt":"Ich nutze inzwischen auch eine KI. Prim\u00e4r zu Recherche, im Browser https:\/\/www.perplexity.ai die f\u00fcr Recherchen (nach Eigenauskunft) spezialisiert ist. Seit ich vor mehr als zwei Jahren die KI zum ersten Mal getestet habe, hat diese sich enorm gebessert. Sie fabuliert weniger und ist intelligenter. Damals konnte man noch die AI\u2026","rel":"","context":"In &quot;Allgemein&quot;","block_context":{"text":"Allgemein","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/allgemein\/"},"img":{"alt_text":"","src":"https:\/\/vg01.met.vgwort.de\/na\/c334c52e97b74da9b82424a9e80c6d97","width":350,"height":200},"classes":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/posts\/8387","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/users\/169"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/comments?post=8387"}],"version-history":[{"count":0,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/posts\/8387\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/media?parent=8387"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/categories?post=8387"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/tags?post=8387"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}