{"id":31907,"date":"2019-10-31T21:43:53","date_gmt":"2019-10-31T18:43:53","guid":{"rendered":"https:\/\/prohoster.info\/blog\/postroenie-otkazoustojchivogo-resheniya-na-baze-oracle-rac-i-arhitektury-accelstor-shared-nothing\/"},"modified":"2019-10-31T21:43:53","modified_gmt":"2019-10-31T18:43:53","slug":"postroenie-otkazoustojchivogo-resheniya-na-baze-oracle-rac-i-arhitektury-accelstor-shared-nothing","status":"publish","type":"post","link":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/postroenie-otkazoustojchivogo-resheniya-na-baze-oracle-rac-i-arhitektury-accelstor-shared-nothing","title":{"rendered":"Aufbau einer ausfallsicheren L\u00f6sung auf Basis von Oracle RAC und der AccelStor Shared-Nothing Architektur","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Eine betr\u00e4chtliche Anzahl von Unternehmensanwendungen und Virtualisierungssystemen verf\u00fcgt \u00fcber eigene Mechanismen zur Erstellung von ausfallsicheren L\u00f6sungen. Insbesondere stellt Oracle RAC (Oracle Real Application Cluster einen Cluster aus zwei oder mehr Oracle-Datenbankservern dar, die gemeinsam arbeiten, um die Last zu verteilen und die Ausfallsicherheit auf Server-\/Anwendungsebene zu gew\u00e4hrleisten. F\u00fcr den Betrieb in einem solchen Modus ist ein gemeinsamer Speicher erforderlich, der in der Regel durch ein Speicher-Array repr\u00e4sentiert wird. <\/p>\n<p><\/p>\n<p>Wie bereits in einem meiner <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/accelstor\/blog\/441780\/\">Artikel<\/a><\/noindex>, ist das Speicher-Array selbst, trotz vorhandener redundanter Komponenten (einschlie\u00dflich der Controller), dennoch anf\u00e4llig \u2013 vor allem in Form eines einzigen Datensatzes. Daher muss das Konzept \u201eN Server \u2013 ein Speicher-Array\u201c zur Schaffung einer Oracle-L\u00f6sung mit h\u00f6heren Zuverl\u00e4ssigkeitsanforderungen komplizierter gestaltet werden.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Aufbau einer ausfallsicheren L\u00f6sung auf Basis von Oracle RAC und der AccelStor Shared-Nothing Architektur\" src=\"\/wp-content\/uploads\/2019\/04\/779e46d9ae2d70251bc72f55941171a5.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Zuerst muss sichergestellt werden, vor welchen Risiken wir uns sch\u00fctzen m\u00f6chten. In diesem Artikel werden wir nicht auf den Schutz vor Bedrohungen wie \u201eder Meteor ist gefallen\u201c eingehen. Daher bleibt der Aufbau einer georedundanten Disaster-Recovery-L\u00f6sung Thema eines der n\u00e4chsten Artikel. Hier werden wir das sogenannte Cross-Rack-Disaster-Recovery in Betracht ziehen, bei dem der Schutz auf der Ebene der Server-Schr\u00e4nke aufgebaut wird. Diese Schr\u00e4nke k\u00f6nnen sich sowohl in einem Raum als auch in verschiedenen R\u00e4umen befinden, \u00fcblicherweise jedoch innerhalb eines Geb\u00e4udes.<\/p>\n<p><\/p>\n<p>Diese Schr\u00e4nke sollten die gesamte erforderliche Ausr\u00fcstung und Software enthalten, die es erm\u00f6glichen, die Oracle-Datenbanken unabh\u00e4ngig vom Zustand des \u201eNachbarn\u201c zu betreiben. Mit anderen Worten: Wenn wir eine Cross-Rack-Disaster-Recovery-L\u00f6sung verwenden, schlie\u00dfen wir die Risiken eines Ausfalls aus:<\/p>\n<p><\/p>\n<ul>\n<li>Oracle-Anwendungsserver<\/li>\n<li>Speichersysteme<\/li>\n<li>Vermittlungssysteme<\/li>\n<li>Vollst\u00e4ndiger Ausfall aller Ger\u00e4te im Schrank:\n<ul>\n<li>Stromausfall<\/li>\n<li>Ausfall des K\u00fchlsystems<\/li>\n<li>\u00c4u\u00dfere Faktoren (Mensch, Natur usw.)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><\/p>\n<p>Die Duplizierung der Oracle-Server impliziert das Grundprinzip der Funktionsweise von Oracle RAC und wird durch eine Anwendung realisiert. Auch die Duplizierung der Vermittlungsmittel stellt kein Problem dar. Bei der Duplizierung des Speichersystems sieht es jedoch komplizierter aus.<\/p>\n<p><\/p>\n<p>Die einfachste Variante besteht darin, Daten von der prim\u00e4ren Speicherl\u00f6sung auf die sekund\u00e4re zu replizieren. Synchron oder asynchron, je nach den M\u00f6glichkeiten der Speicherl\u00f6sungen. Bei der asynchronen Replikation stellt sich sofort die Frage nach der Sicherstellung der Datenkonsistenz in Bezug auf Oracle. Selbst wenn eine Softwareintegration mit der Anwendung vorhanden ist, ist in jedem Fall, bei einem Ausfall der prim\u00e4ren Speicherl\u00f6sung, das Eingreifen von Administratoren im manuellen Modus erforderlich, um den Cluster auf den sekund\u00e4ren Speicher umzuschalten.<\/p>\n<p><\/p>\n<p>Eine kompliziertere Variante sind software- und\/oder hardwaregest\u00fctzte \"Virtualisierer\" der Speicherl\u00f6sungen, die Probleme mit Konsistenz und manuellem Eingreifen beseitigen. Aber die Komplexit\u00e4t der Bereitstellung und anschlie\u00dfenden Verwaltung sowie die sehr hohen Kosten solcher L\u00f6sungen schrecken viele ab.<\/p>\n<p><\/p>\n<p>Gerade f\u00fcr solche Szenarien, wie die Cross-Rack-Disaster-Recovery, ist die All-Flash-L\u00f6sung AccelStor NeoSapphire\u2122 hervorragend geeignet. <noindex><a rel=\"nofollow\" href=\"https:\/\/accelstor.ru\/product\/neosapphire-h710\">H710<\/a><\/noindex> unter Verwendung der Shared-Nothing-Architektur. Dieses Modell stellt ein zweiknotiges Speichersystem dar, das die eigene Technologie FlexiRemap\u00ae f\u00fcr die Arbeit mit Flash-Speichern nutzt. Dank <noindex><a rel=\"nofollow\" href=\"https:\/\/accelstor.ru\/\">FlexiRemap\u00ae<\/a><\/noindex> ist NeoSapphire\u2122 H710 in der Lage, eine Leistung von bis zu 600K IOPS@4K zuf\u00e4lligem Schreiben und \u00fcber 1M IOPS@4K zuf\u00e4lligem Lesen zu erbringen, was mit herk\u00f6mmlichen RAID-basierten Speicherl\u00f6sungen unerreichbar ist.<\/p>\n<p><\/p>\n<p>Die Hauptmerkmale von NeoSapphire\u2122 H710 sind jedoch die Ausf\u00fchrung der beiden Knoten in Form einzelner Geh\u00e4use, von denen jedes eine eigene Kopie der Daten hat. Die Synchronisation der Knoten erfolgt \u00fcber die externe InfiniBand-Schnittstelle. Dank dieser Architektur k\u00f6nnen die Knoten \u00fcber verschiedene Standorte bis zu 100 m voneinander entfernt gebracht werden, wodurch eine Cross-Rack-Disaster-Recovery-L\u00f6sung gew\u00e4hrleistet wird. Beide Knoten arbeiten vollst\u00e4ndig synchron. F\u00fcr die Hosts wirkt die H710 wie eine gew\u00f6hnliche Dual-Controller-Speicherl\u00f6sung. Daher sind keine zus\u00e4tzlichen Software- oder Hardwareoptionen und besonders komplizierte Einstellungen erforderlich.<\/p>\n<p><\/p>\n<p>Wenn man alle oben beschriebenen L\u00f6sungen zur Cross-Rack-Disaster-Recovery vergleicht, sticht die L\u00f6sung von AccelStor deutlich hervor:<\/p>\n<p><\/p>\n<p>AccelStor NeoSapphire\u2122 Shared Nothing Architecture<br \/>\nSoftware- oder Hardware-\"Virtualisierer\" der Speicherl\u00f6sung<br \/>\nReplikationsbasiertes Konzept<\/p>\n<p><b>Verf\u00fcgbarkeit<\/b><\/p>\n<p>Serverausfall<br \/>\n<b>Kein Ausfall<\/b><br \/>\n<b>Kein Ausfall<\/b><br \/>\n<b>Kein Ausfall<\/b><\/p>\n<p>Ausfall des Switches<br \/>\n<b>Kein Ausfall<\/b><br \/>\n<b>Kein Ausfall<\/b><br \/>\n<b>Kein Ausfall<\/b><\/p>\n<p>Ausfall des Speichersystems<br \/>\n<b>Kein Ausfall<\/b><br \/>\n<b>Kein Ausfall<\/b><br \/>\n<b>Ausfall<\/b><\/p>\n<p>Ausfall des ganzen Racks<br \/>\n<b>Kein Ausfall<\/b><br \/>\n<b>Kein Ausfall<\/b><br \/>\n<b>Ausfall<\/b><\/p>\n<p><b>Kosten und Komplexit\u00e4t<\/b><\/p>\n<p>Kosten des L\u00f6sung<br \/>\nNiedrig*<br \/>\nHoch<br \/>\nHoch<\/p>\n<p>Bereitstellungskomplexit\u00e4t<br \/>\nNiedrig<br \/>\nHoch<br \/>\nHoch<\/p>\n<p><\/p>\n<p><i>*AccelStor NeoSapphire\u2122 ist dennoch ein All-Flash-Speichersystem, das definitionsgem\u00e4\u00df nicht \u201e3 Cent\u201c kostet, insbesondere bei einem zweimal so hohen Kapazit\u00e4tsvorrat. Im Vergleich zu den Endkosten \u00e4hnlicher L\u00f6sungen anderer Anbieter kann der Preis jedoch als niedrig angesehen werden.<\/i><\/p>\n<p><\/p>\n<p>Die Topologie f\u00fcr den Anschluss von Anwendungsservern und Knoten des All-Flash-Speichersystems wird wie folgt aussehen:<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Aufbau einer ausfallsicheren L\u00f6sung auf Basis von Oracle RAC und der AccelStor Shared-Nothing Architektur\" src=\"\/wp-content\/uploads\/2019\/04\/faf6a0a78ed13532a817fb67a2651b1b.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Bei der Planung der Topologie wird dringend empfohlen, eine Duplizierung der Verwaltungs- und Interconnect-Switches der Server vorzunehmen.<\/p>\n<p><\/p>\n<p>Hier und im Folgenden wird \u00fcber die Verbindung \u00fcber Fibre Channel gesprochen. Bei Verwendung von iSCSI ist es dasselbe, mit Ausnahme der verwendeten Schaltertypen und etwas anderer Einstellungen des Systems.<\/p>\n<p><\/p>\n<h3>Vorbereitungsarbeiten am System<\/h3>\n<p>\n<b class=\"spoiler_title\">Verwendete Hardware und Software<\/b><\/p>\n<p><b>Spezifikationen f\u00fcr Server und Switches<\/b><\/p>\n<p><\/p>\n<p>Komponenten<br \/>\nBeschreibung<\/p>\n<p>Oracle Database 11g-Server<br \/>\nZwei <\/p>\n<p>Betriebssystem des Servers<br \/>\nOracle Linux<\/p>\n<p>Version der Oracle-Datenbank<br \/>\n11g (RAC)<\/p>\n<p>Prozessoren pro Server<br \/>\nZwei 16-Kern Intel\u00ae Xeon\u00ae CPU E5-2667 v2 @ 3,30GHz<\/p>\n<p>Physischer Speicher pro Server<br \/>\n128GB<\/p>\n<p>FC-Netzwerk<br \/>\n16Gb\/s FC mit Multipathing<\/p>\n<p>FC HBA<br \/>\nEmulex Lpe-16002B <\/p>\n<p>Dedizierte \u00f6ffentliche 1GbE-Ports f\u00fcr das Cluster-Management<br \/>\nIntel Ethernet-Adapter RJ45<\/p>\n<p>16Gb\/s FC-Switch<br \/>\nBrocade 6505<\/p>\n<p>Dedizierte private 10GbE-Ports zur Datensynchronisierung<br \/>\nIntel X520<\/p>\n<p><\/p>\n<p><b>Spezifikation des AccelStor NeoSapphire\u2122 All-Flash-Systems<\/b><\/p>\n<p><\/p>\n<p>Komponenten<br \/>\nBeschreibung<\/p>\n<p>Speichersystem<br \/>\nNeoSapphire\u2122 Hochverf\u00fcgbarkeitsmodell: H710<\/p>\n<p>Bildversion<br \/>\n4.0.1<\/p>\n<p>Gesamtanzahl der Laufwerke<br \/>\n48<\/p>\n<p>Laufwerksgr\u00f6\u00dfe<br \/>\n1,92TB<\/p>\n<p>Laufwerkstyp<br \/>\nSSD<\/p>\n<p>FC-Zielports<br \/>\n16x 16Gb-Ports (8 pro Knoten)<\/p>\n<p>Verwaltungsports<br \/>\nDas 1GbE-Ethernetkabel, das \u00fcber einen Ethernet-Switch mit Hosts verbunden ist<\/p>\n<p>Heartbeat-Port<br \/>\nDas 1GbE-Ethernetkabel, das zwischen zwei Speicherknoten verbunden ist<\/p>\n<p>Daten-Synchronisierungsport<br \/>\n56Gb\/s InfiniBand-Kabel<\/p>\n<p>Vor der Nutzung des Systems muss es initialisiert werden. Standardm\u00e4\u00dfig haben beide Knoten dieselbe Verwaltungsadresse (192.168.1.1). Sie m\u00fcssen nacheinander mit ihnen verbinden und neue (bereits unterschiedliche) Verwaltungsadressen angeben sowie die Zeitsynchronisation einrichten, bevor die Management-Ports in ein gemeinsames Netzwerk verbunden werden k\u00f6nnen. Danach erfolgt die Zusammenf\u00fchrung der Knoten zu einem HA-Paar durch die Zuweisung von Subnetzen f\u00fcr Interlink-Verbindungen.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Aufbau einer ausfallsicheren L\u00f6sung auf Basis von Oracle RAC und der AccelStor Shared-Nothing Architektur\" src=\"\/wp-content\/uploads\/2019\/04\/9eef0dd1ac3a2ae1d19b3484ec2b2a27.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Nach der Abschluss der Initialisierung kann das System von jedem Knoten aus verwaltet werden.<\/p>\n<p><\/p>\n<p>Im n\u00e4chsten Schritt erstellen wir die ben\u00f6tigten Volumes und ver\u00f6ffentlichen diese f\u00fcr die Anwendungsserver.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Aufbau einer ausfallsicheren L\u00f6sung auf Basis von Oracle RAC und der AccelStor Shared-Nothing Architektur\" src=\"\/wp-content\/uploads\/2019\/04\/57a23b64c2bcb3c9f477cc5009e1cd48.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Es wird dringend empfohlen, mehrere Volumes f\u00fcr Oracle ASM zu erstellen, da dies die Anzahl der Targets f\u00fcr die Server erh\u00f6ht und letztendlich die Gesamtleistung verbessert (mehr zu den Warteschlangen in einer anderen) <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/accelstor\/blog\/447390\/\">Artikel<\/a><\/noindex>).<\/p>\n<p>\n<b class=\"spoiler_title\">Testkonfiguration<\/b><\/p>\n<p>Speicher-Volume-Name<br \/>\nVolume-Gr\u00f6\u00dfe<\/p>\n<p>Data01<br \/>\n200GB<\/p>\n<p>Data02<br \/>\n200GB<\/p>\n<p>Data03<br \/>\n200GB<\/p>\n<p>Data04<br \/>\n200GB<\/p>\n<p>Data05<br \/>\n200GB<\/p>\n<p>Data06<br \/>\n200GB<\/p>\n<p>Data07<br \/>\n200GB<\/p>\n<p>Data08<br \/>\n200GB<\/p>\n<p>Data09<br \/>\n200GB<\/p>\n<p>Data10<br \/>\n200GB<\/p>\n<p>Grid01<br \/>\n1GB<\/p>\n<p>Grid02<br \/>\n1GB<\/p>\n<p>Grid03<br \/>\n1GB<\/p>\n<p>Grid04<br \/>\n1GB<\/p>\n<p>Grid05<br \/>\n1GB<\/p>\n<p>Grid06<br \/>\n1GB<\/p>\n<p>Redo01<br \/>\n100GB<\/p>\n<p>Redo02<br \/>\n100GB<\/p>\n<p>Redo03<br \/>\n100GB<\/p>\n<p>Redo04<br \/>\n100GB<\/p>\n<p>Redo05<br \/>\n100GB<\/p>\n<p>Redo06<br \/>\n100GB<\/p>\n<p>Redo07<br \/>\n100GB<\/p>\n<p>Redo08<br \/>\n100GB<\/p>\n<p>Redo09<br \/>\n100GB<\/p>\n<p>Redo10<br \/>\n100GB<\/p>\n<h3>Einige Erl\u00e4uterungen zu den Betriebsmodi des Arrays und den Prozessen bei au\u00dfergew\u00f6hnlichen Situationen<\/h3>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Aufbau einer ausfallsicheren L\u00f6sung auf Basis von Oracle RAC und der AccelStor Shared-Nothing Architektur\" src=\"\/wp-content\/uploads\/2019\/04\/e0f9416f16bb8a13673cacfcf1792d9d.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Jedes Datensatzset jeder Node verf\u00fcgt \u00fcber einen Parameter \u201eVersionsnummer\u201c. Nach der ersten Initialisierung ist dieser identisch und gleich 1. Falls aus irgendeinem Grund die Versionsnummer unterschiedlich ist, erfolgt stets eine Daten-Synchronisation von der h\u00f6heren Version zur niedrigeren, wodurch die niedrigere Version ausgeglichen wird, d.h. dies bedeutet, dass die Kopien identisch sind. Gr\u00fcnde, aus denen die Versionen unterschiedlich sein k\u00f6nnen:<\/p>\n<p><\/p>\n<ul>\n<li>Geplante Neuzuweisung einer der Nodes<\/li>\n<li>Ausfall einer der Nodes aufgrund pl\u00f6tzlicher Abschaltung (Stromausfall, \u00dcberhitzung usw.). <\/li>\n<li>Abbruch der InfiniBand-Verbindung mit der Unf\u00e4higkeit zur Synchronisation<\/li>\n<li>Ausfall einer der Nodes aufgrund von Datenbesch\u00e4digung. In diesem Fall muss eine neue HA-Gruppe erstellt und das Datensatzset vollst\u00e4ndig synchronisiert werden.<\/li>\n<\/ul>\n<p><\/p>\n<p>In jedem Fall erh\u00f6ht die Node, die online bleibt, ihre Versionsnummer um eins, damit sie nach der Wiederherstellung der Verbindung mit dem Paar ihr Datensatzset synchronisieren kann.<\/p>\n<p><\/p>\n<p>Wenn die Verbindung \u00fcber die Ethernet-Leitung unterbrochen wird, wechselt Heartbeat vor\u00fcbergehend zu InfiniBand und kehrt innerhalb von 10 Sekunden zur\u00fcck, sobald es wiederhergestellt ist.<\/p>\n<p><\/p>\n<h3>Host-Konfiguration<\/h3>\n<p><\/p>\n<p>Um Hochverf\u00fcgbarkeit und Leistungssteigerung zu gew\u00e4hrleisten, muss die Unterst\u00fctzung von MPIO f\u00fcr das Array aktiviert werden. Dazu m\u00fcssen Sie die Zeilen in die Datei \/etc\/multipath.conf hinzuf\u00fcgen und anschlie\u00dfend den Multipath-Dienst neu starten.<\/p>\n<p>\n<b class=\"spoiler_title\">Versteckter Text<\/b>devices {<br \/>\n device {<br \/>\n vendor \u201eAStor\u201c<br \/>\n path_grouping_policy \u201egroup_by_prio\u201c<br \/>\n path_selector \u201equeue-length 0\u201c<br \/>\n path_checker \u201etur\u201c<br \/>\n features \u201e0\u201c<br \/>\n hardware_handler \u201e0\u201c<br \/>\n prio \u201econst\u201c<br \/>\n failback immediate<br \/>\n fast_io_fail_tmo 5<br \/>\n dev_loss_tmo 60<br \/>\n user_friendly_names yes<br \/>\n detect_prio yes<br \/>\n rr_min_io_rq 1<br \/>\n no_path_retry 0<br \/>\n }<br \/>\n}<\/p>\n<p><\/p>\n<p>Um sicherzustellen, dass ASM mit MPIO \u00fcber ASMLib funktioniert, muss die Datei \/etc\/sysconfig\/oracleasm ge\u00e4ndert und anschlie\u00dfend \/etc\/init.d\/oracleasm scandisks ausgef\u00fchrt werden.<\/p>\n<p>\n<b class=\"spoiler_title\">Versteckter Text<\/b><\/p>\n<p># ORACLEASM_SCANORDER: Matching patterns to order disk scanning<br \/>\nORACLEASM_SCANORDER=\u201edm\u201c<\/p>\n<p># ORACLEASM_SCANEXCLUDE: Matching patterns to exclude disks from scan<br \/>\nORACLEASM_SCANEXCLUDE=\u201esd\u201c<\/p>\n<p><\/p>\n<h4>Hinweis<\/h4>\n<p><\/p>\n<p><i>Wenn Sie ASMLib nicht verwenden m\u00f6chten, k\u00f6nnen Sie UDEV-Regeln verwenden, die die Grundlage f\u00fcr ASMLib sind.<\/i><\/p>\n<p><\/p>\n<p><i>Seit Version 12.1.0.2 ist die Oracle Database-Option als Teil der ASMFD-Software erh\u00e4ltlich.<\/i><\/p>\n<p>Es sollte unbedingt sichergestellt werden, dass die zur Oracle ASM erstellten Festplatten in Bezug auf die Blockgr\u00f6\u00dfe, mit der das Array physisch arbeitet (4K), ausgerichtet sind. Andernfalls k\u00f6nnen Leistungsprobleme auftreten. Daher m\u00fcssen Volumes mit den entsprechenden Parametern erstellt werden:<\/p>\n<p><\/p>\n<p><i>parted \/dev\/mapper\/device-name mklabel gpt mkpart primary 2048s 100% align-check optimal 1<\/i><\/p>\n<p><\/p>\n<h3>Verteilung der Datenbanken auf die erstellten Volumes f\u00fcr unsere Testkonfiguration<\/h3>\n<p><\/p>\n<p>Speicher-Volume-Name<br \/>\nVolume-Gr\u00f6\u00dfe<br \/>\nMapping der Volume-LUNs<br \/>\nASM Volumenger\u00e4tedetails<br \/>\nZuweisungseinheitsgr\u00f6\u00dfe<\/p>\n<p>Data01<br \/>\n200GB<br \/>\nAlle Speicher-Volumes auf das Speichersystem aller Datenports abbilden<br \/>\nRedundanz: Normal<br \/>\nName: DGDATA<br \/>\nZweck: Datendateien<\/p>\n<p>4MB<\/p>\n<p>Data02<br \/>\n200GB<\/p>\n<p>Data03<br \/>\n200GB<\/p>\n<p>Data04<br \/>\n200GB<\/p>\n<p>Data05<br \/>\n200GB<\/p>\n<p>Data06<br \/>\n200GB<\/p>\n<p>Data07<br \/>\n200GB<\/p>\n<p>Data08<br \/>\n200GB<\/p>\n<p>Data09<br \/>\n200GB<\/p>\n<p>Data10<br \/>\n200GB<\/p>\n<p>Grid01<br \/>\n1GB<br \/>\nRedundanz: Normal<br \/>\nName: DGGRID1<br \/>\nZweck: Grid: CRS und Abstimmung<\/p>\n<p>4MB<\/p>\n<p>Grid02<br \/>\n1GB<\/p>\n<p>Grid03<br \/>\n1GB<\/p>\n<p>Grid04<br \/>\n1GB<br \/>\nRedundanz: Normal<br \/>\nName: DGGRID2<br \/>\nZweck: Grid: CRS und Abstimmung<\/p>\n<p>4MB<\/p>\n<p>Grid05<br \/>\n1GB<\/p>\n<p>Grid06<br \/>\n1GB<\/p>\n<p>Redo01<br \/>\n100GB<br \/>\nRedundanz: Normal<br \/>\nName: DGREDO1<br \/>\nZweck: Redo-Protokoll von Thread 1<\/p>\n<p>4MB<\/p>\n<p>Redo02<br \/>\n100GB<\/p>\n<p>Redo03<br \/>\n100GB<\/p>\n<p>Redo04<br \/>\n100GB<\/p>\n<p>Redo05<br \/>\n100GB<\/p>\n<p>Redo06<br \/>\n100GB<br \/>\nRedundanz: Normal<br \/>\nName: DGREDO2<br \/>\nZweck: Redo-Protokoll von Thread 2<\/p>\n<p>4MB<\/p>\n<p>Redo07<br \/>\n100GB<\/p>\n<p>Redo08<br \/>\n100GB<\/p>\n<p>Redo09<br \/>\n100GB<\/p>\n<p>Redo10<br \/>\n100GB<\/p>\n<p>\n<b class=\"spoiler_title\">Datenbankeinstellungen<\/b><\/p>\n<ul>\n<li>Blockgr\u00f6\u00dfe = 8K<\/li>\n<li>Swap-Speicher = 16GB<\/li>\n<li>AMM (Automatische Speicherverwaltung) deaktivieren<\/li>\n<li>Transparente gro\u00dfe Seiten deaktivieren<\/li>\n<\/ul>\n<p><b class=\"spoiler_title\">Weitere Einstellungen<\/b><\/p>\n<p><u># vi \/etc\/sysctl.conf<\/u><br \/>\n\u2713 fs.aio-max-nr = 1048576<br \/>\n\u2713 fs.file-max = 6815744<br \/>\n\u2713 kernel.shmmax 103079215104<br \/>\n\u2713 kernel.shmall 31457280<br \/>\n\u2713 kernel.shmmn 4096<br \/>\n\u2713 kernel.sem = 250 32000 100 128<br \/>\n\u2713 net.ipv4.ip_local_port_range = 9000 65500<br \/>\n\u2713 net.core.rmem_default = 262144<br \/>\n\u2713 net.core.rmem_max = 4194304<br \/>\n\u2713 net.core.wmem_default = 262144<br \/>\n\u2713 net.core.wmem_max = 1048586<br \/>\n\u2713 vm.swappiness=10<br \/>\n\u2713 vm.min_free_kbytes=524288 # setze dies nicht, wenn du Linux x86 verwendest<br \/>\n\u2713 vm.vfs_cache_pressure=200<br \/>\n\u2713 vm.nr_hugepages = 57000<\/p>\n<p><u># vi \/etc\/security\/limits.conf<\/u><br \/>\n\u2713 grid soft nproc 2047<br \/>\n\u2713 grid hard nproc 16384<br \/>\n\u2713 grid soft nofile 1024<br \/>\n\u2713 grid hard nofile 65536<br \/>\n\u2713 grid soft stack 10240<br \/>\n\u2713 grid hard stack 32768<br \/>\n\u2713 oracle soft nproc 2047<br \/>\n\u2713 oracle hard nproc 16384<br \/>\n\u2713 oracle soft nofile 1024<br \/>\n\u2713 oracle hard nofile 65536<br \/>\n\u2713 oracle soft stack 10240<br \/>\n\u2713 oracle hard stack 32768<br \/>\n\u2713 soft memlock 120795954<br \/>\n\u2713 hard memlock 120795954\n<\/p>\n<p><\/p>\n<p><u>sqlplus \u201c\/as sysdba\u201d<\/u><br \/>\nalter system set processes=2000 scope=spfile;<br \/>\nalter system set open_cursors=2000 scope=spfile;<br \/>\nalter system set session_cached_cursors=300 scope=spfile;<br \/>\nalter system set db_files=8192 scope=spfile;\n<\/p>\n<p><\/p>\n<h3>Test auf Ausfallsicherheit<\/h3>\n<p><\/p>\n<p>Zur Demonstration wurde HammerDB verwendet, um eine OLTP-Last zu emulieren. Konfiguration von HammerDB:<\/p>\n<p><\/p>\n<p><b>Anzahl der Lagerh\u00e4user<\/b><br \/>\n256<\/p>\n<p>Gesamte Transaktionen pro Benutzer<br \/>\n1000000000000<\/p>\n<p>Virtuelle Benutzer<br \/>\n256<\/p>\n<p><\/p>\n<p>Das Ergebnis war eine Leistung von 2,1M TPM, was weit vom Limit der Array-Leistung entfernt ist <noindex><a rel=\"nofollow\" href=\"https:\/\/accelstor.ru\/product\/neosapphire-h710\">H710<\/a><\/noindex>, aber es ist das \u201eLimit\u201c f\u00fcr die derzeitige Hardwarekonfiguration der Server (vor allem wegen der Prozessoren) und deren Anzahl. Ziel dieses Tests ist jedoch die Demonstration der Ausfallsicherheit der L\u00f6sung als Ganzes und nicht das Erreichen von Leistungsh\u00f6chstwerten. Daher orientieren wir uns einfach an dieser Zahl.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Aufbau einer ausfallsicheren L\u00f6sung auf Basis von Oracle RAC und der AccelStor Shared-Nothing Architektur\" src=\"\/wp-content\/uploads\/2019\/04\/6de29f092e4c96a980a5790d8dd9a447.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h3>Test auf den Ausfall eines Knotens<\/h3>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Aufbau einer ausfallsicheren L\u00f6sung auf Basis von Oracle RAC und der AccelStor Shared-Nothing Architektur\" src=\"\/wp-content\/uploads\/2019\/04\/c222cea4613ad7096bb097fee16bbb48.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><img decoding=\"async\" alt=\"Aufbau einer ausfallsicheren L\u00f6sung auf Basis von Oracle RAC und der AccelStor Shared-Nothing Architektur\" src=\"\/wp-content\/uploads\/2019\/04\/4b9459ba3d7cf34ec1e4ad4cd34adc09.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Die Hosts haben Teile der Pfade zum Speicher verloren, arbeiteten aber \u00fcber die verbleibenden mit dem zweiten Knoten weiter. Die Leistung sank f\u00fcr einige Sekunden aufgrund der Umstellung der Pfade und kehrte dann zu normalen Werten zur\u00fcck. Es gab keine Ausfallzeit.<\/p>\n<p><\/p>\n<h3>Test auf den Ausfall des Racks mit der gesamten Ausr\u00fcstung<\/h3>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Aufbau einer ausfallsicheren L\u00f6sung auf Basis von Oracle RAC und der AccelStor Shared-Nothing Architektur\" src=\"\/wp-content\/uploads\/2019\/04\/bf4c1bbf2b4986911c4274525cf8e5d5.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><img decoding=\"async\" alt=\"Aufbau einer ausfallsicheren L\u00f6sung auf Basis von Oracle RAC und der AccelStor Shared-Nothing Architektur\" src=\"\/wp-content\/uploads\/2019\/04\/17d5aa73f72dce4fd9227cb6907c249c.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>In diesem Fall sank die Leistung ebenfalls f\u00fcr einige Sekunden aufgrund der Umstellung der Pfade und kehrte dann auf die H\u00e4lfte des urspr\u00fcnglichen Wertes zur\u00fcck. Das Ergebnis sank um die H\u00e4lfte des urspr\u00fcnglichen Wertes aufgrund der Deaktivierung eines Anwendungsservers. Es gab auch keine Ausfallzeit.<\/p>\n<p><\/p>\n<blockquote><p>Wenn die Anforderungen an die Implementierung einer ausfallsicheren Cross-Rack-Disaster-Recovery-L\u00f6sung f\u00fcr Oracle zu einem vern\u00fcnftigen Preis und mit geringem Aufwand f\u00fcr Bereitstellung\/Administration bestehen, wird die Zusammenarbeit von Oracle RAC und der Architektur <noindex><a rel=\"nofollow\" href=\"https:\/\/accelstor.ru\/page\/pochemu-accelstor\">AccelStor Shared-Nothing<\/a><\/noindex> eine der besten Optionen sein. Anstelle von Oracle RAC kann jede andere Software verwendet werden, die Clusterbildung erm\u00f6glicht, sei es von denselben DBMS oder Virtualisierungssystemen. Das Prinzip der L\u00f6sungsarchitektur bleibt dasselbe. Und das Endziel ist ein null Wert f\u00fcr RTO und RPO.<\/p><\/blockquote>\n<p>Quelle: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/accelstor\/blog\/448538\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041d\u0435\u043c\u0430\u043b\u043e\u0435 \u0447\u0438\u0441\u043b\u043e Enterprise \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u0438 \u0441\u0438\u0441\u0442\u0435\u043c \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u043c\u0435\u044e\u0442 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u044b \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u044b\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439. \u0412 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438, Oracle RAC (Oracle Real Application Cluster) \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0431\u043e\u0439 \u043a\u043b\u0430\u0441\u0442\u0435\u0440 \u0438\u0437 \u0434\u0432\u0443\u0445 \u0438\u043b\u0438 \u0431\u043e\u043b\u0435\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 Oracle, \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0445 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u043e \u0441 \u0446\u0435\u043b\u044c\u044e \u0431\u0430\u043b\u0430\u043d\u0441\u0438\u0440\u043e\u0432\u043a\u0438 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0438 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0441\u0442\u0438 \u043d\u0430 \u0443\u0440\u043e\u0432\u043d\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u0430\/\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0432 \u0442\u0430\u043a\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0431\u0449\u0435\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435, \u0432 \u0440\u043e\u043b\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":23767,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-31907","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041d\u0435\u043c\u0430\u043b\u043e\u0435 \u0447\u0438\u0441\u043b\u043e Enterprise \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u0438 \u0441\u0438\u0441\u0442\u0435\u043c \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u043c\u0435\u044e\u0442 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u044b \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u044b\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/postroenie-otkazoustojchivogo-resheniya-na-baze-oracle-rac-i-arhitektury-accelstor-shared-nothing\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435 \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043d\u0430 \u0431\u0430\u0437\u0435 Oracle RAC \u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b AccelStor Shared-Nothing | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041d\u0435\u043c\u0430\u043b\u043e\u0435 \u0447\u0438\u0441\u043b\u043e Enterprise \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u0438 \u0441\u0438\u0441\u0442\u0435\u043c \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u043c\u0435\u044e\u0442 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u044b \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u044b\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/postroenie-otkazoustojchivogo-resheniya-na-baze-oracle-rac-i-arhitektury-accelstor-shared-nothing\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:43:53+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:43:53+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Aufbau einer ausfallsicheren L\u00f6sung auf Basis von Oracle RAC und der AccelStor Shared-Nothing-Architektur | ProHoster","description":"Eine erhebliche Anzahl von Unternehmensanwendungen und Virtualisierungssystemen verf\u00fcgt \u00fcber eigene Mechanismen zur Umsetzung von ausfallsicheren L\u00f6sungen.","canonical_url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/postroenie-otkazoustojchivogo-resheniya-na-baze-oracle-rac-i-arhitektury-accelstor-shared-nothing","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"de_DE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435 \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043d\u0430 \u0431\u0430\u0437\u0435 Oracle RAC \u0438 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b AccelStor Shared-Nothing | ProHoster","og:description":"\u041d\u0435\u043c\u0430\u043b\u043e\u0435 \u0447\u0438\u0441\u043b\u043e Enterprise \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u0438 \u0441\u0438\u0441\u0442\u0435\u043c \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0438\u043c\u0435\u044e\u0442 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u044b \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u044b\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u0439.","og:url":"https:\/\/prohoster.info\/de\/blog\/administrirovanie\/postroenie-otkazoustojchivogo-resheniya-na-baze-oracle-rac-i-arhitektury-accelstor-shared-nothing","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:43:53+00:00","article:modified_time":"2019-10-31T18:43:53+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"31907","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 08:22:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 03:09:25","updated":"2026-01-21 08:22:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/31907","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/comments?post=31907"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/posts\/31907\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media\/23767"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/media?parent=31907"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/categories?post=31907"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/de\/wp-json\/wp\/v2\/tags?post=31907"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}