make connections share ideas be inspired SAS Grid Manager få en dirigent til dit SAS-orkester Jens Helsted Kristensen, SAS Institute
Hvad handler dette indlæg om? SAS Grid Manager er nøglen til en fremtidssikret og driftsstabil SAS-infrastruktur. Hør, hvordan Grid Manager giver en bedre, fleksibel og prisoptimal udnyttelse af din serverinfrastruktur på tværs af serviceniveauer og miljøer. Vi ser også på, hvordan Grid Manager kan sikre en høj oppetid og en automatiseret, fleksibel og overvåget afvikling af faste jobs.
Agenda Hvad er SAS Grid Manager? Hvordan virker Grid Manager? Hvad kan man bruge Grid Manager til? Grid-topologi
Hvor er vi henne? Platform Management Tools Solution 1 Solution 2 Solution 3.. Functional Services Analytical Services Reporting Services Data Management Services Foundation Services Compute Services Storage Services Integration Services Solution n Development Tools
Hvad er SAS Grid Manager? Grid Manager er en suite af softwarekomponenter, der intelligent kobler to eller flere fysiske eller virtuelle servere sammen, så de kan virke som en enhed, uden at man mister fordelene ved at have individuelle enheder Hovedkomponenter: Grid Manager Scheduler Management plug-in Monitoreringsværktøj
Hvad leverer SAS Grid Manager? Funktionalitet Hvad er fidusen ved det? Workload management Høj oppetid Effektiv styring af job, brugere, licenser og servere Undgår, at SAS ikke kan bruges Distribueret processering Bedre performance Udnyttelse af standardhardware Reducerede omkostninger
Hvordan styres workload på et grid? Basale koncepter Klienter, der sender job til Grid Manager Scheduler Grid-køer Grid Manager Grid Computenoder
Hvordan styres workload på et grid? Griddets serverressourcer kan inddeles efter behov for reserver, licenser m.v. Real-Time Decision Manager Strategy Management Enterprise Guide Web og Dashboard Udvikling og Test Data Integration Stored Processes Enterprise Miner Grid Computenoder
Haster Prioriterede kunder Webklienter Normal Natbatchkørsel Eksperimenter Test Udvikling Hvordan styres workload på et grid? Et blik på køerne Grid-køer
Hvordan styres workload på et grid? I normal arbejdstid ser prioriteringen sådan ud Haster Prioriterede kunder Webklienter Normal Natbatchkørsel Eksperimenter Test Udvikling 1 2 3 4 5 6 7 8
Hvordan styres workload på et grid? og om natten måske sådan her Haster Prioriterede kunder Webklienter Normal Natbatchkørsel Eksperimenter Test Udvikling 1 4 6 7 2 3 5 8
Haster Prioriterede kunder Webklienter Normal Natbatchkørsel Eksperimenter Test Udvikling Hvordan styres workload på et grid? Og sidst på måneden måske sådan her 1 2 3 4 5
Hvordan opnås høj oppetid? Arbejdsnoder Grid Manager Ved udfald: 1. Workload fordeles på andre servere 2. Tabte job genkøres Worker Nodes
Hvordan opnås høj oppetid? Single points of failure Ved udfald tager failover-serveren fat, hvor master-serveren slap Kan kombineres med netværks-failover Grid Manager Automated Failover Failover Grid Manager Heartbeat Polling Metadata Server Automated Failover Failover Metadata Server Heartbeat Polling
Use case-scenarier til Grid Manager Scenarie: Forstoppelse En enkelt SAS-server tæppebombarderes med job, og svartider stiger tit imod uendeligt og/eller serveren går ned. Brugere bliver utålmodige og re-submitter job, hvilket kun gør ondt værre. Serveren har kapacitet til alle job, hvis bare de var bedre fordelt over tid. Hvordan løser Grid Manager det? Job bliver sat i kø, og serveren afvikler job i den rækkefølge, de ankommer, og igangsætter kun det optimale antal job ad gangen. Brugere vil nogen gange opleve længere svartider, når mange submitter job samtidigt, men den gennemsnitlige svartid falder, og ingen mister job. Den samlede belastning falder, fordi job ikke bliver re-submitted.
Use case-scenarier til Grid Manager Scenarie: Høj kritikalitet Der er rigtig mange SAS - brugere og/eller SAS bliver anvendt i forretningsprocesser, hvor svartider er kritiske. Konsekvenserne af nedbrud i SASeksekveringsmiljøet er således alvorlige. Hvordan løser Grid Manager det? Job spredes ud og eksekveres på en række arbejdsservere (worker nodes), og man er derfor ikke afhængig af en enkelt server Hvis en worker node går ned midt i et job, bliver jobbet samlet op og derefter eksekveret på en anden worker node. Desuden laves automatisk failover på kritiske komponenter (single point of failure), så en anden server tager over inden for ganske kort tid, hvis en server med en kritisk komponent fejler. Oppetider på 99.9%+ bliver dermed mulige.
Use case-scenarier til Grid Manager Scenarie: Konflikt mellem batch og online Batchjob optager det meste af serverkapaciteten inden for et givet batchvindue og/eller har svært ved at blive færdige til tiden. Batchjobbene kommer derfor let i konflikt med brugerstyrede enkeltjob, og kritiske batchjob går ned og skal håndkøres uden for batchvinduet med forsinkelser til følge. Hvordan løser Grid Manager det? Planlagte batchjob og brugerstyrede job sendes til separate køer, hvor prioritering og ressourceadgang definerer, i hvilke tidsrum hvilke jobs har forrang. Avancerede algoritmer tilsikrer samtidig, at serverkapaciteten udnyttes maksimalt i spidsbelastede perioder. Eksempelvis kan brugerstyrede job stoppes, hvis de ikke er afsluttet ved batchvinduets begyndelse, og genstartes, når batchkørslerne er færdige. Hvor det er muligt at parallelisere job, kan disse fordeles over flere servere i griddet og dermed køres signifikant hurtigere.
Use case-scenarier til Grid Manager Scenarie: Dårlig kapacitetsudnyttelse Over tid er der blevet skabt flere SAS -miljøer i forskellige funktionelle siloer. Ingen af disse miljøer udnytter deres maksimale kapacitet, eller gør det kun i korte perioder. Der kan også være test eller udviklingsudstyr, der står ubrugt i længere perioder ad gangen. Hvordan løser Grid Manager det? Job fra forskellige SAS-områder eksekveres i et fælles grid, hvor applikationerne deles om den samlede kapacitet. Da spidsbelastninger typisk falder forskelligt, og da der ikke er behov for at duplikere reservekapacitet, kan det samlede serverforbrug reduceres, hvilket sparer både drifts-, licens- og hen ad vejen også anskaffelsesomkostninger.
Use case-scenarier til Grid Manager Scenarie: Usikkerhed om behov Det er usikkert, hvad kapacitetsbehovet for de nuværende løsninger egentlig er her og nu og/eller, hvad behovet vil blive på sigt. Det kan også være, at der er en ambition om at tilføje nye SAS -løsninger hen ad vejen. Hvordan løser Grid Manager det? Frem for at købe enkelte (og ofte dyre) servere med en hvis reservekapacitet kan man anskaffe (potentielt relativt billige) standardservere, der netop modsvarer det aktuelle behov. I takt med at behovet ændrer sig, kan nye servere fjernes eller tilføjes griddet meget hurtigt, og der kan tilføjes mindre servere ad gangen frem for at skulle købe helt nye store servere. Ældre serveres økonomiske levetid kan dermed forlænges, fordi griddet understøtter et heterogent servermiljø. Samtidig bliver marginalinvesteringen for nye SASløsninger ofte væsentlig mindre, fordi der ikke skal investeres i separat serverkapacitet med reserve osv.
Use case-scenarier til Grid Manager Scenarie: Modernisering Servervedligehold og opgradering til nye (SAS -) softwareversioner medfører ofte lange nedetider og komplekse big bang - projekter. Hvordan løser Grid Manager det? Da griddet består af flere worker nodes, kan disse problemfrit tages ud til service én ad gangen. Job vil fortsat kunne eksekveres, men noget af kapaciteten vil selvfølgelig mangle. Ved opgradering af større SAS-installationer vil man kunne have to grids med hver sin version kørende parallelt, og i takt med at de enkelte løsninger bliver frigivet og ønskes opgraderet til den nye version, flyttes worker nodes fra det ene grid til det andet.
Use case-scenarier til Grid Manager Scenarie: Midlertidige spidsbelastninger Korte spidsbelastningsperioder kan forekomme omkring periodeafslutninger, men udvikling, test, initial loads og lignende udgør også situationer, hvor der kortvarigt er behov for ekstra kapacitet. Hvordan løser Grid Manager det? Ekstra serverkapacitet kan midlertidigt tilføjes griddet, enten ved at lade udviklings- eller testudstyr indgå i produktionsgriddet midlertidigt, eller ved at tilføje anden midlertidig serverkapacitet. Ved hjælp af ressourcestyring (køer, prioritering m.v.) kan test og udvikling også få adgang til produktionskapacitet, idet ressourcestyringen tilsikrer, at der til stadighed er tilstrækkelig kapacitet til forsvarligt at udføre nødvendige driftsopgaver.
Use case-scenarier til Grid Manager Scenarie: Tunge jobs Hvordan løser Grid Manager det? Tunge Enterprise Minermodeller med mange iterationer eller Data Integration-job med parallelle spor tager lang tid at eksekvere. Jobbet deles op i stumper, der kan eksekveres parallelt (eventuelt ved brug af PROC SCAPROC), og disse job spredes ud over flere processorer og flere servere. Derved kan svartiderne reduceres ganske betydeligt afhængigt af griddets størrelse og filsystemet.
Infrastrukturarkitektur servertopologi Analytic Data Warehouse / Marts Relational Data Store High-Performance Analytics Appliances Primary SAS Analyst s Desktops Failover Data Tier SAS Compute Nodes Web Application Server(s) SAS Web Reporting Clients Server Tier Metadata Tier Web Tier Client Tier
SAS Grid Computing product topology Grid Client Central File Server for: Job Deployment Directories Source and Target Data SAS Executables SAS Management Console Grid Manager and Schedule Manager SAS Data Integration Studio SAS Enterprise Guide SAS Program SAS Metadata Server Platform RTM for SAS SAS Enterprise Miner Other SAS Clients Platform TM LSF Platform TM LSF Platform TM Gid Grid Management Service Platform TM LSF Platform Process Mgr TM Base SAS SAS/CONNECT SAS Grid Server SAS Data Step Batch Server SAS Grid Workspace Control Server Server Platform TM LSF Base SAS SAS/CONNECT SAS Grid Server SAS Data Step Batch Server Grid Node 1 Platform TM LSF Base SAS SAS/CONNECT SAS Grid Server SAS Data Step Batch Server Grid Node n
Opmærksomhedspunkter Grid kræver et fælles filsystem, som alle servere i griddet skal kunne nå. Kapaciteten af filsystemet skal tilpasses til antallet af kerner (cores) i griddet. For at optimere performance bør Grid Manager vurderes i sammenhæng med servervirtualisering og SAS Scalable Performance Data Server. 25
Centrale budskaber SAS Grid Manager er det sikre kort på hånden, hvis man vil have en analytisk arkitektur, der sikrer kostoptimal performance på både kort og langt sigt. Grid Manager er en it-orienteret løsning, der repræsenterer et reelt alternativ til suboptimale siloløsninger
make connections share ideas be inspired Spørgsmål?