elmeracmeee
Goto Top

Cache bei gespiegeltem SAN

Hallo zusammen,

ich bin immer noch an einem Storage-Performance-Thema dran, wozu ich auch schon in der Vergangenheit den ein oder anderen Thread erstellt hatte.
Zusammenfassend geht es darum, dass eine spezielle Datenbank-Anwendung ausschließlich von einem Storage mit schnellem Cache profitiert.
Beispiel: Gute Werte bei einer langsam drehenden SATA Platte die an einem RAID Controller hängt.
Schlechte Werte bei einem Fullflash SAN ohne Cache.
Wir haben zwischenzeitlich mit anderen Nutzern sprechen können, die für die Behebung sogar technologisch einen Schritt zurück gegangen sind. D.h. von einem Fullflash ohne Cache zu einem SAN mit drehenden Platten aber Cache.

Aktuell:
RZ1 = SAN1 + ESX1
RZ2 = SAN2 + ESX2
VM läuft auf ESX1 im RZ1 und greift auf SAN1 zu. Volume ist aber auf SAN2 gespiegelt.
Das Write-Acknowlege kommt erst vom SAN1 zurück, wenn es auch auf SAN2 geschrieben ist.

Vorschlag des Herstellers: ein SAN mit Cache oder Cache nachrüsten, wenn möglich.

Wenn nun die Applikation im RZ1 vom SAN1 aufgrund des Write Caches das Acknowlege schon früher bekommt, also, bevor es auf SAN2 gespiegelt wurde, was passiert bei einem plötzlichen Ausfall von SAN1?

Nach meinem Verständnis würde das zu einem Datenverlust und zu einer inkonsistenten DB führen, wenn ich diese VM im RZ2 starte.
Falls dem so ist, kann man das umgehen oder anders lösen?
Ist das generell das Problem bei einem Storage Cache?
Oder geht ein SAN in diesem Fall anders mit dem Cache um?

Gruß und besten Dank

Content-ID: 31058621657

Url: https://administrator.de/contentid/31058621657

Ausgedruckt am: 18.11.2024 um 21:11 Uhr

8585324113
8585324113 21.09.2023 aktualisiert um 08:44:23 Uhr
Goto Top
Kannst du den Cache für das Lun nicht abstellen?
Sollte jedes Storage können.

Wie heißt denn das Storage und wie ist das HA Design im Detail?
ukulele-7
ukulele-7 21.09.2023 um 08:43:37 Uhr
Goto Top
Ganz ehrlich das sind doch alles Fragen an den SAN Hersteller. Du schreibst ja nicht mal was das für eine SAN ist, ist die aktiv/aktiv gespiegelt oder aktiv/passiv? Unser SAN ist aktiv passiv und spiegelt nur in Intervalen. Dennoch sollte der Stand des letzten Snapshots konsistent sein, nur eben bis zu 10 Minuten alt.
ElmerAcmeee
ElmerAcmeee 21.09.2023 um 09:00:40 Uhr
Goto Top
Hallo,
in der Tat fehlt bei den Infos ein entscheidendes Detail um sich einen Reim draus zu machen...

Unser SAN hat keinen Cache und wäre auch nicht nachrüstbar.
Wir setzen auf einen sychronen Spiegel, also Aktiv/Aktiv um die Datanbank immer konsistent auf beiden Seiten vorhalten zu können.
Der Restore/Rebuild (oder wie immer man das nennen möchte) der DB dauert ansonsten mit deren Tools ca. 12 Stunden.

Die Frage bezieht sich nun auf die generelle Funktionsweise eines Caches bei einem gespiegelten/sychronen SAN.
Wenn ich den Cache abschalte wäre die Performance wieder nicht da.
Und mit Cache verstehe ich nicht, wie die aktive Replikation dann noch so schnell Funktionieren kann.
Also Hersteller unabhängig.

Sorry, Danke und Gruß face-smile
8585324113
8585324113 21.09.2023 um 09:06:21 Uhr
Goto Top
Ein SAN ohne Cache? Also komplett ohne. Das wirft viele Fragen auf.

