-
Pelaa AWS Cloud Quest Cloud Practitioner:iä läpi seuraavat osiot:
- Cloud Computing Essentials (Web Page using S3)
- Cloud First Steps (EC2 instanses in multiple availability zones)
- Computing Solutions (EC2 instance types, scaling and connections)
- Networking Concepts (VPC, subnets, internet gateways, route tables, IP addresses, CIDR block notation, network access control lists, security groups)
- Databases in Practice (Amazon RDS, scaling and availability)
Näytä opettajalle, että olet saanut pelin tähän pisteeseen.
-
Piirrä kuva web-palvelusta, joka on toteutettu AWS:ään käyttämällä yhtä VPC:tä, yhtä EC2-serveriä sekä yhtä RDS-tietokantaa. Palvelu on toteutettu tietoturvasyistä niin, ettei EC2-serveriin eikä RDS-tietokantaan pääse suoraan internetin kautta (private subnet), vaan liikenne serverille ohjataan ALB:in kautta (HTTPS-sertifikaatti on sidottu ALB:iin). Palvelujen toimivuus on lisäksi varmistettu käyttämällä kahta availability zonea. Merkitse kuvaan: VPC, ALB, EC2-serveri, RDS-tietokanta, private subnet, public subnet, IGW, NAT GW sekä vaaditut 2 availability zonea.
Ota selvää mitä seuraavat AWS - termit tarkoittavat, ja tee niistä raportti:
- S3
- region
- VPC
- availability zone
- ALB
- NAT gateway
- security group
- network access control lists
- public/private subnet
- internet gateway
- route table
- RDS
- EC2
- Cloud Formation
- ECR
- ECS
- Task/service
- Environmental variables
- Autoscaling
Palauta harjoitustyö systeemityön repoon. Liitä mukaan kuvankaappaus pelin lopputilanteesta.
-
Web-serverin, reverse-proxy:n ja dockerin konffaaminen ubuntu-serverille:
- Luo Azure:een yksi Ubuntu server (Standard B1, North Europe). Tallenna pem-file K-levylle .ssh - kansioon.
- Ota SSH-yhteys ubuntu-serverillenne käyttäen Bash:iä.
- Asenna koneeseen docker, docker-compose sekä nginx (reverse-proxyksi).
- Konffaa se niin, että saat serverille käyntiin 2 docker-konttia (esim. notesdemo sekä fanikauppa), jotka aukeavat valitsemastasi subdomain-osoitteesta (voit alkuun testata yhtäkonttia portissa 80, sitten sulkea sen ja asentaa nginx:n):
- https://myown_subdomain.azure-created-domain
Ohjeet:
- Linux-virtuaalikoneen käynnistys Azureen ohje
- serverin asennus: ohje
-
Piirrä edellisestä set-up:ista arkkitehtuurikuva, jonka avulla selität miten kaikki toimii:
- miten selaimeen kirjoitettu osoite muuttuu serverin IP-osoitteeksi
- miten selain tietää, että palvelin on se kuka se väittää olevansa
- miten yhteys selaimen ja web-serverin välillä on suojattu (onko se suojattu?)
- miten pyydetty osoite (alidomain) löytää palvelimella oikeaan docker-konttiin ilman tietoa missä portissa se toimii
- miten serveri saa yhteyden tietokantapalvelimeen
- miten yhteys tietokantapalvelimelle on suojattu (onko se suojattu?)
- miten saat yhteyden web-serveriisi admin-toimintoja varten (onko yhteys suojattu?)
Kuvassa olisi hyvä näkyvä ainakin Azuren virtuaalipalvelin ja siihen asennetut docker-kontit sekä reverse-proxy (nginx), cpanel:in tietokantapalvelin, opettajan käyttämä AWS:n DNS-palvelin sekä virtuaaliset palomuurit (security groups) järjestelmien välillä.
Tee raportti, jossa selität järjestelmään liittyvät käsitteet sekä pystyttämäsi järjestelmän tiedot:
- public IP address, IP osoite serverillesi
- private IP address, IP osoite serverillesi
- private IP address with subnet mask, käyttämäsi IP osoite virtuaalisen aliverkon maskin kanssa
- DNS + domain name, verkko-osoite josta sivusi toimii
- subdomain, alidomain josta sivusi toimii
- DB server, missä osoitteessa tietokantapalvelin toimii
- security group, asetukset, jotka pitää olla voimassa, että yhteydet toimivat
- ingress/egress
- reverse-proxy, mikä se on, miksi se tarvitaan ja miten se on konffattu sivullesi
- SSH/SSH client, miten otat yhteyden serveriisi
- RSA/asymmetric encryption, miten se toimii
- privatekey/publickey, miten ne luodaan ja mihin ne tallennetaan
- certificate authority, mikä se on ja mihin sitä tarvitaan
- HTTPS/certificate, miten HTTPS enabloidaan webserverille
- sudo, missä tilanteissa tätä piti käyttää
- dockerhub, mikä se on ja mitä sen avulla tehdään
- docker, mikä se on ja mitä sen avulla voi tehdä
Palauttakaa harjoitustyö systeemityön repoon. Liitä linkkit konffaamallasi serverillä oleviin applikaatioihin.