Heim > Technologie-Peripheriegeräte > IT Industrie > Beschleunigung der Cloud: Übergang zu Cloud Native

Beschleunigung der Cloud: Übergang zu Cloud Native

William Shakespeare
Freigeben: 2025-02-09 09:03:09
Original
117 Leute haben es durchsucht

Accelerating the Cloud: Transitioning to Cloud Native

Dieser Artikel ist der dritte Teil der "Accelerating Cloud Computing" -Serie von Ampere Computing. Sie können die ersten und zweiten Teile hier lesen.

Wie wir im zweiten Teil dieser Serie gezeigt haben, ist es häufig ein relativ einfacher Prozess. Zum Beispiel beschrieb Momento seine Umschreckungserfahrung als „viel weniger Arbeit als wir erwartet hatten

Natürlich kann die Anwendung komplex sein, mit vielen Komponenten und Abhängigkeiten. Je mehr Komplexität, desto mehr Probleme haben Sie möglicherweise. Aus dieser Perspektive liefert die Erfahrung von Momento mit der Wiederholung von Pelikan -Cache zu Ampere Cloud -nativen Prozessoren viele Einblicke. Das Unternehmen hat eine komplexe Architektur aufgebaut, die es so weit wie möglich automatisieren möchte. Der Umsatzprozess bietet ihnen die Möglichkeit, dies zu erreichen.

Anwendungen, die für die native Cloud -Verarbeitung geeignet sind

Erstes, was zu berücksichtigen ist, ist zu bestimmen, wie Ihre Anwendung von der Umschichtung auf Cloud-nativen Computerplattformen profitiert. Die meisten Cloud -Anwendungen eignen sich perfekt für die native Cloud -Verarbeitung. Um zu verstehen, welche Anwendungen von Cloud-nativen Ansätzen am meisten profitieren können, haben wir die Ampere-Cloud-native Prozessorarchitektur sorgfältig untersucht.

Um eine höhere Verarbeitungseffizienz und einen niedrigeren Stromverbrauch zu erzielen, hat Ampere verschiedene Ansätze zur Gestaltung unseres Kerns angewendet-wir konzentrieren uns auf die tatsächlichen Rechenanforderungen von Cloud-nativen Anwendungen in Bezug auf Leistung, Leistung und Funktionalität. Prozessorfunktionen, die zu Anwendungsfällen ohne Cloud hinzugefügt wurden. Beispielsweise ist eine skalierbare Vektorskalierung nützlich, wenn eine Anwendung eine große Menge an 3D-Grafiken oder eine bestimmte Art von Hochleistungs-Computing-Verarbeitung verarbeiten muss, verleiht jedoch einen Kompromiss in Bezug auf Stromverbrauch und Kerndichte. Für Anwendungen, die SVE erfordern, wie z.

Für Cloud-native Workloads bedeuten ein verringerter Stromverbrauch und eine erhöhte Kerndichte bei Ampere-Kernen, dass Anwendungen eine höhere Leistung erzielen und weniger Stromverbrauch und weniger Wärme verbrauchen. Kurz gesagt, für die meisten Anwendungen können Cloud-native Computerplattformen überlegene Leistung, höhere Energieeffizienz und höhere Rechendichte bieten und gleichzeitig die Betriebskosten senken.

Ampere ist auf mikroservicebasierte Anwendungen mit vielen unabhängigen Komponenten spezialisiert. Solche Anwendungen können stark von der Verfügbarkeit von mehr Kernen profitieren. Ampere bietet eine hohe Kerndichte von 128 Kernen auf einem einzelnen Chip und bis zu 256 Kerne in einem 1U -Chassis mit zwei Slots.

Tatsächlich können Sie die Vorteile von Ampere wirklich sehen, wenn Sie horizontal (d. H. Lastausgleich über viele Fälle über viele Fälle) skalieren. Da Ampere linear mit Last skaliert, bringt jeder von Ihnen hinzugefügte Kern direkte Vorteile. Vergleich dies mit der X86 -Architektur, in der die Vorteile jedes neuen Kernels schnell reduziert werden (siehe Abbildung 1).