Die Replikation läuft dich nicht über das Frontend? Sondern über einen Replikationslink.
IBM SAN Volume Controller kennst Du?
ElmerAcmeee
ElmerAcmeee 21.09.2023 um 10:00:08 Uhr
Goto Top
Hallo
Quote from @8585324113:

Ein SAN ohne Cache? Also komplett ohne. Das wirft viele Fragen auf.
Ob nicht der Raid Controller in den Kisten nicht doch einen hat, weiß ich nicht. Das hätte aber auch nichts mit der Spiegelung zu tun.

Die Replikation läuft dich nicht über das Frontend? Sondern über einen Replikationslink.
4 dedizierte Replikationslinks

IBM SAN Volume Controller kennst Du?
Nein. Aber nach überfliegen des wikipedia Artikels stelle ich mir die selbe Frage, wie das funktionieren kann?

Wenn im jeweiligen RZ, das lokale Storage aufgrund eines super schnellen Caches das WriteAcknowlege zurück schickt, wie kann das so schnell auf das andere SAN gespiegelt sein?
Bei einem Cache z.B. auf NVME Basis, benötige ich ja dann auch eine Replikation mit dieser Geschwindigkeit.
Oder?

OffTopic:
Ich Suche gerade nach Lösungen um die DB entsprechend flott zu bekommen. Stoße aber immer wieder über das Thema Failover. Sicherheits Funktionen der DB abschalten, ESX Cache Software, Storage Cache... Bislang habe ich aber noch nichts gefunden, was sowohl einen Storage als auch ESX Ausfall ohne inkonsistente DB überleben würde.
Gruß und Dank
8585324113
8585324113 21.09.2023 aktualisiert um 13:10:55 Uhr
Goto Top
Es ist sehr schwer Dir zu helfen. Wir wissen nichts über so gut wie alles, was relevant wäre.

Das SVC oder vergleichbar virtualisiert den Storage Layer und deine Server und Datenbanken haben keinen Bezug zum tatsächlich LUN und dessen Bedingungen.

Das Problem ist sicherlich sehr vielfältig zu lösen. Aber nicht hier und so.

Welche Datenbank-Engine ist im Einsatz und was muss die Software draus zaubern? Sind es jeweils Hardwares oder sind es VMs?

Wir haben monströs große MSSQL Server Cluster die nach dem Reboot oder wenn sqlserver.exe neu gestartet wird das Storage durch die Mangel drehen. Dann ziehen die Hosts auch 300-500k IOPS. Danach ist aber schnell Ruhe und viel wird über RAM abgefedert.

Unsere HANAs sind auch eher auf RAM aus, als auf Storage.

AA-HA kann sehr sehr viele Fallstricke haben. Sowohl im Storage als auch auf Ebene der Applikationen.
user217
user217 21.09.2023 um 13:59:21 Uhr
Goto Top
Was ist wenn man die DB auf ein starkes Blech legen würde und das Backupthema per archivlog etc. löst.
RZ Spiegelung ist nunmal träge, zumindest war das bei uns auch so.
emeriks
emeriks 21.09.2023 aktualisiert um 15:01:01 Uhr
Goto Top
Hi,
üblicherweise ist das so, dass gespiegelte SAN mit Cache namhafter Hersteller das "WriteAcknowlege" erst dann senden, wenn die Änderung in beiden Cache angekommen ist. Erst danach beginnen beide Seiten, es auf die Platten runterzuschreiben.
Weiterhin haben solche SAN dann eine extra Backupbatterie, welche genau diese und nur diese Cache absichert.
So jedenfalls kenne ich das z.B. von NetApp und von EMC, als das noch mein Thema war. Und das war schon vor Jahren so.

E.
ElmerAcmeee
ElmerAcmeee 21.09.2023 um 15:12:40 Uhr
Goto Top
Hallo,
bei meiner initialen Frage ging es nicht um eine direkte Problemlösung.
Eher darum, ob ich einen Gedankenfehler habe oder jemand weiß, wie das technisch funktionieren kann.

Um trotzdem noch die Rückfragen zu beantworten:
PureStorage X50 R2 Aktiv/Aktiv
DB / Anwendung: Progress / Openedge
Wir benötigen min 20.000 IOPs bei 8k Blockgröße und Queue Depth von 4 (QD ist der Knackpunkt). Das ganze als Single Thread Anwendung.
Eine Hardware-Bindung können wir aufgrund der notwendigen Flexibilität nicht eingehen.

