Skip to content

Commit f78847d

Browse files
Merge branch 'cncf:main' into patch-2
2 parents c170caa + f431c13 commit f78847d

35 files changed

+766
-11
lines changed

.github/workflows/es-spellcheck.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,6 @@ jobs:
2929
set -o errexit
3030
diff content/es/.wordlist.txt <(LC_ALL= sort -f content/es/.wordlist.txt)
3131
- name: GitHub Spellcheck Action
32-
uses: rojopolis/spellcheck-github-actions@0.33.1
32+
uses: rojopolis/spellcheck-github-actions@0.34.0
3333
with:
3434
config_path: content/es/.spellcheck.yml

.github/workflows/spellcheck.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,4 +25,4 @@ jobs:
2525
- uses: actions/checkout@v4
2626

2727
- name: GitHub Spellcheck Action
28-
uses: rojopolis/spellcheck-github-actions@0.33.1
28+
uses: rojopolis/spellcheck-github-actions@0.34.0
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
---
2+
title: Application Programming Interface (API)
3+
status: Completed
4+
category: tecnologia
5+
tags: ["architettura", "", ""]
6+
---
7+
8+
## Cos'è
9+
10+
Un'API è un modo tramite il quale dei programmi informatici possono interagire tra di loro.
11+
Proprio come gli umani interagiscono con un sito tramite una pagina web, un'API permette ai programmi informatici di interagire gli uni con gli altri.
12+
A differenza delle interazioni umane, le API hanno delle limitazioni su cosa si può o non si può chiedere loro.
13+
Avere un limite alle interazioni aiuta a creare una comunicazione stabile e funzionale tra programmi.
14+
15+
## Quali problematiche affronta
16+
17+
Man mano che le applicazioni diventano sempre più complesse, piccoli cambiamenti nel codice possono avere un effetto dirompente su altre funzionalità.
18+
Le applicazioni hanno bisogno di un approccio modulare alle loro funzionailtà se vogliono crescere e allo stesso tempo mantenere la stabilità.
19+
Senza API mancherebbe un framework per l'interazione tra applicazioni.
20+
Senza un framework condiviso, per le applicazioni è difficile implementare la [scalabilità](/it/scalability/) e integrarsi.
21+
22+
## In che modo aiuta
23+
24+
Le API permettono ai programmi o alle applicazioni di interagire e condividere informazioni in modo definito e comprensibile.
25+
Sono gli elementi costitutivi delle moderne applicazioni e forniscono agli sviluppatori un modo per integrarle tra loro.
26+
Ogni volta che si dice che i [microservizi](/it/microservices/) lavorano insieme, si può assumere che interagiscano tramite un'API.

content/it/auto-scaling.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
---
2+
title: Autoscaling
3+
status: Completed
4+
category: Proprietà
5+
tags: ["infrastruttura", "", ""]
6+
---
7+
8+
Per *autoscaling* si intende la capacità di un sistema di essere [scalabile](/it/scalability/) automaticamente, tipicamente in termini di risorse di computazione.
9+
Con un sistema dotato di autoscaling, le risorse sono automaticamente aggiunte al bisogno, così che possano corrispondere alla portata delle richieste degli utenti in quel periodo.
10+
Il processo di autoscaling è variabile, ed è configurabile per modificare le risorse di un sistema in base a più metriche, come la memoria o il tempo di computazione.
11+
I [managed service](/it/managed-service/) sono classicamente associati a funzionalità di autoscaling, dal momento che offrono più opzioni e implementazioni della maggior parte dei sistemi on-premise.
12+
13+
In passato le infrastrutture e le applicazioni erano pensate perché le loro architetture potessero soddisfare persino i picchi di utilizzo dei sistemi. Questo comportava l'impiego di molte risorse in maniera non elastica, cioè che non variavano accordandosi al numero di richieste degli utenti.
14+
Questa mancanza di elasticità comportava maggiori costi di business e/o perdita di business in caso di disservizi dovuti a un sovraccarico di richieste.
15+
16+
Sfruttando il cloud, la [virtualizzazione](/it/virtualization/), e la [containerizzazione](/it/containerization/) delle applicazioni e delle rispettive dipendenze,
17+
le organizzazioni possono sviluppare applicazioni scalabili in relazione alla portata delle richieste degli utenti.
18+
Possono inoltre monitorare l'utilizzo delle applicazioni e sfruttare la loro scalabilità, offrendo così un'esperienza ottimale all'utente. Si consideri ad esempio l'aumento dei fruitori che Netflix deve affrontare il venerdì sera.
19+
Con *Autoscaling out* si intende l'aggiunta dinamica di nuove risorse, come ad esempio: l'aumento del numero di server che permettano più streaming video concorrenti, server che potranno poi essere terminati una volta che il flusso si sarà normalizzato.
20+
21+
## Voci collegate
22+
23+
* [Scalabilità orizzontale](/it/horizontal-scaling/)
24+
* [Scalabilità verticale](/it/vertical-scaling/)