Accelerating the Cloud: Transitioning to Cloud Native

Abbildung 1: Da Ampere linear mit Last skaliert, bringt jeder zugegebene Kern direkte Vorteile. Vergleich dies mit der X86 -Architektur, in der die Vorteile jedes neuen Kernels schnell reduziert werden.

proprietäre Abhängigkeiten

Eine der Herausforderungen, denen sich Anträge gegenübersieht, besteht darin, proprietäre Abhängigkeiten zu identifizieren. Überall in der Software-Lieferkette, in der binäre Dateien oder dedizierte X86-basierte Softwarepakete verwendet werden müssen, müssen die Bekanntkung genommen werden. Viele dieser Abhängigkeiten finden Sie durch die Suche nach Code, der "x86" im Dateinamen enthält. Der Ersatzvorgang ist in der Regel einfach zu vervollständigen: Ersetzen Sie das X86-Paket durch die entsprechende ARM-basierte Version oder kompilieren Sie die verfügbaren Pakete für die Ampere Cloud native Plattform, wenn Sie Zugriff auf den Quellcode haben.

Einige Abhängigkeiten verursachen Leistungsprobleme, jedoch keine Probleme. Betrachten Sie ein maschinelles Lernrahmen, in dem Code für die X86 -Plattform optimiert ist. Das Framework kann weiterhin auf nativen Cloud-Plattformen ausgeführt werden, ist jedoch nicht so effizient wie auf X86-basierten Plattformen. Die Lösung ist einfach: Identifizieren Sie äquivalente Versionen von Frameworks, die für ARM ISA optimiert sind, wie sie in der Ampere -AI enthalten sind. Schließlich gibt es einige Ökosystemabhängigkeiten. Auf eine kommerzielle Software, auf die Ihre Anwendung angewiesen ist, wie beispielsweise die Oracle-Datenbank, ist möglicherweise nicht als ARM ISA-basierte Version verfügbar. Wenn dies der Fall ist, ist dies möglicherweise keine geeignete Anwendung für die Umschichtung, bis eine solche Version verfügbar ist. Problemumgehungen für solche Abhängigkeiten, z. B. das Ersetzen von Cloud-nativ-freundlichen Alternativen, können möglich sein. Dies erfordert möglicherweise erhebliche Änderungen an Ihrer Anwendung.

Einige Abhängigkeiten befinden sich außerhalb des Anwendungscodes, wie z. B. Skripte (d. H. Spielbücher in Ansible, Rezepte in Chefkoch usw.). Wenn Ihr Skript einen bestimmten Paketnamen oder ein bestimmtes Schema annimmt, muss es möglicherweise geändert werden, wenn sie auf einer Cloud-nativen Computerplattform bereitgestellt werden. Die meisten dieser Änderungen sind einfach, und eine detaillierte Überprüfung des Skripts zeigt die meisten dieser Probleme. Achten Sie darauf, die Namensannahmen anzupassen, die das Entwicklungsteam im Laufe der Jahre möglicherweise getroffen hat.

Die Realität ist, dass diese Probleme normalerweise leicht zu bewältigen sind. Sie müssen sie nur gründlich identifizieren und verarbeiten. Vor der Bewertung der Kosten für die Bekämpfung solcher Abhängigkeiten ist es jedoch erforderlich, das Konzept der technischen Schulden zu berücksichtigen.

technische Schulden

In Forbes Artikel "Technische Verschuldung: schwer zu messbare Hindernisse in der digitalen Transformation", wird technische Schulden als "die Anhäufung relativ schneller Reparaturen im System oder schwere, aber fälschlicherweise gerichtete Investitionen auf lange Sicht finanziell sein. Auf lange Sicht kann das System schnell geführt werden, aber die angesammelten technischen Schulden werden zu hoch sein, um zu ignorieren. Im Laufe der Zeit erhöht technische Schulden die Kosten für Änderungen der Softwaresysteme, ebenso wie der Umbau von Kaffeemaschinen schließlich seine Leistung verringern wird.

