vattenweb.smhi - geoforum · 2011-12-14 · 10 1048576 75,00% totalt 1398101 100,00% totalt 4.2...
TRANSCRIPT
vattenweb.smhi.se
Esa Falkenroth, [email protected], SMHI
Molntjänster för GIS, Stockholm 2011-11-29
vattenweb.smhi.se
2
Sedan starten år 2008 har SMHI arbetat med att utveckla, förvalta och tillgängliggöra information inom den svenska vattenförvaltningen. Detta har medfört att stora mängder vattenrelaterad information nu finns fritt tillgänglig via internet, och utvecklingen har fortsatt under 2011.
vattenweb.smhi.se
3
Produktionssystem Vattenförvaltning
5
SMHI Vattenförvaltning - Flera sätt att hämta data
Portal med kartor och nerladdning av stora datamängder i Excel-dok.
Utsökning sker ur miljard värden (postgres) Standardiserad WMS och WFS för kartor Web services för nerladdning av stora mängder
data i XML-format Interna web service för att hämta data från
databaser
vattenweb.smhi.se
Vi vill få ut data till folk som jobbar med vår miljö.
På vattenweb kan du hämta resultat från beräkningar med den högupplösta hydrologiska modellen S-HYPE Hype beräknar vattenföring och vattenkvalitet i
Sveriges sötvattenförekomster. >30,000 sötvattenförekomster Data från 1990 till 2009.
Vad är koppling till molntjänster? - Alla komponenter kan köras både hemma och i moln.- Modellberäkningar av vattenkvalitet (Amazon EC2)- Förgenerering av tiles i molnet (Amazon EC2)- Karttjänster (Geoserver hos Amazon EC2)- Datalagring i molnet (Amazon S3/EBS)- Webbapplikationen (Tomcat) kan köras molnet
Avdramatisera molnet Alla komponenter kan köras både “hemma” och i “molnet” Ägarna bryr sig egentligen inte om var det körs. Utvecklarna kör där det är smidigast : hemma eller molnet. Användarna ser ingen skillnad: hemma eller molnet. IT-ledningen följer utvecklingen och analyserar för- och
nackdelar med moln.
Vattenweb framgångsfaktorer
vattenweb = + data + agilitet + moln
+ webservice + open-sourceFramgångsrik kombination: om man tar bort någon av faktorerna så påverkas produktiviteten.
En titt bakom kulisserna
Webservice för modellkörningar Modellkörningar körs numera även i molnet. Modellen körs när man fått nya indata och kalibrering är klar Körtider på SMHI: ett par dygn. Efter det behövs inte servern. Nu körs modellen i molnet
körtid under 12 timmar. Istället för att köpa en in dyr hårdvara som bara körs några
dagar om året så tar vi “datakraft” från “kranen” (Amazon). Efter körningarna stängs och slängs server-instanserna i
molnet.
Webservice för modellkörningar Tekniskt: Vi skapade en webservice som bygger upp en
infrastruktur för modellkörningar Bygga upp disksystem Installera en (eller flera) linux-servrar Ladda upp indata och köra igång Hype-modellen i
Fortran Hämta resultat och städa bort servrar och diskar.
Nytta: Snabbare körtider innebär feedback “nästa dag” till forskarna istället för “nästa vecka”.
Bättre ekonomi eftersom “servern” slängs efter körningarna (inga löpande kostnader).
Webservice för förgenering av kartor Förgenerering av alla kartor Alla tio zoom-nivåer På SMHI tar kartgenerering
flera dagar. Teknik: webservice (Python-
script) skapar ett stort antal servrar
Körtid några timmar iställer för några dagar.
Kostnad: ett par hundra kr. Alternativet t förgenerering
är dyra högprestanda-servrar för kartor.
Zoomnivå Antal bilderProcent av
tot.
0 1 0,00%
1 4 0,00%
2 16 0,00%
3 64 0,00%
4 256 0,02%
5 1024 0,07%
6 4096 0,29%
7 16384 1,17%
8 65536 4,69%
9 262144 18,75%
10 1048576 75,00%
totalt 1398101 100,00%
Totalt 4.2 miljoner
bilder
14
SMHI
GWCGeoWebCache
UTVVattenWeb
GeoServer 10GeoServer 9GeoServer 8GeoServer 7GeoServer 6GeoServer 5GeoServer
4GeoServer 3GeoServer
2GeoServer 1
Amazon EC2
Amazon EC2 API-tools för att:
Först skapa en EC2-linuxserver och installerar RPM-paketerad GeoServer med alla shape filer.
Skapa många kopior av servern som skapar bilderna
Cachning var lämpligit första test: ej produktion, kan även köras på hemmaplan
Webservice för nerladdning av data Utvecklat för VISS men kan efter överenskommelse
anpassas/användas Vilka områden finns det data för?
GET /v1/downloadSetup1/ Hämta alla data för ett område
GET /v1/downloadSetup1/613954-134879/
https://vattenwebws.smhi.se/v1/ https://vattenwebws.smhi.se/v1/downloadsetup1/613913-134124 https://vattenwebws.smhi.se/v1/downloadsetup1/613913-134124/monthly_discharge
vattenweb.smhi.se, kartjänst med hjälp av molnet, webbtjänster och SMHI i molnet
16
Web service nerladdning av data
17
Extern användning från länstyrelserna:viss.lst.se
18
Intern användning web services Ett osäkert lager (DMZ) utan kopior av stora interna databaser
säker åtkomst till interna resurser på SMHI via webservice
Interna resurser åtkomliga men ändå skyddade.
INTERNET
DEMILITARIZED ZONE
ACCESS-MODULER (A-NET)
INTERNA RESURSER
vattenweb.smhi.se, kartjänst med hjälp av molnet, webbtjänster och SMHI i molnet
19
REST, så enkelt kan det vara
Package com.suryasuravarapu.jersey;
import javax.ws.rs.GET; import javax.ws.rs.Path; import javax.ws.rs.Produces;
@Path ("/helloworld") public class HelloWorldResource {
@GET @Produces ("text/plain") public String sayHello() { return "Hello World"; }}
Tredjepartsprodukter Apache/Tomcat/Jersey
tar hand om anropet från ”maskinen”
Jersey bygger på Representational state transfer (REST) JSR 311(JAX-RS) standarden.
Svar från web service kan formateras:
- XML enligt kundkrav
- XML enligt Inspire-specifikationer
- Excel enligt kundkrav
- Textfiler…. etc, etc..
Från hype till Hype:En praktiskt sätt att använda molnet. Molnet är industrialisering av IT
Mitten av 1900-talet byggde SMHI egna datorer och gjorde egna operativsystem.
Nu köper vi servrar som “hyllvara” SMHI har flera hundra servrar för vår produktion Nästa steg var virtualisering men vi gör fortfarande
installation operativsystem och sköter driften i våra egna datorhallar
Hur upplever man molnet: Användarna? Systemägarna? De som betalar? Utvecklare ? IT-avdelningen ?
Erfarenheter från användare Som användare ser jag ingen skillnad mellan applikationer i
molnet eller om de körs på SMHI.
Erfarenheter från systemägare “Gör som ni tycker är bäst.” Ägarna bryr sig inte om vi kör i molnet eller på lokala servrar.
Erfarenheter av ekonomi Rimliga kostnader men inte gratis. Detaljerad mikrouppföljning av kostnader möjlig
Serveranvändning per timme Lagring Nätverkstrafik
Prissättningen är komplex Man får betala för allt! Inga kryphål. svårt att i förväg uppskatta kostnad Spot-prismarknad minskar kostnader Stora möjlighet att trimma kostnader (pris/prestanda)
Kreditkort krävs för Amazon-molnet. Ingen fakturering! En person i organisationen måste lämna ut kortnummer ;)
Vi underskattade kostnad (räknade inte med backup) Microinstanser är gratis :) Open-source + skalbarhet = inga extra licenskostnader
24
Amazon Elastic Compute Cloud (EC2)Exempel på server typer och kostnad:
Type Virtualcores
Memory Instnacestorage
plattform Price(EU) linux
kr/timme
Micro Instance 1 613MB 10GB EBS 32 or 64-bit $0.025 free to try
0,17
Small Instance 1 1.7GB 160GB 32-bit $0.095 0,63
Large Instance 2 7.5GB 850GB 64-bit $0.38 2,51
High-CPU Extra large
8 7GB 1690GB 64-bit $0.76 5,02
För aktuella prisuppgifter se amazon.com
Rätt att jobba effektivt Om jag behöver en programvara för att göra mitt jobb så
laddar jag ner den Om jag behöver en server för att göra mitt jobb så får jag
skapa den i molnet (slipper investeringsbegäran... och väntetider)
Jag får tillgång till en fullskalig utvecklingsmiljö. Minskar mitt jobb med att gå från utveckling till produktion Alla data finns på plats (inte bara lite testdata) Jag blir produktivare
Agila projekt kräver agil infrastruktur Utvecklare vill snabbt leverera det som krävs men hamnar
ofta i väntläge för att det tar tid att köpa/leverera/installera servrar.
Typiskt tar det någonstans mellan 1-10 veckor att få en server redo med ITIL-processer på plats.
I molnet tar det ca 3 minuter inklusive administration.
Erfarenheter: systemutvecklare
Erfarenheter från systemutvecklare Tänk efter före näri det gäller “deploy” : Slipp inlåsningseffekt
Bygg från “scratch” (tom ren server) Minimera användning av “leverantörsberoende” Programvaror som kan användas på olika OS.
Måste själv ta ansvar för delar av det IT-avdelningen gör! Hålla reda på vilka servar är igång Konfigurera brandväggar Säkerhetspatchning av servrar Ta backup på data Driftövervakning (uptimerobot) Avveckling av datavolymer och servrar Kostnadsuppföljning Automatisera processer
Skalbarhet är fantastisk men prestanda per server är “medel” Bandbredden är skalbar med per server är den “medel”.
Vad tycker IT? IT-ledning har koll på utvecklingen
Det finns för- och nackdelar med att “tappa kontrollen” Policy nu: Måste följa lagstiftning: PUL, etc. System med låga tillgänglighetskrav kan läggas ut i molnet. F.n. tillgänglighet i molnet i nivå med SMHIs egna miljöer. Det finns en oro att okontrollerad heterogenitet smyger in via
molnet. Evangelister och hype-rapporter förvirrar.
28
Amazon EC2, skapa kontohttp://aws.amazon.com/ec2
Amazon EC2, konsolhttps://console.aws.amazon.com/ec2/home
Billigt och enkelt att prova:
29
Frågor?
Esa Falkenroth, Informationsarkitekt SMHI.
Esa Falkenroth Är SMHIs informationsarkitekt sedan tio år tillbaka
jobbar med projekt för stora datamängder inom bl.a. SMHIs vattenförvaltning.
Även arbete åt EU-kommissionen om standarder för utbyte av geospatiala data (Inspire tematisk arbetsgrupp om meteorologi/atmosfär).