Gruß und Danke
ElmerAcmeee
ElmerAcmeee 21.09.2023 um 15:22:08 Uhr
Goto Top
Hallo
Quote from @emeriks:

Hi,
üblicherweise ist das so, dass gespiegelte SAN mit Cache namhafter Hersteller das "WriteAcknowlege" erst dann senden, wenn die Änderung in beiden Cache angekommen ist. Erst danach beginnen beide Seiten, es auf die Platten runterzuschreiben.
So würde ich das auch erwarten. Ergibt absolut Sinn.

Weiterhin haben solche SAN dann eine extra Backupbatterie, welche genau diese und nur diese Cache absichert.
Sobald ich den Stromstecker am Storage1 ziehe, benötige ich den Inhalt des Cache ja schon auf Storage2.

So jedenfalls kenne ich das z.B. von NetApp und von EMC, als das noch mein Thema war. Und das war schon vor Jahren so.

Wir hatten mal eine NetApp mit der FlashCache Karte, haben uns aber nie Gedanken um diesen Punkt gemacht. Und auch nie den Stecker zum testen gezogen.

Gruß
emeriks
emeriks 21.09.2023 aktualisiert um 17:04:59 Uhr
Goto Top
Sobald ich den Stromstecker am Storage1 ziehe, benötige ich den Inhalt des Cache ja schon auf Storage2.
Wenn der Inhalt noch nicht im 2. Cache angekommen ist, dann bekommt der Client doch kein OK. Insofern ist das doch in Ordnung.
Wenn der Client das OK bekommen hat, dann ist es auch in beiden Cache. Wenn jetzt eine Seite ausfällt, bevor diese ihren Cache runtergeschrieben hat, dann schreibt das trotzdem die andere Seite es von ihrem Cache runter. Wenn die ausgefallene Seite dann wieder hoch fährt, dann schreibt sie erst alles auch ihrem eigenen Cache runter (Batterie vorausgesetzt) und repliziert dann anschließend alle zwischenzeitlichen Änderungen von der anderen Seite.

Wenn man da ein "richtiges" SAN im Cluster hat, dann haben die Hersteller solche Szenarien schon berücksichtigt. Alles andere würde den Namen nicht verdienen.
8585324113
8585324113 21.09.2023 um 20:03:51 Uhr
Goto Top
Du sagtest es gibt vier dedizierte Backend Replikationslinks?
Steht die Hardware in einem Haus?
Muss die Synchronität wirklich auf Blockebene hergestellt werden und kann nicht auf Applikationsebene erreicht werden?

Ich kenne die Pures nur aus diversen Teststellungen, es sieht aber so aus als würdest du mit den Bedingungen von Pure und eurer Umgebung leben müssen.

Cache abstellen kann was bringen, könnte aber zu einem Feuerwerk an IOPS führen.

Wie ist der Support?
ElmerAcmeee
ElmerAcmeee 22.09.2023 um 11:35:43 Uhr
Goto Top
Hallo,

Quote from @emeriks:

Wenn der Inhalt noch nicht im 2. Cache angekommen ist, dann bekommt der Client doch kein OK. Insofern ist das doch in Ordnung.
Ja, so würde ich das auch erwarten. Ich frage mich jedoch an dieser Stelle, wie schnell solch eine Replikation sein muss / kann.

Wenn man da ein "richtiges" SAN im Cluster hat, dann haben die Hersteller solche Szenarien schon berücksichtigt. Alles andere würde den Namen nicht verdienen.
Ja, auch hier stimme ich dir wieder zu. Aber wie ist das "technisch" umgesetzt?

Um ein extrem Bespiel zu bringen, in dem großen Bruder unseres Storage, kommt als Cache Intel Optane Memory zum Einsatz. Also Cache mit RAM Performance. Mit welcher Technik lässt sich dieser RAM synchron auf ein zweites SAN spiegeln?


Quote from @8585324113:

