sql >> Database >  >> RDS >> MariaDB

Prestaties stimuleren in een hybride cloudconfiguratie

Een hybride cloud verwijst naar een gemengde computer-, opslag- en serviceomgeving die bestaat uit een on-premises infrastructuur, privécloudservices en een openbare cloud-orkestratie tussen de verschillende platforms. Door een combinatie van openbare clouds, on-premises computing en privéclouds in uw datacenter te gebruiken, beschikt u over een hybride cloudinfrastructuur.

Prestaties hebben doorgaans een lagere prioriteit in een hybride cloud, aangezien de focus van een hybride cloudinfrastructuur doorgaans ligt op herstel na noodgevallen, beschikbaarheid en schaalbaarheid. In deze blogpost gaan we enkele algemene tips behandelen om de prestaties van onze applicaties, workloads en clusters die draaien op een hybride cloudconfiguratie te stimuleren.

Toegewezen hosts/instanties/bronnen

De kosten van cloudservices zouden lager zijn vanwege het uitgebreide delen van bronnen. Een hogere mate van delen betekent echter automatisch minder prestatiegaranties.

Cloud-instanties zijn gevoelig voor onvoorspelbare stabiliteit, maar met wat extra kosten kunnen we dit risico verminderen met speciale middelen. Toegewezen instanties zijn instanties die worden uitgevoerd op hardware die is toegewezen aan één Tenant. Gewoonlijk zijn de toegewezen hosts of instances fysiek geïsoleerd op hosthardwareniveau van instances die toebehoren aan andere tenants. Dit garandeert voldoende middelen voor de service en stabiliseert de prestaties van uw workloads praktisch op de lange termijn. Afhankelijk van je budget, heb je meerdere opties om te kiezen voor toegewijde bronnen zoals toegewijde hosts, instanties of bandbreedte.

Er zijn ook veel aanbiedingen en kortingen als u van plan bent de instances voor een langere periode te gebruiken. Door zich bijvoorbeeld vast te leggen op AWS EC2 Reserve Instance, kunnen gebruikers tot 70% van de instancekosten besparen in vergelijking met de standaard on-demand kosten. Zodra de applicaties of workloads zijn getest en klaar zijn voor productie, wordt het ten zeerste aanbevolen om te kiezen voor een langetermijncontract, op voorwaarde dat u voldoende middelen toewijst aan de instantie voor die specifieke contractperiode.

Bandbreedtebeheer

Bandbreedte is duur. Wat wel duur is, is de infrastructuur om de bandbreedte van de ene plaats naar de andere te vervoeren. De aanleg van glasvezel, carrier-grade en provider-grade routeringshardware, de monitoring- en onderhoudskosten om alles draaiende te houden, de verhuur van datacentersuites, het bemannen van een 24/7 Network Operation Center (NOC)-engineer, dragen allemaal bij aan de hoge prijs van een betrouwbare bandbreedte. Om nog maar te zwijgen van het tempo van technologie, gebruikerseisen en de levensduur van leveranciersproducten, vereisen vaak dat een groot deel van de bovengenoemde investering wordt weggegooid en dat de levenscyclus elke 7 tot 10 jaar, in sommige gevallen 5 jaar, moet worden uitgevoerd.