content/it/bare-metal-machine.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
---
2+
title: Macchina Bare Metal
3+
status: Completed
4+
category: tecnologia
5+
tags: ["infrastruttura", "", ""]
6+
---
7+
8+
## Cos'è
9+
10+
Bare metal (puro metallo) si riferisce a un computer fisico, più specificamente un server, che ha uno e un solo sistema operativo.
11+
Nell'informatica moderna questa distinzione è importante perché molti, se non la maggior parte, dei server sono [macchine virtuali](/it/virtual-machine/).
12+
Un server fisico è tipicamente un computer di grandi dimensioni con un hardware potente.
13+
Installare un sistema operativo ed eseguire le applicazioni direttamente su quell'hardware fisico senza [virtualizzazione](/it/virtualization/), si definisce come in esecuzione su “bare metal”.
14+
15+
## Quali problematiche affronta
16+
17+
Accoppiare un sistema operativo con un computer fisico è il modello originale dell'informatica.
18+
Tutte le risorse del computer fisico sono direttamente disponibili per il sistema operativo, e, senza livelli di virtualizzazione, non si introduce ritardo nella traduzione delle istruzione del sistema operativo all'hardware.
19+
20+
## In che modo aiuta
21+
22+
Dedicando tutte le risorse computazionali di un computer a un singolo sistema operativo si fornisce potenzialmente la miglior performance possibile al sistema operativo.
23+
Se è necessario eseguire un carico di lavoro che deve avere un accesso estremamente veloce alle risorse hardware, allora il bare metal può essere la giusta soluzione.
24+
25+
Nel contesto di [applicazioni cloud native](/it/cloud-native-apps/),
26+
generalmente si pensa alle performance in termini di [scalabilità](/it/scalability/) a un numero più alto di eventi concomitanti,
27+
che possono essere gestiti utilizzando la proprietà di [scalabilità orizzontale](/it/horizontal-scaling/) (aggiungendo più macchine al pool di risorse).
28+
Alcuni carichi di lavoro possono richiedere di utilizzare la [scalabilità verticale](/it/vertical-scaling/) (aggiungendo più potenza a una macchina fisica esistente);
29+
e/o una risposta hardware estremamente veloce, e in questi casi il bare metal è più indicato.
30+
Il bare metal permette anche di regolare l'hardware fisico ed eventualmente anche i driver hardware per aiutare a raggiungere l'obiettivo.

content/it/blue-green-deployment.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
---
2+
title: Blue Green Deployment
3+
status: Completed
4+
category: concetto
5+
tags: ["metodologia", "applicazione", ""]
6+
---
7+
8+
## Cos'è
9+
Il blue-green deployment è una strategia per l’aggiornamento di sistemi in esecuzione con un disservizio minimo. L’operatore ha in esecuzione due ambienti, denominati “blue” e “green”. Di questi, il primo è effettivamente in produzione (ed è la versione che tutti gli utenti stanno utilizzando), mentre il secondo è in aggiornamento. Una volta che i test sono conclusi sull’ambiente non attivo (il “green”), il traffico verso produzione viene dirottato su quest’ultimo (spesso con l’utilizzo di un [load balancer](/it/load-balancer/)). Si noti che con blue-green deployment si intende spesso lo scambio di interi ambienti, compresi molti [servizi](/it/service/), in blocco. Il termine è a volte usato impropriamente in relazione a singoli servizi in un sistema. Per evitare queste ambiguità, si preferisce usare il termine “zero-downtime deployment” (a impatto nullo) quando ci si riferisce alle singole componenti.
10+
11+
12+
## Quali problematiche affronta
13+
I blue-green deployment consentono di ridurre al minimo il disservizio nel caso in cui si debba rilasciare una nuova versione di un software che manca di retrocompatibilità. Per esempio, un deployment di tipo blue-green è indicato nel caso di un negozio online che consista in un sito web e un database. Se il database ha bisogno di un aggiornamento, ma questa nuova versione non funziona con la versione corrente del sito web (e viceversa), in questo caso bisogna cambiare entrambe nello stesso momento. E se questo viene fatto in ambiente di produzione, l’utente noterà un disservizio.
14+
15+
16+
## In che modo aiuta
17+
Il blue-green deployment è la strategia appropriata per software non [cloud-native](/it/cloud-native-apps/) che necessitano di un aggiornamento con un disservizio minimo. In ogni caso il suo utilizzo è solitamente un segnale che il software ha bisogno di essere reingegnerizzato, così da poter aggiornare le sue componenti singolarmente.
18+