Steht die Hardware in einem Haus?
Nein, zwei verschiedene Gebäude
Muss die Synchronität wirklich auf Blockebene hergestellt werden und kann nicht auf Applikationsebene erreicht werden?
Ja. Die Failovertechnik der DB hat eine riesige Latte an Nachteilen für uns.
Ist möglich, steh als Plan x ganz unten auf der Liste.

Ich kenne die Pures nur aus diversen Teststellungen, es sieht aber so aus als würdest du mit den Bedingungen von Pure und eurer Umgebung leben müssen.
Wir können ja nicht damit leben, das ist ja das Problem. Die Thread bezieht sich schon auf den nächsten Schritt. Ein neues Storage. Aber da stoße ich halt auf genau diese Frage.
Ich versuche mich mit den Knackpunkten diese Thematik zu beschäftigen, bevor ich mit den Fragen an die Hersteller gehen kann. Wenn schon das Storage ausgetauscht wird (oder zusätzlich), dann sollten auch alle Anforderungen bekannt sein.

Cache abstellen kann was bringen, könnte aber zu einem Feuerwerk an IOPS führen.
? Ich kann und will nix abstellen.

Wie ist der Support?
Von Pure, Super!!!

Danke und Gruß
emeriks
emeriks 22.09.2023 um 12:07:11 Uhr
Goto Top
Wieviel Gebäude das sind, ist vollkommen egal. Interessant ist nur die Datenverbindung zwischen diesen. Wenn da LWL in ausreichender Bandbreite anliegt, dann ist es egal, ob der zweite Stapel im Nebenraum oder Nebengebäude oder anderem Stadtteil steht.

Wie die das genau machen mit dem Spiegeln des Cache, musst Du bitte den Hersteller fragen. Das hängt dann auch davon ab, welches Cluster Model genau man da aufsetzt. Da haben die Hersteller ja verschiedene im Angebot.

Wir haben bei uns auch gespiegelte Pure im Einsatz. Welche ganau und wie genau die jetzt im Cluster sind, kann ich nicht sagen. Nur, dass diese sauschnell sind und wir auch keine Probleme mit dem Spiegel haben.
8585324113
8585324113 22.09.2023 um 13:38:19 Uhr
Goto Top
Wir bräuchten einen Pure-Profi hier um die Details erschöpfen zu beantworten.

Zwei Gebäude in der selben Liegenschaft, somit wäre die Synchronisation in deutlich unter einer Sekunde möglich?

Wenn ich es richtig verstehe, dann hast du zwei DB-Server die das selbe Storage nutzen und due willst die DBs synchron halten über Blockebenenreplikation? Die Datenbankserver samt Software lassen sich dauerhaft somit im Betrieb Blöcke unterschieben? versteh ich das richtig? oder ist Replikation nicht deutlich weiter oben angesiedelt, vielleicht per IP?
Es ist auch nur eine Storage? Nicht zwei, die LUNS hochverfügbar spiegeln?

Das was das SVC von IBM seinem Wert verschafft, könnte dir helfen. Eine virtuelle Storage Schicht über den virtuellen Storages. Dann sehen die Hosts nur noch ihre LUNS mit dem Dateisystem.
Es gibt auch andere Anbieter die das können.

Bezüglich des Cache abstellen wäre interessant zu wissen ob das Acknowledgen sich verändert. Ohne Cache wird das Storage jedes Bit sofort lesen und schreiben müssen und macht das dann prinzipbedingt so schnell wie möglich.


Für mich wäre jetzt als erstes zu klären:

1. Ist das DB-Design mit den Applikationen dahinter eine unterstützte Anwendung. Wenn ja, wer macht den Support und kann den rahmen nennen in dem das läuft.

2. Ist das Ganze seitens Pure supportet. Wenn ja, wie ist die Zusage dass das unter welchen Bedingungen funktioniert.
ukulele-7
ukulele-7 22.09.2023 um 15:31:28 Uhr
Goto Top
Ganz ehrlich: Das ist Aufgabe des Herstellers das erschöpfend und zufriedenstellend zu beantworten. Ich weiß nicht was so ein Ding kostet aber ich würde sagen genug das man seine Antworten nicht selbst zusammen puzzeln muss.
ElmerAcmeee
ElmerAcmeee 25.09.2023 um 07:51:49 Uhr
Goto Top
Moin,
ich bin davon ausgegangen, dass jemand hier in der Runde ein SAN mit synchronem Spiegel einsetzt und sich näher mit der Technik auseinander gesetzt hat oder evtl eine ähnliche Anforderungen hat.