De meeste openbare clouddiensten maken gegevensuitwisseling met andere Cloud Service Providers (CSP's) mogelijk, wat op meerdere manieren kan worden bereikt:

  • Overdracht van gegevens via openbare IP-adressen via internet.

  • Een beheerde VPN-service gebruiken tussen het lokale netwerk en het CSP-netwerk.

  • Maak rechtstreeks verbinding vanaf het lokale netwerk of privécloudnetwerken met de andere CSP, zoals Partner Interconnect for Google Cloud of AWS Direct Connect voor AWS.

  • Gegevens overdragen naar de andere CSP via een Common Point of Presence (POP).

  • Netwerkpeering met private cloudnetwerken en het CSP-netwerk.

Deze opties verschillen wat betreft overdrachtssnelheid, latentie, betrouwbaarheid, Service Level Agreements (SLA's), complexiteit en kosten. Ongeacht de opties, het idee is hetzelfde:hoe kleiner de gebruikte gegevensoverdracht, hoe lager de kosten.

Om het bandbreedtegebruik te verminderen, is compressie het belangrijkste dat we moeten doen. De meeste replicatieservices ondersteunen nu verbindingscompressie, wat de gegevensoverdracht tussen meerdere sites aanzienlijk kan verminderen. Als u bijvoorbeeld verbindingscompressie voor MySQL-master-slave inschakelt, kan het bandbreedtegebruik gemakkelijk worden teruggebracht tot 1,5x, zonder extra configuratie op het compressieniveau of het algoritme. Dit wordt de lossless datacompressietechniek genoemd. U kunt een nog hogere compressieverhouding instellen, met een compromis van verwerkingskracht voor compressie en decompressie op beide eindpunten.

De plaatsing van de werklast is ook belangrijk. Met hybride cloudconfiguratie kunnen applicaties en workloads zowel in private als publieke clouds voorkomen. Voor interne applicaties is het veel beter om ze in de private cloud dichter bij de on-premises te plaatsen met een lagere netwerklatentie. Om de prestaties van openbare applicaties te verbeteren, plaatst u de applicaties op de edge-servers van Content Delivery Network (CDN), wat de last van de hoofdserver aanzienlijk zal verminderen om alleen het dynamische verzoek te verwerken en de statische contentlevering naar meerdere edge-servers te verplaatsen, die geografisch dichter bij de eindgebruikers staan.

Snelle versleuteling

Versleuteling onderweg en in rust is verplicht in een hybride cloudconfiguratie, aangezien we slechts een fractie van de infrastructuur bezitten. We willen niet dat nieuwsgierige blikken naar onze gegevens kijken terwijl ze worden verzonden, of het risico lopen op gegevensinbreuken door diefstal of buitenstaanders die fysieke toegang tot onze gegevens hebben. In eenvoudige bewoordingen moet elk deel van bewegende gegevens of niet-fysiek toegankelijke gegevens worden versleuteld, punt uit. Sommige versleutelingscodes kunnen echter de snelheid en prestaties van de workloads in gevaar brengen.

Een veelvoorkomende misvatting is om aan te nemen dat een bericht dat is versleuteld met AES256 moeilijker te kraken is dan dezelfde informatie die is beveiligd met AES128. Het is logisch dat een grotere sleutelgrootte een grotere complexiteit met zich meebrengt, maar zoals bij alle systemen zijn implementaties onderhevig aan zwakke punten. Ervan uitgaande dat we het hebben over AES128 versus AES256, is er een bekende zwakte in de toetsuitbreidingsfunctie die invloed heeft op AES256. In wezen reduceert de zwakte de complexiteit van AES256 tot die lager dan die van AES128.

Sommige tunneling-tools zoals WireGuard staan ​​bekend om hun snellere codering en vrij eenvoudig te implementeren bij het tunnelen tussen meerdere sites. Het werkt vergelijkbaar met hoe SSH-codering werkt, met behulp van een asymmetrische cryptografiebenadering. Volgens dit onderzoek is WireGuard gemiddeld 58% sneller dan OpenVPN op alle geteste locaties. Snellere versleuteling betekent minder tijd voor het versleutelen en ontsleutelen van gegevens, waardoor de prestaties van uw gegevensuitwisseling aanzienlijk toenemen.

Als je je afvraagt ​​hoe je WireGuard VPN instelt voor een hybride cloudomgeving, bekijk dan deze blogpost, Multi-Cloud-implementatie voor MariaDB-replicatie met WireGuard.

Bewaak alles

Cloudgebaseerde omgevingen zijn afhankelijk van een gecompliceerde set resources en het is een uitdaging om de beschikbaarheids- en prestatieproblemen te identificeren die de meeste invloed hebben op zakelijke services. Het operationele team moet de gezondheid van applicaties holistisch kunnen bewaken, inclusief de bijbehorende cloudinfrastructuurcomponenten.

De prestatieverbetering op een hybride cloud kan niet plaatsvinden zonder te allen tijde een breed inzicht in alle bronnen. Bronnen zoals instance- en netwerkgebruik, applicatieprestaties, gebruikerservaring, latentie en logbestanden zijn erg belangrijk om te verzamelen en te samplen om ervoor te zorgen dat we prestatie- en beschikbaarheidsproblemen proactief kunnen oplossen voordat ze de eindgebruikers bereiken of erger worden. Een verkeerde toewijzing van middelen vindt altijd plaats in een slechte leveringsomgeving, wat uiteindelijk leidt tot een slechte capaciteitsplanning en verspilling van geld en middelen.

De meeste openbare cloudproviders bieden diepgaande monitoringservices, die meerdere lagen en componenten van de geabonneerde cloudservices bestrijken. Het ontbrekende onderdeel is echter meestal een monitoring-unificatie tussen verschillende cloudplatforms, providers en omgevingen. Open-source alles-in-één monitoringtools zoals Icinga, Nagios Core en Zabbix kunnen worden geconfigureerd om bijna alles te monitoren dat betrokken is bij een hybride cloud, met name cloudinstanties, netwerken, services en applicaties.

In het geval van prestatiebewaking voor databaseservers in de hybride cloudomgeving, kunnen de volgende bronnen helpen:

  • MariaDB-prestaties bewaken in een hybride cloud

  • PostgreSQL bewaken in een hybride omgeving


  1. Hoe kan ik bigint (UNIX-tijdstempel) converteren naar datetime in SQL Server?

  2. Hoe Acosd() werkt in PostgreSQL

  3. Is er een manier om tekstgegevens naar de database in PostgreSQL te laden?

  4. SQL Select Distinct