content/it/cloud-computing.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
---
2+
title: Cloud Computing
3+
status: Completed
4+
category: Concetto
5+
tags: ["infrastruttura", "fondamenti", ""]
6+
---
7+
8+
## Cos'è
9+
10+
Il cloud computing è un modello che offre risorse computazionali come CPU, rete e capacità di archiviazione su richiesta attraverso internet.
11+
Il cloud computing offre agli utenti la possibilità di accedere e utilizzare potenza di calcolo da remoto.
12+
I cloud provider come AWS, GCP, Azure, DigitalOcean e altri offrono a terze parti la possibilità di noleggiare l'accesso a risorse computazionali in diverse località geografiche.
13+
14+
## Quali problematiche affronta
15+
16+
Tradizionalmente, le organizzazioni dovevano affrontare due problemi principali quando dovevano espandere il loro utilizzo di potenza di calcolo.
17+
Potevano o acquistare, supportare, progettare, e pagare le strutture per ospitare i loro server fisici, oppure potevano espandere e mantenere quelle strutture.
18+
Il cloud computing permette alle organizzazioni di affidare una porzione delle loro necessità di calcolo ad un'altra organizzazione.
19+
20+
## In che modo aiuta
21+
22+
I cloud provider offrono alle organizzazioni la possibilità di noleggiare risorse on-demand e di pagare in base all'utilizzo.
23+
Questo ha permesso due grandi innovazioni: le organizzazioni possono focalizzarsi sul loro prodotto o servizio senza aspettare, pianificare e investire risorse su nuove strutture fisiche. Possono [scalare](/it/scalability/) a seconda della necessità e su richiesta.
24+
Il cloud computing permette alle organizzazioni di adottare tutta (o soltanto) l'infrastruttura di cui hanno bisogno.

content/it/container-orchestration.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
title: Container Orchestration
3+
status: Completed
4+
category: Concetto
5+
---
6+
7+
## Cos'è
8+
Per orchestrazione dei [container](/it/container/) si intende la gestione e l'automazione del ciclo di vita delle applicazioni containerizzate in ambienti dinamici.
9+
L'orchestrazione dei container viene effettuata tramite l'utilizzo di un orchestratore di container (nella maggior parte dei casi [Kubernetes](/it/kubernetes)), che consente di eseguire i processi di deployment (distribuzione), (auto)scaling (scalabilità), auto-healing (riparazione) e monitoraggio.
10+
Il concetto di orchestrazione è preso in prestito dal mondo musicale ed utilizzato come una metafora:
11+
lo strumento di orchestrazione dirige i container come un direttore d'orchestra musicale, assicurandosi che ogni container (o musicista) faccia ciò che dovrebbe fare.
12+
13+
14+
15+
## Quali problematiche affronta
16+
Gestire manualmente i [microservizi](/it/microservices), la sicurezza e la comunicazione di rete su larga scala - e i [sistemi distribuiti](/it/distributed-systems) in generale - è difficile, se non impossibile.
17+
L'orchestrazione dei container consente agli utenti di automatizzare tutte queste attività di gestione.
18+
19+
## In che modo aiuta
20+
Gli strumenti di orchestrazione dei container consentono agli utenti di stabilire lo stato di un sistema.
21+
Innanzitutto, dichiarano come dovrebbe apparire (ad esempio, x container, y pod, ecc.).
22+
Lo strumento di orchestrazione monitorerà quindi automaticamente l'infrastruttura e la correggerà se lo stato devia da quello dichiarato (ad esempio, avvierà un nuovo container se uno dovesse arrestarsi in modo anomalo).
23+
Questa automazione semplifica molte delle attività operative dei team di engineering, che risulterebbero altrimenti profondamente manuali e complesse. Tra queste figurano: l'assegnazione di risorse, la distribuzione, lo scaling (sia in termini di aggiunta che di rimozione di nodi), la connettività, il bilanciamento del traffico e altre attività.