Die Termine mit dem Systemhaus und den Herstellern sind schon längst vereinbart.
Aufgrund des initialen Problems, wird diese Fragestellung auch mit der wichtigste Punkt sein.

Den Thread würde ich dann hiermit schließen...
Danke und nen schönen Start in die Woche
8585324113
8585324113 25.09.2023 um 07:59:37 Uhr
Goto Top
Ja, wir haben grundsätzlich Aktiv-Aktiv- LUNs und die Controller stehen onsite bis zu Kilometer auseinander. Offsite gibt es auch Konstrukte.

Dennoch wäre es naiv von uns auf dich zu schließen.
Zumal ich für uns behaupte mit Dell EMC jemand zu haben, der das Thema auch wirklich kann und dessen Support sein Geld wert ist.
Wie das bei Pure aussieht kann ich nicht beurteilen.
Unsere Leihstellungen haben uns nie überzeugt.
ElmerAcmeee
ElmerAcmeee 25.09.2023 um 08:27:25 Uhr
Goto Top
Hallo,
Quote from @8585324113:
Zumal ich für uns behaupte mit Dell EMC jemand zu haben, der das Thema auch wirklich kann und dessen Support sein Geld wert ist.
DELL hatte damals kein Produkt, welches unsere damaligen Anforderungen erfüllt hat.
Wir haben nun auch noch eine kleine Powerstore - aber eben nicht im Spiegel.

Wie das bei Pure aussieht kann ich nicht beurteilen.
Die Pure ist gut, schnell, zuverlässig und der Support ist der Knaller - schaut auch über den Tellerrand hinweg.
Kann ich nur empfehlen und möchte ich auch nicht mehr missen.
Nur hat sie keinen Cache, was in dem "Super-Spezial-Workload" uncool ist.
Wir sind in Deutschland mit der größte Kunde dieser *** Software. Evtl fällt dies bei Kleineren nicht so auf.

Sobald ich Erkenntnisse darüber habe, wie das mit dem Cache im synchronen Spiegel gelöst ist, würde ich das hier ergänzen - wenn ich es nicht vergesse. face-smile
8585324113
8585324113 25.09.2023 um 08:32:14 Uhr
Goto Top
Zitat von @ElmerAcmeee:

Hallo,
Quote from @8585324113:
Zumal ich für uns behaupte mit Dell EMC jemand zu haben, der das Thema auch wirklich kann und dessen Support sein Geld wert ist.
DELL hatte damals kein Produkt, welches unsere damaligen Anforderungen erfüllt hat.
Wir haben nun auch noch eine kleine Powerstore - aber eben nicht im Spiegel.

Wie das bei Pure aussieht kann ich nicht beurteilen.
Die Pure ist gut, schnell, zuverlässig und der Support ist der Knaller - schaut auch über den Tellerrand hinweg.
Kann ich nur empfehlen und möchte ich auch nicht mehr missen.
Nur hat sie keinen Cache, was in dem "Super-Spezial-Workload" uncool ist.
Wir sind in Deutschland mit der größte Kunde dieser *** Software. Evtl fällt dies bei Kleineren nicht so auf.

Sobald ich Erkenntnisse darüber habe, wie das mit dem Cache im synchronen Spiegel gelöst ist, würde ich das hier ergänzen - wenn ich es nicht vergesse. face-smile

"Damals" gab es noch die Compellent, die konnte alles. (Die Storage Liebe meines Lebens)
Das know how ist wie das der Equallogic immer noch vorhanden.

Ich kenne aber auch euren Bedarf nicht. Daher müßig die Diskussion.

Ansonsten, kannst du diese Fragen aus diesem Post beantworten: Cache bei gespiegeltem SAN

Und wie gesagt, ein SVC kann helfen. Die Köpfe werden gerne für herstellerübergreifende Migrationen eingesetzt.