lovejade98
    • Create new note
    • Create a note from template
      • Sharing URL Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Customize slides
      • Note Permission
      • Read
        • Only me
        • Signed-in users
        • Everyone
        Only me Signed-in users Everyone
      • Write
        • Only me
        • Signed-in users
        • Everyone
        Only me Signed-in users Everyone
      • Engagement control Commenting, Suggest edit, Emoji Reply
    • Invite by email
      Invitee

      This note has no invitees

    • Publish Note

      Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

      Your note will be visible on your profile and discoverable by anyone.
      Your note is now live.
      This note is visible on your profile and discoverable online.
      Everyone on the web can find and read all notes of this public team.
      See published notes
      Unpublish note
      Please check the box to agree to the Community Guidelines.
      View profile
    • Commenting
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Suggest edit
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
    • Emoji Reply
    • Enable
    • Versions and GitHub Sync
    • Note settings
    • Note Insights New
    • Engagement control
    • Make a copy
    • Transfer ownership
    • Delete this note
    • Save as template
    • Insert from template
    • Import from
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
    • Export to
      • Dropbox
      • Google Drive
      • Gist
    • Download
      • Markdown
      • HTML
      • Raw HTML
Menu Note settings Note Insights Versions and GitHub Sync Sharing URL Create Help
Create Create new note Create a note from template
Menu
Options
Engagement control Make a copy Transfer ownership Delete this note
Import from
Dropbox Google Drive Gist Clipboard
Export to
Dropbox Google Drive Gist
Download
Markdown HTML Raw HTML
Back
Sharing URL Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Customize slides
Note Permission
Read
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
Write
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
Engagement control Commenting, Suggest edit, Emoji Reply
  • Invite by email
    Invitee

    This note has no invitees

  • Publish Note

    Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

    Your note will be visible on your profile and discoverable by anyone.
    Your note is now live.
    This note is visible on your profile and discoverable online.
    Everyone on the web can find and read all notes of this public team.
    See published notes
    Unpublish note
    Please check the box to agree to the Community Guidelines.
    View profile
    Engagement control
    Commenting
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    • Everyone
    Suggest edit
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    Emoji Reply
    Enable
    Import from Dropbox Google Drive Gist Clipboard
       Owned this note    Owned this note      
    Published Linked with GitHub
    • Any changes
      Be notified of any changes
    • Mention me
      Be notified of mention me
    • Unsubscribe
    # Appunti partitioner ## Timestamps utili dopo l'esame, per JUMP <https://www.youtube.com/watch?v=SOTamWNgDKc> - Budget: 1:02:30 (approfondire actions anche se lui non le guarda) - Free tier 1:07:00 - 1:22:00 c'è un link per rimpolpare le presentazioni ## PARTITIONER EXAM Avanzamento Simo: <https://youtu.be/SOTamWNgDKc?t=9755> 4:06:38 Avanzamento Giadi: <https://youtu.be/SOTamWNgDKc?t=24015> 6:35:39 ### How Long will take it to pass Codice : CLF-C01 -> CCP (Corso base entry-level AWS) ![](https://i.imgur.com/oCCMTmn.jpg) ### Exame Guide 50 domande con punteggio, ne puoi sbagliare 15. 15 domande sono senza punti, ma non lo sai. Possono essere mega difficili o nuove, servono a loro. Divisione per Argomenti: - 13 Domande su: **Cloud Concept** - 16/17 Domande su: **Security and Compliance** - 21/22 Domande su **Technology** - 10/11 domande su **Billing and Pricing** Dettagli esame: - per passare 70%. (700/1000) - non esiste alcuna penalità per le risposte sbagliate. - possono essere a risposta multipla (2 o + risposte sono corrette) o a scelta multipla (1 sola risposta è corretta) - Valido per 3 anni, poi lo devi rifare. La durata dell'esame è di **2 ore** quindi abbiamo un tempo di risposta pari a 1,5 minuti per domanda. ### Free Practice Exam Il **cloud computing** è la pratica dell'utilizzo di una rete di Server Remoti hostati su internet con lo scopo di immagazzinare, gestire e processare dati. ### Evolution of Cloud Hosting #### Dedicated Server Un singolo Hardware dedicato ad una singola azienda che runna una singola applicazione / Sito. Più performante ma estremamente costoso. #### VPS Un singolo Hardware dedicato ad una singola azienda che runna più web-app / siti (Sub-Machines). Meno costoso e miglior utilizzo ed isolamento delle risorse. #### Shared Hosting Un singolo Hardware dedicato a più aziende che runna più web-app / siti. Poco isolamento dei dati, limitate funzioni ma prezzo migliore. #### Cloud Hosting Più Hardware che attuano come una singola macchina (sistema astratto) con l'utilizzo di Cloud Server. E' flessibile, scalabile, costo pari al consumo e altamente configurabile. ### Cloud Service Provider (CSP) E' un'azienda che offre servizi di Cloud che ospitano altri servizi e che possono formare, unendosi, un'**architettura cloud**. Tali servizi devono essere, inoltre, accessibili tramite **Single Unified API** (AWS API) e devono fornire una fatturazione basata sull'**utilizzo orario** del servizio stesso. Deve inoltre avere un'infrastruttura come un servizio (IaaS) e un'automazione tramite infrastruttura come codice (IaC). ### Market Research Reports Gartner mette AWS come leader di mercato, poi Azure e Google Cloud Platform. DO e Linoide troppo piccoli ### Cloud Services I metatipi di servizi su cloud più comuni sono - Compute (EC2 per AWS) - Networking (VPC) - Storage - Databases Chiaramente ce ne sono molti di più, quelli sono i più usati e comuni sulle CSP. ### Evolution of Computing #### Types of Cloud Computing - SaaS: Software as a Service -> prodotto che è runnato e gestito da un service provider. (Gmail, SalesForce or Office365) - PaaS: Platform as a Service -> Focus sulla gestione e deploy delle app. (heroku). - IaaS: Infrastructure as a Service -> Costruisce blocchi per Cloud IT. (AWS, Microsoft Azure) ### Cloud Computing Deployment Models - Public Cloud (Cloud Native) -> il progetto è costruito e buildato tutto su un CPS. - Private Clound (On Promise) -> Tutti i progetti sono sui datacenter dell'azienda. - Hybrid -> Usa entrambe le soluzioni scritte sopra. - Cross Cloud -> Vengono utilizzati vari Cloud Provider. ### Metered Billing Le GCP si pagano a uso e paghi solo quello che usi. Ci devi stare attento se alcuni "default" costano un casino. Se ti sbagli puoi farti un ticket e c'è caso che ti danno un ok la prima volta per non pagarlo. ### Budget Creare budget costa tipo 0,10€/giorno (2 gratis). Lo puoi mettere ricorrente. Puoi filtrare per regione o servizio. I servizi che ti mandano qualcosa, tipo una mail, possono usare il servizio AWS SNS (Simple Notification Service) (te lo setta in automatico). ### Free Tier Disponibile per i primi 12 mesi. Se vai su /free/ ci sono tutti i servizi gratis con le condizioni per averlo gratis. Puoi attivare una mail di alert quando sfondi il free tier. 10 allarmi gratuiti e 1000 notifiche email gratuite ogni mese. ### CloudWatch Puoi mettere un allarme per il budget anche tramite CloudWatch. CloudWatch è un insieme di sotto servizi. Se vai su alarm, c'è una sezione sugli allarmi sul billing. Anche questo servizio è a pagamento dopo qualche alert. Mette un SNS anche questo servizio. ### MFA Mettilo sul root ### Innovation Waves Glossario inutile 1: E' un onda innovativa che si divide in 4 Fasi - P rosperity - R ecession - D epression - E mprovement ### Burning Platform Glossario inutile 2: Una tecnologia che non viene più usata e che le aziende abbandonano velocemente perché temono di rimanere troppo indietro ### Digital Trasformation Checklist AWS Digital Trasformation -> Public Sector page. Serve per i documenti fuffa sulla trasformazione cloud. ### Evolution of computing power Potenza di computing. Le CPU general, la GPU e la quantum. Servono a cose diverse, quindi non si sostituiscono. Ce ne saranno altre in futuro. ### Amazon Braket E' il servizio per il quantum computing di AWS. Non è troppo utile, ma esiste. ### Benefits of Cloud - **Agilità**: Maggiore velocità ed agilità - **Pay-as-you go pricing** - **Economia di Scala**: Benefici dovuti dalla massiva economia di scala - **Ricerca Globale**: Diventa globale in poco tempo - **Sicurezza** - **Affidabilità** - **Alta disponibilità** - **Scalabilità** - **Elasticità** #### I 6 vantaggi dell'uso del Cloud - **Pay on Demand**: paghi solo quanto utilizzi con un costo a chiamata o a minuti, secondi o ore. - **Sharing Costs**: è possibile condividere i costi con i propri clienti. - **Scale up or down**: è possibile scalare l'utilizzo a seconda della richiesta. - **Increase Speed and Agility**: è possibile lanciare le risorse con pochi click in pochi secondi. - **Focus on your Costumers** - **Go global in a few seconds** https://docs.aws.amazon.com/it_it/whitepapers/latest/aws-overview/six-advantages-of-cloud-computing.html ### AWS Global Infrastructure Regions: una zona geograficamente separata dall'altra in una location diversa Ogni regione ha 3 availability zone US-EAST-1 è la prima ad avere i nuovi servizi. Non tutti i servizi sono in tutte le regioni. Ci sono servizi per regione e servizi globale. I globali sono quelli che cooperano su tutte le regioni ### Availability Zones Datacenter vicini, in edifici differenti ma abbastanza vicini per avere poca latency (< 10ms) entro 100km. High availability è un termine che indica che un servizio è disponibile su 3 datacenters, una sorta di certificazione. Certi servizi ti permettono di settare una subnet che è legata alle availability zones. Esempio di AZ: US-EAST-1a,US-EAST-1b ### Fault Tolerance Usare più AZ permette di essere più fault tolerant, in quanto ogni AZ è isolata. Alcuni servizi li devi settare tu multi-az, altri lo sono di deafult e non devi fare nulla. Ogni AZ è isoltata dalle altre e mantiene unicamente un collegatmento tramite una rete privata: la **global Network**. #### Fault Domain -> Availability Zones Il Fault Domain è una sezione della rete che è vulnerabile a danni se sono presenti criticità al device o al sistema. Il suo scopo è quello di limitare i danni unicamente al dominio e NON all'esterno di esso, limitando i danni. #### Fault Level -> AWS Region Il Fault Level è l'insieme di Fault Domain. ### Global Network AWS Global Network (scheletro di AWS) è un rete privata che mette in connessione le region, usando edge location (PoP)per entrare ed uscire dall'internet publico. Le edge location sono molte di più che i data center e se non devi uscire su internet è meglio stare dentro la global network in quanto è molto più veloce ### Point of Presence POP è un datacenter o un insieme di hardware che si pone come intermediario tra le regioni AWS e lo user finale Per AWS sono, quindi, **edge location** (datacenters che mantengono una copia di tutti i più popolari file che consegnano all'utente finale) e **regional edge caches** (Datacenters che mantengono cache maggiori di file meno popolari), hardware in giro per il mondo per cacheare file e dati e servirli più velocemente tra region le usano - Cloudfront - Amazon S3 Transfer Acceleration: permette di uppare un file su un edge invece che direttamente su s3 in modo che sia tutto più veloce una volta caricato - AWS Global Accelerator: permette di portare le richieste di un servizio ### Aws Direct Connect EC2 è una connessione dedicata, privata e protetta per connettere i data center più velocemente che internet normale usando la global network ### Local Zones sono datacenter vicino ad aree metropolitane altamente popolate che puoi usare se il tuo traffico è li, ce ne è una a Los Angeles per esempio. Sono opt-in (serve un ticket) ### Wavelenght Zones Puoi collegare una subnet ad una Wavelenght Zones, è come se fosse una avaiability zone ma ci si connettono più velocemente quelli che usano un operatore specifico in quella zona in 5g (es: vodafone uk ) ### Data Residency Residency è il luogo dove le risorse delle organizzazioni risiedono. Data Sovereignty e la Compliance Boundaries sono le giudisdizioni che regolano quei dati. Puoi usare: - AWS Outpost -> Ti prendi una rack fisica di server e tuoi dati stanno li. Costa tanto. - AWS Config -> puoi avere degli alert quando qualcuno provisiona fuori alla giurisdizione di riferimento - IAM policies -> puoi mettere delle regole su tutta l'organizzazione sulla redidency ### AWS for Government Ci sono region isolate solo per le entità governative americane ### AWS in China Aws in china è su un pannello separato perché i cinesi non vogliono. amazonaws.cn dei avere una p.iva cinese per usarlo. devi ri-registrarti. Su aws global invece c'è Singapore ma è fuori da The Great Firewall, aws china è già dentro. Ci sono 2 regioni. ### Sustainability The Climate Pledge -> progetto per arrivare a net zero carbon entro 2040. - 2025 tutta energia rinnovabile e maggiore efficienza cloud - server più efficienti degli altri a livello energetico - usano acqua non potabile per raffreddare i data center https://aws.amazon.com/it/sustainability/ ### AWS Ground Station Ti fa controllare satelliti senza sviluppare antenne da terra. ok. Per esempio se devi scaricare le immagini satellitari da un server e mettere su s3. ### Outpost E' un servizio di AWS che fornisce una rack di server fisica (un frame design per mantenere ed organizzare equipaggaimento IT) per il tuo account. Esistono 3 forme diverse: * 42U * 1U * 2U ## Cloud architect Solution Architect -> Qualcuno che organizza una progetto usando più sistemi via ricerca, documentazione e sperimentazione. Un **cloud architect** si occupa solamente di architettare una soluzione utilizzando i servizi Cloud, ma deve tenere conto dei seguenti termini: ### Availability Availability è l'abilità che assicura che un servizio rimanga disponibile. High Availability, significa no single point of faulure. Su AWS per esempio puoi usare ELB per trasferire il traffico su diverse macchine ### Scalability High Scalability significa scalare le risorse in base al traffico ricevuto, alla memoria e alla capacity computativa. Puoi fare vertical scaling (server più grosso) o orizontal scaling (più server uguali + ELB). Di solito è meglio la 2. Auto Scaling Groups (ASG) è una funzionalità di AWS che permette di aumentare o diminuire i server basandosi sulle metriche. ### Elasticity High Elasticity fare quello solo in maniera automatica, encrease o decrease. ### Fault tolerant Avere un sistema pronto per switchare se qualcosa va storto. Il secondario switcha solo se qualcosa va male. RDS Multi AZ lo fa. ### Durability High Durability è quanto facilmente fai disaster recovery. Guardare CloudEndure Disaster Recovery. ## Business Continuity Plan Un piano di continuità è quello che devi fare se succede un incidente. Devi capire quanto tempo puoi stare giù senza perdere troppi soldi RPO: quanti dati puoi perdere, nel senso l'ultimo backup che hai e che recupererei se qualcosa va giù. RTO: quanto tempo puoi stare giu, massimo, prima di causare problemi enormi all'azienda. ### Disaster Recovery Options **Low**: Backup & Restore: backuppi i dati e quando salta qualcosa ricrei una nuova infranstruttura. Ci vogliono ore ma costa poco mantenerlo. **Low-mid**: Pilot Light: copi tutto in un'altra regione ma tieni tutto spento. ci vogliono 10 minuti, costa ancora poco. **Scalability**: Warm Standby: hai una copia dell'infrastruttura in un'altra regione, scalata al minimo. ci metti minuti ma costicchia **Scalability**: Multi-site active: hai una copia scalata al massimo in un'altra regione. ci metti un secondo ma costa tutto x2 ## Architecture Diagram - Puoi scaricare le icone e metterle su XD, PS o quello che vuoi - Puoi usare lucidchart - Sono anche in powerpoint ## AWS API ogni servizio ha un host diverso autorization hai bisogno di un token Sia la console, che la cli che l'SDK usano le api. Le api sono su docs.aws.amazon.com Di solito non si usano, ma si usa l'SDK. ## AWS Managment Console L'interfaccia Web di AWS, la home della dashboard. Le interfaccie dei servizio sono diverse, ogni interfaccia è gestita da team diversi. ## AWS Tools for Powershell C'è una implementazione di AWS per powershell che si può utilizzare su win. Si può usare anche dal pannello web tramite cloudshell. ## Amazon Resources Names (ARN) Le risorse su AWS hanno un identificativo che è composto da: - partition (AWS, AWS cina o AWS GOV US) - servizio (ec2, s3,iam) - regione (us-central, eu-central) - account ID del creatore - resource id es:arn:partition:service:region:account-id:resource-id ## CLI C'è anche una bash, si può usare anche tramite cloudshell tramite pannello oppure installandola sulla tua macchina. Usa python. ## AWS SDK SDK ufficiale per integrare AWS in diversi linguaggi di programmazione, facendo le stesse cose che si fanno tramite interfaccia o cli. ## Access Keys Le "Access Keys" si compongono di una **key e di un secret** e permettono di fare accessi programmatici alle risorse AWS quando si utilizzano le API AWS al di fuori della console. Le chiavi: * non devono mai essere condivise da più utenti (l'utente stesso le crea), * non devono mai essere commitate all'interno di una codebase * possono essere disattivate e riattivate * possono essere attive contemporaneamente massimo due chiavi * hanno gli stessi permessi alle risorse degli utenti che le hanno create Le chiavi si trovano all'interno della cartella nascosta .aws/credentials se si utilizza la cli. (saltare da 4.09 a 4.12 parla di come attivare e disattivare le chiavi) ## AWS Doc AWS Documentation è una lunga collezione di documentazione tecnica su come utilizzare i servizi AWS. Leggi [QUI](https://docs.aws.amazon.com/) la documentazione (Dal minuto 4.12 al minuto 4.15 parla di come leggere la doc) ## AWS Shared Responsibility Model Shared Responsibility Model è un framework cloud sicuro che definisce gli obblighi di sicurezza di un cliente verso il Cloud Service Provider (CSP), in questo caso AWS. ![](https://i.imgur.com/C1MjhX8.png) ### Riassumento l'immagine sopra **AWS** mette a disposizione: * **lato HARDWARE** e Infrastruttura globale: * Regions * Availability Zones * Edge Locations * Physical Security * **lato SOFTWARE**: * Compute * Storage * Database * Networking Il **cliente** invece si prende la responsabilità per: * le configurazioni di software o servizi di terzi parti * la piattaforma di utilizzo * le applicazioni installate * IAM settate * le configurazioni di infrastrutture Virtuali e sistemi * sistemi operativi * network * firewall * le configurazioni di sicurezza inerenti i dati * Encryption Data Client-Side * Encryption Server Side * Protezione del traffico sulla rete * Dati del cliente In breve il cliente è responsabile della sicureazza all'interno del cloud e nella configurazione dei dati, mentre AWS è responsabile per la sicurezza al di fuori del cloud. ![](https://i.imgur.com/Itigzhc.png) ### Tipi di Responsabilità Cloud Computing ![](https://i.imgur.com/rg2DNIF.png) ### Compute * Infrastructure as a Service (Iaas) * **Bare Metal** => EC2 Bare Metal Instance: Il cliente è responsabile della configurazione del sistema operativo e ne è supervisore, mentre AWS è responsabile della macchina fisica * **Virtual Machine** => Elastic Cloud Compute (EC2): Il cliente è responsabile delle configurazioni del sistema operativo lato client e del runtime del container, mentre AWS è supervisore e si occupa della macchina fisica. * **Containers** => AWS Elastic Container Service (ECS): il cliente è responsabile della configurazione, del deploy e dello storage dei containers, mentre AWS è responsabile del sistema operativo, ha il ruolo di supervisore, e del tempo di runtime dello stesso. * Platform as a Service (PaaS) * **Managed Platform** => AWS Elastic Beanstalk: Il cliente è responsabile del proprio codice, della configurazione dell'ambiente, delle strategie di deploy e delle configurazioni dei servizi collegati, mentre AWS è responsabile dei servers, del sistema operativo, della rete, dello storage e della sicurezza. * Software as a Service (SaaS) * **Content Collaboration** => Amazon WorkDocs: Il cliente è responsabile del contenuto del documento, della gestione dei files e della configurazione dei permessi di accesso e condivisione, mentre AWS è responsabile dei server, del sistema operativo, della rete, dello storage e della sicurezza. * Functions as a Service (FaaS) * **Functions** => AWS Lambda: Il cliente è responsabile del proprio codice, mentre AWS è responsabile del deployment, del runtime del containter, della rete, dello storage e della macchina fisica. ### Shared Responsibility Model Alternate ![](https://i.imgur.com/PrHSZOv.png) > Riassumendo: Il cliente è responsabile per i dati che risiedono su AWS e tutte le loro configurazioni di condivisione ed accesso, mentre il CSP è responsabile a grandi linee della infrastruttura. ## Computing Services ### Elastic Compute Cloud **Elastic Compute Cloud** (EC2) è un servizio che permette di lanciare Macchine Virtuali (VM) che permettono di creare, copiare, ridimensionare e migrare i server. E' possibile runnare multiple VM all'interno di uno stesso server fisico permettendo la condivisione dei costi con altri clienti. La macchina virutale prende il nome di **Instance**. EC2 è un server che permette di avere configurazioni altamente modificabili dove è possibile scegliere **AMI** come: * Il numero di CPU * La quantità di RAM * La quantità di Bandwidth * Il sistema operativo * La possibilità di attaccare degli Hard Disk per lo storage (EBS). EC2 viene considerata la **spina dorsale** di AWS in quanto la maggior parte dei servizi offerti utilizzano EC2, come ad esempio s3, RDS, Lightsail, DynamoDb e Lamba. #### Macchine Virtuali Le Virtual Machine sono un'emulazione di un computer fisico e vengono utilizzate come software. **Amazon Lightsail** è un servizio di server virtuali gestiti e viene considerato come una versione semplificata di EC2. #### Containers I containers sono un'emulazione di un sistema operativo che runnano multipli workloads su una singola instanza. I containers sono usati in architetutture di microservizi. **Elastic Container Service** (ECS) è un servizio gestito tramite container che supporta i Docker Containers. Va di fatto a lanciare un EC2 con un container Docker installato. **Elastic Container Registry** (ECR) è una repository per la gestione immagini di container. Per poter lanciare un container è necessario avere un'immagine. **ECS Fargate** è un servizio di container serverless. Può essere considerato con un ECS pay-on-demand, quindi come un servizio scalabile. **Elastic Kubernetes Service** (EKS) è un servizio **Kubernetes** (K8, un software open source creato da Google) totalmente gestito. #### Serverless Sono servizi totalmente gestiti da AWS e che prevedono un'alta scalabilità. AWS Lambda è un servizio serverless che si basa sulle funzioni. Di fatto è possibile runnare codice senza provisionare o gestire un server. (Dal minuto 4.39 al minuto 4:58 viene mostrato come creare una ECS e una lambda). #### High Perfomarce Computing (HPC) **HPC** è un insieme di centinai di migliaia di server con connessioni veloci tra loro con lo scopo di aumentare la capacità di calcolo. AWS ParallelCluster è uno strumento di gestione open-source di cluster che permette di avere un deploy molto semplice e una gestione dell'HPC clusters. ##### Nitro System **Nitro System **è una combinazione di hardware dedicati e hypervisor che permettono una maggiore sicurezza e maggioare velocità. Tutte le nuove istance EC2 utilizzano Nitro System. * **Nitro Cards** => carte specifiche per VPC, EBS e Instance Storage * **Nitro Security Chips** => integrate all'interno della scheda madre, si occupano di proteggere le risorse hardware. * **Nitro Hypervisors** => hypervisor leggeri che si occupano di gestire le perfomances andando ad allocare la memoria e la CPU ##### Bare Metal Instance **Bare Metal Instance** instanze che non prevedono l'utilizzo di un hypervisors in modo da runnare direttamente i workloads sulla macchina assicurando performances massime e controllo. M5 e R5 sono instanze EC2 che runnano come bare metal. **Bottlerocket** è un sistema operativo open-source Linux-based di AWS che permette di runnare containers su macchine virtuali o su host bare metal. ### Edge and Hybrid Computing Services **Edge Computing** è quando si pusha il computing workloads fuori dalla propria rete per arrivare ad un altro hardware come ad esempio il cellulare. **Hybrid Computing** è quando si è in grado di runnare il workloads sia sul datacenter on-premise che su una VPC (Virtual Private Cloud). **AWS Outposts** che è un insieme di server dove è possibile inserire il datacenter. Questo permette di usare le API di Aws e i servizi come ad esempio EC2 come datacenter. **AWS WaveLength** permette di buildare e lanciare la propria applicazione in un datacenter di telecomunicazioni. Sono molto più veloci grazi alla rete 5G. **VMWare Cloud** on AWS permette di gestire on-premise macchine virtuali usando VMWare come istanze EC2. **AWS Local Zones** sono datacenters che si trovano fuori dalle regioni di AWS. ### Cost and Capacity Management **Cost Management** corrisponde al come poter salvare denaro **Capacity Management** corrisponde al come poter far incontrare la domanda di traffico ed uso aggiungendo o aumentando le prestazioni di server. #### EC2 Spot Instances, Reserved Instanced and Savings Plan E' possibile risparmiare in termini di computing, pagando totalmente o parzialmente, creando un contratto annuale o essendo flessibile su avalaibility o sull'interruzione del servizio di computing. #### AWS Batch AWS Batch pianifica, schedula ed esegue i batch di workloads computing attraverso il full range dei servizi compute, si può utilizzare instanze spot per risparmiare soldi. #### AWS Compute Optimizer AWS Compute Optimizer suggerisce come ridurre i costi e aumenta le performance usando Machine learning per analizzare i vecchi costi #### EC2 Autoscaling Groups (ASGs) Automaticamente aggiunge o rimuove EC2 Servers per incontrare la corrente domanda di traffico. Sarà possibile risparmiare denare in quanto si utilizzeranno solamente i server necessari. #### Elastic Load Balancer (ELB) Distribuisce traffico a instanze multiple, può reindirizzare quindi il traffico da instanze instabili a instanze salutare o può spostare traffico su "Availability Zones" differenti. ### Tipi di Servizi di Storage #### Elastic Block Store (EBS) - Block Viene utilizzato quando si ha la necessità di avere un hard drive attaccato a una virtual machine. ![](https://hackmd.io/_uploads/H1y9d-Iv2.png) - I dati sono splittati in ogni split block. - Si può direttamente accedere al sistema operativo. - Supporta solamente una scrittura alla volta #### AWS Elastic File Storage (EFS) - File Viene utilizzato quando si ha la necessità di condividere un file con multipli user o quando le VM hanno bisogno di accedere allo stesso drive. ![](https://hackmd.io/_uploads/BkMFY-Uv3.png) - I file sono immagazzinati sia con i dati che con i metadati - E' possibile fare multiple connessioni con la condivisione della rete - Supporta read multiple mentre i file possono essere solo fatti da una persona #### Amazon Simple Storage Service (S3) - Object Viene utilizzato quando si vuole uplodare file senza preoccuparsi sull'infrastruttura. ![](https://hackmd.io/_uploads/HJie2Z8D3.png) - Gli oggetti sono immagazzinati con dati, metadati e id univoci. - Scala senza limiti di storage o limiti di file - Supporto letture e scrittura illimitate ##### S3 Object Gli oggetti contengono i dati come se fossero file. Nel dettaglio contengono: - **key**: è la chiave che identifica l'oggetto ed è di fatto il nome dell'oggetto stesso - **value**: è il valore espresso in sequenze di byte - **version ID**: versione dell'oggetto caricato - **metadata**: sono informazioni aggiuntive sull'immagine. ##### S3 Bucket I bucket contengono gli oggetti, essi possono essere divisi in cartelle. Gli s3 Buckets devono avere un nome univoco. ##### S3 Storage Classes Le classi di storage sono: - S3 Standard (default): sono veloci ed hanno un grande percentuale di disponibilità - S3 Intelligent Tiering: Usa ML per analizzare l'utilizzo degli oggetti e determinare la clacce più giusta dello storage. - S3 Standard-IA (Infrequent Access): è veloce e risulta essere economico se si accede ai file meno di una volta al mese. La percentuale di disponibilità è però più bassa dello standard - S3 One-Zone-IA: è veloce ma gli oggetti esistono solo nella zona di Avalaibility. Ha un'altra percentuale di disponibilità ed è più economia della standard ma i dati possono venire distrutti. - S3 Glacier: Serve per tenere in memoria per lungo tempo gli oggetti, ma il get di questi può prendere molto tempo. è molto cheap. - S3 Glacier Deep Archive: il servizio meno costoso. Il tempo per avere un oggetto è pari a 12 ore. #### AWS Snow Family Sono storage e device usati per muovere fisicamente data in un cloud esterno, usati quando muovere tali dati su internet o tramite connessioni private risulta essere troppo difficoltoso, costoso o lento. - Snowcone è una versione moolto piccola di Snowball che può trasferire un massimo di 8 TB - Snowball Edge and Snowball sono device di Storage di medie dimensioni (50-80 TB). - Snowmobile is a container con un'alta capacità computazionale che trasporta fino a 100PB di dati per viaggio. #### Storage Service - **Simple Storage Service** (S3) è uno storage ad oggetti serverless dove è possibile caricare file molto grandi e un numero illimitato di file. Si paga a seconda di quanto viene storato al suo interno. - **S3 Glacier** è uno servizio storage cold, il cui design viene considerato come una soluzione a basso costo per i backup a lungo termine. Viene considerato duratura e a lunga durata - **Elastic Block Store (EBS)** è un servizio di storage a blocchi persistente, corrisponde in pratica ad un Hard Drive virtuale nel cloud al quale si può attaccare un'instanza EC2. - **Elastic File Storage (EFS)** è un servizio Cloud-Native per la gestione dei file. E' utilizzato per condividere file tra multipli server. - **Storage Gateway** è uno storage cloud ibrido che estende lo storage on-premise al cloud. - **File Gateway** estende il local storage verso AWS S3 - **Volume Gateway** è in grado di cachare i file locali verso s3 di modo da avere continui backup sul cloud - **Tape Gateway** stora i file all'interno di tape virtuali - **AWS Backup** è un servizio di backup managed che rende facile centralizzare ed automatizzare i backup di data su multipli servizi. - **CloudEndure Disaster Recovery** crea continue repliche delle tue macchine in uno staging low cost all'interno della Region preferita permettendo veloci recovery in caso di down di data center. - **Amazon SFX** è un file system ricco di feature e altamente performante. ## Database Un **Database** è uno store di dati strutturati e semi strutturati che richiede di utilizzare un linguaggio formale e delle tecniche di modellazione. ### Tipologie di Database - **Database Relazionali** => Dati strutturati che sono rappresentati come dati tabellari (tabelle, righe e colonne). Può essere orientato sia sulle colonne che sulle righe. - **Database non Relazionali** => Dati semi strutturati che possono o meno essere rappresentati in modalità tabellare. ### Funzionalità I Database possiedono un sacco di funzionalità: - linguaggi specializzati per le query - strategie di modello per ottimizzare i dati per casi differenti - trasformazione dei dati in strutture o report ### Data Warehouse ![](https://hackmd.io/_uploads/rJhpUJkq3.png) Il Data Warehouse è un database relazionale per workloads analitici che è generalmente orientato sulle colonne. Viene utilizzato solitamente dalle grande aziende che necessitano di Terabytes di dati e di report analitici sugli stessi. Caratteristiche Principali: - Solitamente i dati warehouse utilizzano l'**aggregazione**, cioè la possibilità di raggruppare i dati per trovare un totale o una media. - sono ottimizzati sulle colonne in quanto hanno bisogno di aggregare i dati velocemente - sono solitamente disegnati per essere HOT (query veloci anche con grandi quantità di dati) I Data Warehouse non hanno accessi frequenti in quanto servono per generare report su business e utenti. ### Key / Value Store Un database **key / value** è un tipo di database non relazionale che usa il metodo semplice "key/value" per imagazzinare i dati. Questa tipologia di database sono semplici e veloci e permettono le seguenti funzionalità: - Relazioni - Indici - Aggregazione ![](https://hackmd.io/_uploads/ryflKk152.png) ![](https://hackmd.io/_uploads/r1mGty19h.png) ### Document Database Un Document Database è un database NOSQL che immagazzina documenti (XML e JSON) come prima struttura di dati. Questa tipologia di Database è una sottoclasse degli Store Key-Value. ### Database NoSQL su AWS - DynamoDB è un database noSQL key/value e di tipo document. E' disegnato per scalare bilioni di record garantendo consistenza dei dati al secondo. - DocumentDB è un document database NoSQL che è compatibile con MongoDB - Amazon Keyspaces è un database totalmente gestito da Apache Cassandra, che è un Database NoSQL key/value simile a Dynamo DB ma che possiede maggiori funzionalità. ### Database Relazionali su AWS - RDS (Relational Database Service) è un database relazionale che supporta multiple Engines di SQL. E' il database più utilizzato e supporta tutti i seguenti engine: - MySQL - MariaDB - Postgres (PSQL) - Oracle - Microsoft SQL Server - Aurora - Aurora è un database totalmente gestito di MySQL e PSQL. - Aurora Serverless è un versione di Aurora Serverless - RDS su VMware permete di deployare RDS supportando Engine all'interno di un data center on-premise. ### Altri Database su AWS - RedShift è un data-warehouse con una dimensione in petabyte. - ElastiCache è un database gestito che mantiene in memoria e attua cache sui maggiori database di Redis e Memcached. - Neptune è un database gestito di grafi. I dati sono rappresentati da nodi interconessi - Amazon TimeStreams è un database totalmente gestito di serie di dati - Amazon Quantum Ledger Database è un database totalmente gestito che offre log di transazioni crittografati, trasparenti e immutabili. - Database Migration Service (DMS) è un servizio di migrazione per i database. ## Cloud Networking Service ![](https://hackmd.io/_uploads/HkdTqm4q2.png) - **VPC** è una sezione isolata del cloud di AWS dove è possibile lanciare le risorse AWS - **Route Tables** determinano dove è diretto il traffico rete dalle sottoreti - **Internet Gateway** permette l'accesso a internet - **Region** rappresenta la locazione geografica della rete - **Availability Zone** (AZ) il datacenter dove si trovano le risorse AWS - **Subnets** sono partizioni logiche di una rete IP in multipli e più piccoli segmenti - **NACLs** è di fatto un firewall per le Subnets ## Enterprise/Hybrid Networking Service ![](https://hackmd.io/_uploads/rJh01449n.png) - **AWS Virtual Private Network** (VPN) una connessione sicura tra on-premise, remote offices, mobile employees. - **DirectConnect** connessioni dedicate da dati on-premise verso AWS. - **Private Links** mantiene il traffico all'interno della rete AWS e non tramite internet per mantenere il traffico sicuro. ## VPC & Subnets Virtual Private Cloud (VPC) è un sezione isolata della rete AWS dove puoi lanciare le tue risorse AWS. Puoi scegliere un range di IP: 10000/16 = 65536 Subnets (Sottoreti) sono una partizione logica di una rete di IP in multipli segmenti della rete. Possono essere: - pubbliche = raggiungibili da internet - private = NON raggiungibili da Internet

    Import from clipboard

    Paste your markdown or webpage here...

    Advanced permission required

    Your current role can only read. Ask the system administrator to acquire write and comment permission.

    This team is disabled

    Sorry, this team is disabled. You can't edit this note.

    This note is locked

    Sorry, only owner can edit this note.

    Reach the limit

    Sorry, you've reached the max length this note can be.
    Please reduce the content or divide it to more notes, thank you!

    Import from Gist

    Import from Snippet

    or

    Export to Snippet

    Are you sure?

    Do you really want to delete this note?
    All users will lose their connection.

    Create a note from template

    Create a note from template

    Oops...
    This template has been removed or transferred.
    Upgrade
    All
    • All
    • Team
    No template.

    Create a template

    Upgrade

    Delete template

    Do you really want to delete this template?
    Turn this template into a regular note and keep its content, versions, and comments.

    This page need refresh

    You have an incompatible client version.
    Refresh to update.
    New version available!
    See releases notes here
    Refresh to enjoy new features.
    Your user state has changed.
    Refresh to load new user state.

    Sign in

    Forgot password

    or

    By clicking below, you agree to our terms of service.

    Sign in via Facebook Sign in via Twitter Sign in via GitHub Sign in via Dropbox Sign in with Wallet
    Wallet ( )
    Connect another wallet

    New to HackMD? Sign up

    Help

    • English
    • 中文
    • Français
    • Deutsch
    • 日本語
    • Español
    • Català
    • Ελληνικά
    • Português
    • italiano
    • Türkçe
    • Русский
    • Nederlands
    • hrvatski jezik
    • język polski
    • Українська
    • हिन्दी
    • svenska
    • Esperanto
    • dansk

    Documents

    Help & Tutorial

    How to use Book mode

    Slide Example

    API Docs

    Edit in VSCode

    Install browser extension

    Contacts

    Feedback

    Discord

    Send us email

    Resources

    Releases

    Pricing

    Blog

    Policy

    Terms

    Privacy

    Cheatsheet

    Syntax Example Reference
    # Header Header 基本排版
    - Unordered List
    • Unordered List
    1. Ordered List
    1. Ordered List
    - [ ] Todo List
    • Todo List
    > Blockquote
    Blockquote
    **Bold font** Bold font
    *Italics font* Italics font
    ~~Strikethrough~~ Strikethrough
    19^th^ 19th
    H~2~O H2O
    ++Inserted text++ Inserted text
    ==Marked text== Marked text
    [link text](https:// "title") Link
    ![image alt](https:// "title") Image
    `Code` Code 在筆記中貼入程式碼
    ```javascript
    var i = 0;
    ```
    var i = 0;
    :smile: :smile: Emoji list
    {%youtube youtube_id %} Externals
    $L^aT_eX$ LaTeX
    :::info
    This is a alert area.
    :::

    This is a alert area.

    Versions and GitHub Sync
    Get Full History Access

    • Edit version name
    • Delete

    revision author avatar     named on  

    More Less

    Note content is identical to the latest version.
    Compare
      Choose a version
      No search result
      Version not found
    Sign in to link this note to GitHub
    Learn more
    This note is not linked with GitHub
     

    Feedback

    Submission failed, please try again

    Thanks for your support.

    On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

    Please give us some advice and help us improve HackMD.

     

    Thanks for your feedback

    Remove version name

    Do you want to remove this version name and description?

    Transfer ownership

    Transfer to
      Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

        Link with GitHub

        Please authorize HackMD on GitHub
        • Please sign in to GitHub and install the HackMD app on your GitHub repo.
        • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
        Learn more  Sign in to GitHub

        Push the note to GitHub Push to GitHub Pull a file from GitHub

          Authorize again
         

        Choose which file to push to

        Select repo
        Refresh Authorize more repos
        Select branch
        Select file
        Select branch
        Choose version(s) to push
        • Save a new version and push
        • Choose from existing versions
        Include title and tags
        Available push count

        Pull from GitHub

         
        File from GitHub
        File from HackMD

        GitHub Link Settings

        File linked

        Linked by
        File path
        Last synced branch
        Available push count

        Danger Zone

        Unlink
        You will no longer receive notification when GitHub file changes after unlink.

        Syncing

        Push failed

        Push successfully