content/it/containers-as-a-service.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: Containers as a Service
3-
status: Completed
3+
status: Deprecated
44
category: Tecnologia
55
tags: ["platform", "", ""]
66
---
@@ -17,5 +17,5 @@ Senza servizi CaaS, i team di sviluppo software devono distribuire, gestire e mo
1717

1818
## In che modo aiuta
1919

20-
Quando si distribuiscono applicazioni containerizzate su una piattaforma CaaS, gli utenti acquisiscono visibilità sulle performance del sistema attraverso aggregazioni di log e strumenti di monitoraggio. I servizi CaaS includono anche funzionalità incorporate per l'[auto scaling](/it/auto-scaling/) e la gestione dell'orchestrazione. Ciò permette ai team di costruire [sistemi distribuiti](/it/distributed-systems/) ad alta visibilità e alta disponibilità. Inoltre, consentendo rapide distribuzioni, i servizi CaaS aumentano la velocità dei team di sviluppo. Mentre i container assicurano un obiettivo di distribuzione uniforme, i servizi CaaS diminuiscono i costi operativi a livello ingegneristico riducendo le risorse [DevOps](/it/devops/) necessarie per gestire una distribuzione.
20+
Quando si distribuiscono applicazioni containerizzate su una piattaforma CaaS, gli utenti acquisiscono visibilità sulle performance del sistema attraverso aggregazioni di log e strumenti di monitoraggio. I servizi CaaS includono anche funzionalità incorporate per l'[autoscaling](/it/auto-scaling/) e la gestione dell'orchestrazione. Ciò permette ai team di costruire [sistemi distribuiti](/it/distributed-systems/) ad alta visibilità e alta disponibilità. Inoltre, consentendo rapide distribuzioni, i servizi CaaS aumentano la velocità dei team di sviluppo. Mentre i container assicurano un obiettivo di distribuzione uniforme, i servizi CaaS diminuiscono i costi operativi a livello ingegneristico riducendo le risorse [DevOps](/it/devops/) necessarie per gestire una distribuzione.
2121

content/it/continuous-delivery(CD).md renamed to content/it/continuous-delivery.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,4 @@ La _Continuous Delivery_ (rilascio continuo), spesso abbreviata in CD, è un ins
1111
La distribuzione di aggiornamenti [affidabili](/it/reliability/) diventa un problema su vasta scala. Idealmente, bisognerebbe distribuire più frequentemente per offrire un maggiore valore agli utenti finali. Tuttavia, farlo manualmente si traduce in costi di transazione elevati per ogni modifica. Storicamente, per evitare questi costi, le organizzazioni hanno rilasciato meno frequentemente, implementando più modifiche contemporaneamente e aumentando il rischio che qualcosa andasse storto.
1212

1313
## In che modo aiuta
14-
Le strategie CD creano un processo completamente automatizzato fino in produzione, che testa e distribuisce il software utilizzando varie strategie di distribuzione come le versioni [canary](/it/canary_deployment/) o [blue-green](/it/blue_green_deployment/). Ciò consente agli sviluppatori di distribuire codice frequentemente, garantendo loro la tranquillità che la nuova revisione sia stata testata. In genere, nelle strategie CD si preferisce lo sviluppo basato su _trunk_ al posto di quello su _feature branching_ o _pull requests_.
14+
Le strategie CD creano un processo completamente automatizzato fino in produzione, che testa e distribuisce il software utilizzando varie strategie di distribuzione come le versioni [canary](/it/canary-deployment/) o [blue-green](/it/blue-green-deployment/). Ciò consente agli sviluppatori di distribuire codice frequentemente, garantendo loro la tranquillità che la nuova revisione sia stata testata. In genere, nelle strategie CD si preferisce lo sviluppo basato su _trunk_ al posto di quello su _feature branching_ o _pull requests_.

0 commit comments

Comments
 (0)