Als Momento, das Pelikan Cache in den Ampere-Cloud-nativen Prozessoren neu gestaltete, hatten sie die Protokollierungs- und Überwachungscode installiert, die sich ab vor 15 Jahren auf Open-Source-Code stützte. Der Code funktioniert, also wird er nie aktualisiert. Wenn sich das Tool im Laufe der Zeit ändert, muss der Code jedoch neu kompiliert werden. Es sind einige Arbeiten erforderlich, um die Rückwärtskompatibilität aufrechtzuerhalten und Abhängigkeiten vom alten Code zu erstellen. Alle diese Abhängigkeiten haben sich im Laufe der Jahre angesammelt. Bei der Aufrechterhaltung dieser Abhängigkeiten werden Sie irgendwann zu komplex und teuer, müssen Sie nur zu einem neuen Code übergehen. Es kann gesagt werden, dass technische Schulden zurückgefordert werden.

Wenn Sie Ihre Anwendung auf eine Cloud-native Computing-Plattform einsetzen, ist es wichtig, Ihre aktuelle technische Schulden zu verstehen und Ihre Entscheidungen zu fördern. Die Aufrechterhaltung und Anpassung des Legacy -Code im Laufe der Jahre kann technische Schulden ansammeln, was die Umsetzung noch komplizierter macht. Dies selbst ist jedoch nicht die Kosten für die Umsetzung. Auch wenn Sie sich dafür entscheiden, nicht auf eine andere Plattform umzubringen, müssen Sie eines Tages all diese schnellen Korrekturen und andere Entscheidungen ausgleichen, um die Aktualisierung Ihres Codes zu verschieben. Das hast du noch nicht getan.

Wie real ist technische Schulden? Laut einer McKinsey -Studie (siehe Forbes -Artikel) schätzten 30% der CIOs in der Studie, dass mehr als 20% ihres technischen Budgets für neue Produkte tatsächlich zur Beantwortung von Problemen im Zusammenhang mit technischen Schulden verwendet wurden.

Red -Bereitstellung ist eine großartige Gelegenheit, um einige der technischen Schulden zu beheben, die im Laufe der Jahre im Antrag angesammelt wurden. Stellen Sie sich vor, Sie nehmen einen Teil der „20%“ der Technologieschulden zurück, die Ihr Unternehmen angeht. Dies kann zwar die Zeit des Umsatzprozesses erhöhen, aber der Umgang mit technischen Schulden hat die Vorteile der Vereinfachung der Komplexität der Verwaltung und Aufrechterhaltung des Codes langfristig. Sie können beispielsweise viele Abhängigkeiten "zurücksetzen", indem Sie Ihren Code in Ihre aktuelle Entwicklungsumgebung migrieren, anstatt sich weiterhin auf sie zu verlassen. Dies ist eine Investition, die sich sofort auszahlen kann, indem Sie Ihren Entwicklungszyklus vereinfachen.

Anton Akhtyamov, Produktmanager bei Plesk, beschrieb seine Erfahrungen in der Umschreckung. "Nach dem Portieren haben wir einige Einschränkungen gestoßen. Plesk ist eine große Plattform, die viele Add-On-Module/-Erweiterungen installieren kann. Einige werden nicht von ARM unterstützt, wie Dr. Web und Kaspersky Antivirus. Einige Erweiterungen sind auch nicht verfügbar. Die meisten unserer Erweiterungen werden bereits mit Paketen unterstützt, die von Anbietern für ARM wieder aufgebaut sind. Kritische Probleme. “

Weitere praktischere Beispiele für Neuanpassungsanwendungen für Cloud-native Plattformen finden Sie in der Portierung von Takua zu OpenMandriva on Arm und Ampere Altra.

Im vierten Teil dieser Serie werden wir uns mit den Ergebnissen eintauchen, die Sie bei der Umstellung Ihrer Anwendungen auf eine Cloud-native Computing-Plattform erwarten können.

Das obige ist der detaillierte Inhalt vonBeschleunigung der Cloud: Übergang zu Cloud Native. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage