diff --git a/content/it/docs/tutorials/_index.md b/content/it/docs/tutorials/_index.md new file mode 100644 index 0000000000..cdd1c473e8 --- /dev/null +++ b/content/it/docs/tutorials/_index.md @@ -0,0 +1,75 @@ +--- +title: Tutorials +main_menu: true +weight: 60 +content_template: templates/concept +--- + +{{% capture overview %}} + +Questa sezione della documentazione di Kubernetes contiene i tutorials. +Un tutorial mostra come raggiungere un obiettivo più complesso di un singolo +[task](/docs/tasks/). Solitamente un tutorial ha diverse sezioni, ognuna delle quali +consiste in una sequenza di più task. +Prima di procedere con vari tutorial, raccomandiamo di aggiungere il +[Glossario](/docs/reference/glossary/) ai tuoi bookmark per riferimenti successivi. + +{{% /capture %}} + +{{% capture body %}} + +## Per cominciare + +* [Kubernetes Basics](/docs/tutorials/kubernetes-basics/) è un approfondito tutorial che aiuta a capire cosa è Kubernetes e che permette di testare in modo interattivo alcune semplici funzionalità di Kubernetes. + +* [Introduction to Kubernetes (edX)](https://www.edx.org/course/introduction-kubernetes-linuxfoundationx-lfs158x#) + +* [Hello Minikube](/docs/tutorials/hello-minikube/) + +## Configurazione + +* [Configurare Redis utilizzando una ConfigMap](/docs/tutorials/configuration/configure-redis-using-configmap/) + +## Stateless Applications + +* [Esporre un External IP Address per permettere l'accesso alle applicazioni nel Cluster](/docs/tutorials/stateless-application/expose-external-ip-address/) + +* [Esempio: Rilasciare l'applicazione PHP Guestbook con Redis](/docs/tutorials/stateless-application/guestbook/) + +## Stateful Applications + +* [StatefulSet Basics](/docs/tutorials/stateful-application/basic-stateful-set/) + +* [Esempio: WordPress e MySQL con i PersistentVolumes](/docs/tutorials/stateful-application/mysql-wordpress-persistent-volume/) + +* [Esempio: Rilasciare Cassandra con i StatefulSets](/docs/tutorials/stateful-application/cassandra/) + +* [Eseguire ZooKeeper, un sistema distribuito CP](/docs/tutorials/stateful-application/zookeeper/) + +## CI/CD Pipelines + +* [Set Up a CI/CD Pipeline with Kubernetes Part 1: Overview](https://www.linux.com/blog/learn/chapter/Intro-to-Kubernetes/2017/5/set-cicd-pipeline-kubernetes-part-1-overview) + +* [Set Up a CI/CD Pipeline with a Jenkins Pod in Kubernetes (Part 2)](https://www.linux.com/blog/learn/chapter/Intro-to-Kubernetes/2017/6/set-cicd-pipeline-jenkins-pod-kubernetes-part-2) + +* [Run and Scale a Distributed Crossword Puzzle App with CI/CD on Kubernetes (Part 3)](https://www.linux.com/blog/learn/chapter/intro-to-kubernetes/2017/6/run-and-scale-distributed-crossword-puzzle-app-cicd-kubernetes-part-3) + +* [Set Up CI/CD for a Distributed Crossword Puzzle App on Kubernetes (Part 4)](https://www.linux.com/blog/learn/chapter/intro-to-kubernetes/2017/6/set-cicd-distributed-crossword-puzzle-app-kubernetes-part-4) + +## Clusters + +* [AppArmor](/docs/tutorials/clusters/apparmor/) + +## Servizi + +* [Utilizzare Source IP](/docs/tutorials/services/source-ip/) + +{{% /capture %}} + +{{% capture whatsnext %}} + +Se sei interessato a scrivere un tutorial, vedi +[Utilizzare i Page Templates](/docs/home/contribute/page-templates/) +per informazioni su come creare una tutorial page e sul tutorial template. + +{{% /capture %}} diff --git a/content/it/docs/tutorials/hello-minikube.md b/content/it/docs/tutorials/hello-minikube.md new file mode 100644 index 0000000000..80b9b64b11 --- /dev/null +++ b/content/it/docs/tutorials/hello-minikube.md @@ -0,0 +1,280 @@ +--- +title: Hello Minikube +content_template: templates/tutorial +weight: 5 +menu: + main: + title: "Cominciamo!" + weight: 10 + post: > +
Sei pronto a cominciare con Kubernetes? Crea un Kubernetes cluster ed esegui un'appliczione di esempio.
+card: + name: tutorials + weight: 10 +--- + +{{% capture overview %}} + +Questo tutorial mostra come eseguire una semplice applicazione in Kubernetes +utilizzando [Minikube](/docs/setup/learning-environment/minikube) e Katacoda. +Katacoda permette di operare su un'installazione di Kubernetes dal tuo browser. + +{{< note >}} +Come alternativa, è possibile eseguire questo tutorial [installando minikube](/docs/tasks/tools/install-minikube/) localmente. +{{< /note >}} + +{{% /capture %}} + +{{% capture objectives %}} + +* Rilasciare una semplice applicazione su Minikube. +* Eseguire l'applicazione. +* Visualizzare i log dell'applicazione. + +{{% /capture %}} + +{{% capture prerequisites %}} + +Questo tutorial fornisce una container image che utilizza NGINX per risponde a tutte le richieste +con un echo che visualizza i dati della richiesta stessa. + +{{% /capture %}} + +{{% capture lessoncontent %}} + +## Crea un Minikube cluster + +1. Click **Launch Terminal** + + {{< kat-button >}} + + {{< note >}}Se hai installato Minikube localmente, esegui `minikube start`.{{< /note >}} + +2. Apri la console di Kubernetes nel browser: + + ```shell + minikube dashboard + ``` + +3. Katacoda environment only: In alto alla finestra del terminale, fai click segno più, e a seguire click su **Select port to view on Host 1**. + +4. Katacoda environment only: Inserisci `30000`, a seguire click su **Display Port**. + +## Crea un Deployment + +Un Kubernetes [*Pod*](/docs/concepts/workloads/pods/pod/) è un gruppo di uno o più Containers, +che sono uniti tra loro dal punto di vista amministrativo e che condividono lo stesso network. +Il Pod in questo tutorial ha un solo Container. Un Kubernetes +[*Deployment*](/docs/concepts/workloads/controllers/deployment/) monitora lo stato del Pod ed +eventualmente provvedere a farlo ripartire nel caso questo termini. L'uso dei Deployments è la +modalità raccomandata per gestire la creazione e lo scaling dei Pods. + + +1. Usa il comando `kubectl create` per creare un Deployment che gestisce un singolo Pod. Il Pod +eseguirà un Container basato sulla Docker image specificata. + + ```shell + kubectl create deployment hello-node --image=k8s.gcr.io/echoserver:1.4 + ``` + +2. Visualizza il Deployment: + + ```shell + kubectl get deployments + ``` + + L'output del comando è simile a: + + ``` + NAME READY UP-TO-DATE AVAILABLE AGE + hello-node 1/1 1 1 1m + ``` + +3. Visualizza il Pod creato dal Deployment: + + ```shell + kubectl get pods + ``` + + L'output del comando è simile a: + + ``` + NAME READY STATUS RESTARTS AGE + hello-node-5f76cf6ccf-br9b5 1/1 Running 0 1m + ``` + +4. Visualizza gli eventi del cluster Kubernetes: + + ```shell + kubectl get events + ``` + +5. Visualizza la configurazione di `kubectl`: + + ```shell + kubectl config view + ``` + +{{< note >}}Per maggiori informazioni sui comandi di `kubectl`, vedi [kubectl overview](/docs/user-guide/kubectl-overview/).{{< /note >}} + +## Crea un Service + +Con le impostazioni di default, un Pod è accessibile solamente dagli indirizzi IP interni +al Kubernetes cluster. Per far si che il Container `hello-node` sia accessibile dall'esterno +del Kubernetes virtual network, è necessario esporre il Pod utilizzando un +Kubernetes [*Service*](/docs/concepts/services-networking/service/). + +1. Esponi il Pod su internet untilizzando il comando `kubectl expose`: + + ```shell + kubectl expose deployment hello-node --type=LoadBalancer --port=8080 + ``` + + Il flag `--type=LoadBalancer` indica la volontà di esporre il Service + all'esterno del Kubernetes cluster. + +2. Visualizza il Servizio appena creato: + + ```shell + kubectl get services + ``` + + L'output del comando è simile a: + + ``` + NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE + hello-node LoadBalancer 10.108.144.78