Merge pull request #20538 from kubernetes/dev-1.18-it.1
Re-enable the Italian translation
This commit is contained in:
+3
-4
@@ -25,8 +25,7 @@ enableGitInfo = true
|
||||
|
||||
# Norwegian ("no") is sometimes but not currently used for testing.
|
||||
# Hindi is disabled because it's currently in development.
|
||||
# Italian is disabled until it meets minimum standards for quality.
|
||||
disableLanguages = ["hi", "it", "no"]
|
||||
disableLanguages = ["hi", "no"]
|
||||
|
||||
[blackfriday]
|
||||
hrefTargetBlank = true
|
||||
@@ -188,8 +187,8 @@ language_alternatives = ["en"]
|
||||
|
||||
[languages.it]
|
||||
title = "Kubernetes"
|
||||
description = "Production-Grade Container Orchestration"
|
||||
languageName ="Italian"
|
||||
description = "Orchestrazione di Container in produzione"
|
||||
languageName = "Italiano"
|
||||
weight = 6
|
||||
contentDir = "content/it"
|
||||
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
---
|
||||
headless: true
|
||||
---
|
||||
---
|
||||
|
||||
+45
-52
@@ -1,70 +1,63 @@
|
||||
---
|
||||
title: Panoramica sull'amministrazione del cluster
|
||||
content_template: templates/concept
|
||||
weight: 10
|
||||
title: Orchestrazione di Container in produzione
|
||||
abstract: Deployment, scalabilità, e gestione di container automatizzata
|
||||
cid: home
|
||||
---
|
||||
{{< announcement >}}
|
||||
|
||||
{{% capture overview %}}
|
||||
La panoramica dell'amministrazione del cluster è per chiunque crei o gestisca un cluster Kubernetes.
|
||||
Presuppone una certa dimestichezza con i core Kubernetes [concetti](/docs/concepts/).
|
||||
{{% /capture %}}
|
||||
{{< deprecationwarning >}}
|
||||
|
||||
{{% capture body %}}
|
||||
## Progettare un cluster
|
||||
{{< blocks/section id="oceanNodes" >}}
|
||||
{{% blocks/feature image="flower" %}}
|
||||
### [Kubernetes (K8s)]({{< relref "/docs/concepts/overview/what-is-kubernetes" >}}) è un software open-source per l'automazione del deployment, scalabilità, e gestione di applicativi in containers.
|
||||
|
||||
Consulta le guide di [Setup](/docs/setup) per avere degli esempi su come pianificare, impostare e configurare cluster Kubernetes. Le soluzioni elencate in questo articolo sono chiamate *distribuzioni*.
|
||||
K8s raggruppa i containers che compongono gli applicativi in unità logiche per semplificare la gestione e la visibilità. Kubernetes si basa su [15 anni di esperienza di esecuzione di workload in produzione presso Google](http://queue.acm.org/detail.cfm?id=2898444), combinata con le migliori idee e pratiche dalla community.
|
||||
{{% /blocks/feature %}}
|
||||
|
||||
Prima di scegliere una guida, ecco alcune considerazioni:
|
||||
{{% blocks/feature image="scalable" %}}
|
||||
#### Scala planetaria
|
||||
|
||||
- Vuoi provare Kubernetes sul tuo computer o vuoi creare un cluster multi-nodo ad alta disponibilità? Scegli la distro che più si adatti alle tue esigenze.
|
||||
- **Se si sta progettando per l'alta disponibilità**, impara a configurare [cluster in più zone](/docs/concepts/cluster-administration/federation/).
|
||||
- Utilizzerai **un cluster di Kubernetes ospitato**, come [Motore di Google Kubernetes](https://cloud.google.com/kubernetes-engine/) o **che ospita il tuo cluster**?
|
||||
- Il tuo cluster sarà **on-premises** o **nel cloud (IaaS)**? Kubernetes non supporta direttamente i cluster ibridi. Invece, puoi impostare più cluster.
|
||||
- **Se stai configurando Kubernetes on-premises**, considera quale [modello di rete](/docs/concepts/cluster-administration/networking/) si adatti meglio.
|
||||
- Eseguirai Kubernetes su **hardware "bare metal"** o su **macchine virtuali (VM)**?
|
||||
- Vuoi **solo eseguire un cluster**, oppure ti aspetti di fare **lo sviluppo attivo del codice del progetto di Kubernetes**?
|
||||
In quest'ultimo caso, scegli una distribuzione sviluppata attivamente. Alcune distribuzioni utilizzano solo versioni binarie, ma offrono una maggiore varietà di scelte
|
||||
- Familiarizzare con i [componenti](/docs/admin/cluster-components/) necessari per eseguire un cluster.
|
||||
Progettato con gli stessi principi che permettono a Google di eseguire miliardi di container ogni settimana, Kubernetes può scalare evitando di aumentare il lavoro per il tuo team.
|
||||
|
||||
Nota: non tutte le distro vengono mantenute attivamente. Scegli le distro che sono state testate con una versione recente di Kubernetes.
|
||||
{{% /blocks/feature %}}
|
||||
|
||||
## Managing a cluster
|
||||
{{% blocks/feature image="blocks" %}}
|
||||
#### Semplice e flessibile
|
||||
|
||||
* [Gestione di un cluster](/docs/tasks/administration-cluster/cluster-management/) descrive diversi argomenti relativi al ciclo di vita di un cluster: creazione di un nuovo cluster, aggiornamento dei nodi master e worker del cluster, esecuzione della manutenzione del nodo (ad esempio kernel aggiornamenti) e aggiornamento della versione dell'API di Kubernetes di un cluster in esecuzione.
|
||||
Che tu stia facendo dei test locali o supportando una azienda enterprise, la flessibilità di Kubernetes ti permette di eseguire le tue applicazioni coerentemente e facilmente, indipendentemente dalla complessità delle tue esigenze.
|
||||
|
||||
* Scopri come [gestire i nodi](/docs/concepts/nodi/node/).
|
||||
{{% /blocks/feature %}}
|
||||
|
||||
* Scopri come impostare e gestire la [quota di risorse](/docs/concepts/policy/resource-quote/) per i cluster condivisi.
|
||||
{{% blocks/feature image="suitcase" %}}
|
||||
#### Eseguibile ovunque
|
||||
|
||||
## Proteggere un cluster
|
||||
Kubernetes è open source, e ti offre la libertà di spostare i tuoi carichi di lavoro senza fatica tra ambienti on-premises, ibridi, e cloud pubblici.
|
||||
|
||||
* [Certificati](/docs/concepts/cluster-administration/certificates/) descrive i passaggi per generare certificati utilizzando diverse catene di strumenti.
|
||||
{{% /blocks/feature %}}
|
||||
|
||||
* [Kubernetes Container Environment](/docs/concepts/containers/container-environment-variables/) descrive l'ambiente per i contenitori gestiti Kubelet su un nodo Kubernetes.
|
||||
{{< /blocks/section >}}
|
||||
|
||||
* [Controllo dell'accesso all'API di Kubernetes](/docs/reference/access-authn-authz/controlling-access/) descrive come impostare le autorizzazioni per gli utenti e gli account di servizio.
|
||||
{{< blocks/section id="video" background-image="kub_video_banner_homepage" >}}
|
||||
<div class="light-text">
|
||||
<h2>La sfida di migrare 150+ Microservizi su Kubernetes</h2>
|
||||
<p>Di Sarah Wells, Technical Director for Operations and Reliability, Financial Times</p>
|
||||
<button id="desktopShowVideoButton" onclick="kub.showVideo()">Guarda il Video</button>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<a href="https://events.linuxfoundation.org/kubecon-cloudnativecon-europe/?utm_source=kubernetes.io&utm_medium=nav&utm_campaign=kccnceu20" button id="desktopKCButton">Partecipa alla KubeCon ad Amsterdam (13-16 Agosto 2020)</a>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<a href="https://events.linuxfoundation.org/kubecon-cloudnativecon-north-america/?utm_source=kubernetes.io&utm_medium=nav&utm_campaign=kccncna20" button id="desktopKCButton">Partecipa alla KubeCon a Boston (17-20 Novembre 2020)</a>
|
||||
</div>
|
||||
<div id="videoPlayer">
|
||||
<iframe data-url="https://www.youtube.com/embed/H06qrNmGqyE?autoplay=1" frameborder="0" allowfullscreen></iframe>
|
||||
<button id="closeButton"></button>
|
||||
</div>
|
||||
{{< /blocks/section >}}
|
||||
|
||||
* [Autenticazione](/docs/reference/access-authn-authz/authentication/) spiega l'autenticazione in Kubernetes, incluse le varie opzioni di autenticazione.
|
||||
|
||||
* [Autorizzazione](/docs/reference/access-authn-authz/authorization/) è separato dall'autenticazione e controlla come vengono gestite le chiamate HTTP.
|
||||
|
||||
* [Utilizzo dei controller di ammissione](/docs/reference/access-authn-authz/admission-controller/) spiega i plug-in che intercettano le richieste al server API Kubernetes dopo l'autenticazione e l'autorizzazione.
|
||||
|
||||
* [Uso di Sysctls in un cluster Kubernetes](/docs/concepts/cluster-administration/sysctl-cluster/) descrive a un amministratore come utilizzare lo strumento da riga di comando `sysctl` per impostare i parametri del kernel.
|
||||
|
||||
* [Controllo](/docs/tasks/debug-application-cluster/audit/) descrive come interagire con i log di controllo di Kubernetes.
|
||||
|
||||
|
||||
### Securing the kubelet
|
||||
* [Master-Node communication](/docs/concepts/architecture/master-node-communication/)
|
||||
* [TLS bootstrapping](/docs/reference/command-line-tools-reference/kubelet-tls-bootstrapping/)
|
||||
* [Kubelet authentication/authorization](/docs/admin/kubelet-authentication-authorization/)
|
||||
|
||||
## Optional Cluster Services
|
||||
|
||||
* [Integrazione DNS](/docs/concepts/services-networking/dns-pod-service/) descrive come risolvere un nome DNS direttamente su un servizio Kubernetes.
|
||||
|
||||
* [Registrazione e monitoraggio delle attività del cluster](/docs/concepts/cluster-administration/logging/) spiega come funziona il logging in Kubernetes e come implementarlo.
|
||||
|
||||
{{% /capture %}}
|
||||
{{< blocks/kubernetes-features >}}
|
||||
|
||||
{{< blocks/case-studies >}}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
---
|
||||
title: Case Studies
|
||||
linkTitle: Case Studies
|
||||
title: Casi di Studio
|
||||
linkTitle: Casi di Studio
|
||||
bigheader: Kubernetes User Case Studies
|
||||
abstract: Una raccolta di utenti che eseguono Kubernetes in produzione.
|
||||
layout: basic
|
||||
class: gridPage
|
||||
cid: caseStudies
|
||||
---
|
||||
---
|
||||
@@ -0,0 +1,114 @@
|
||||
---
|
||||
title: Box Case Study
|
||||
case_study_styles: true
|
||||
cid: caseStudies
|
||||
css: /css/style_box.css
|
||||
video: https://www.youtube.com/embed/of45hYbkIZs?autoplay=1
|
||||
quote: >
|
||||
Kubernetes has the opportunity to be the new cloud platform. The amount of innovation that's going to come from being able to standardize on Kubernetes as a platform is incredibly exciting - more exciting than anything I've seen in the last 10 years of working on the cloud.
|
||||
|
||||
---
|
||||
|
||||
<div class="banner1">
|
||||
<h1>CASE STUDY: <img src="/images/box_logo.png" width="10%" style="margin-bottom:-6px"><br>
|
||||
<div class="subhead">An Early Adopter Envisions
|
||||
a New Cloud Platform</div>
|
||||
</h1>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="details">
|
||||
Company <b>Box</b> Location <b>Redwood City, California</b> Industry <b>Technology</b>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
|
||||
<section class="section1">
|
||||
|
||||
<div class="cols">
|
||||
<div class="col1">
|
||||
|
||||
<h2>Challenge</h2>
|
||||
Founded in 2005, the enterprise content management company allows its more than 50 million users to manage content in the cloud. <a href="https://www.box.com/home">Box</a> was built primarily with bare metal inside the company’s own data centers, with a monolithic PHP code base. As the company was expanding globally, it needed to focus on "how we run our workload across many different cloud infrastructures from bare metal to public cloud," says Sam Ghods, Cofounder and Services Architect of Box. "It’s been a huge challenge because of different clouds, especially bare metal, have very different interfaces."
|
||||
<br>
|
||||
</div>
|
||||
|
||||
<div class="col2">
|
||||
<h2>Solution</h2>
|
||||
Over the past couple of years, Box has been decomposing its infrastructure into microservices, and became an early adopter of, as well as contributor to, <a href="http://kubernetes.io/">Kubernetes</a> container orchestration. Kubernetes, Ghods says, has allowed Box’s developers to "target a universal set of concepts that are portable across all clouds."<br><br>
|
||||
|
||||
<h2>Impact</h2>
|
||||
"Before Kubernetes," Ghods says, "our infrastructure was so antiquated it was taking us more than six months to deploy a new microservice. Today, a new microservice takes less than five days to deploy. And we’re working on getting it to an hour."
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</section>
|
||||
|
||||
<div class="banner2">
|
||||
<div class="banner2text">
|
||||
"We looked at a lot of different options, but Kubernetes really stood out....the fact that on day one it was designed to run on bare metal just as well as Google Cloud meant that we could actually migrate to it inside of our data centers, and then use those same tools and concepts to run across public cloud providers as well."<br><br><span style="font-size:15px;letter-spacing:0.08em">- SAM GHOUDS, CO-FOUNDER AND SERVICES ARCHITECT OF BOX</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<section class="section2">
|
||||
|
||||
<div class="fullcol">
|
||||
<h2>In the summer of 2014, Box was feeling the pain of a decade’s worth of hardware and software infrastructure that wasn’t keeping up with the company’s needs.</h2>
|
||||
|
||||
A platform that allows its more than 50 million users (including governments and big businesses like <a href="https://www.ge.com/">General Electric</a>) to manage and share content in the cloud, Box was originally a <a href="http://php.net/">PHP</a> monolith of millions of lines of code built exclusively with bare metal inside of its own data centers. It had already begun to slowly chip away at the monolith, decomposing it into microservices. And "as we’ve been expanding into regions around the globe, and as the public cloud wars have been heating up, we’ve been focusing a lot more on figuring out how we run our workload across many different environments and many different cloud infrastructure providers," says Box Cofounder and Services Architect Sam Ghods. "It’s been a huge challenge thus far because of all these different providers, especially bare metal, have very different interfaces and ways in which you work with them."<br><br>
|
||||
Box’s cloud native journey accelerated that June, when Ghods attended <a href="https://www.docker.com/events/dockercon">DockerCon</a>. The company had come to the realization that it could no longer run its applications only off bare metal, and was researching containerizing with Docker, virtualizing with OpenStack, and supporting public cloud.<br><br>
|
||||
At that conference, Google announced the release of its Kubernetes container management system, and Ghods was won over. "We looked at a lot of different options, but Kubernetes really stood out, especially because of the incredibly strong team of <a href="https://research.google.com/pubs/pub43438.html">Borg</a> veterans and the vision of having a completely infrastructure-agnostic way of being able to run cloud software," he says, referencing Google’s internal container orchestrator Borg. "The fact that on day one it was designed to run on bare metal just as well as <a href="https://cloud.google.com/">Google Cloud</a> meant that we could actually migrate to it inside of our data centers, and then use those same tools and concepts to run across public cloud providers as well."<br><br>
|
||||
Another plus: Ghods liked that <a href="https://kubernetes.io/">Kubernetes</a> has a universal set of API objects like pod, service, replica set and deployment object, which created a consistent surface to build tooling against. "Even PaaS layers like <a href="https://www.openshift.com/">OpenShift</a> or <a href="http://deis.io/">Deis</a> that build on top of Kubernetes still treat those objects as first-class principles," he says. "We were excited about having these abstractions shared across the entire ecosystem, which would result in a lot more momentum than we saw in other potential solutions."<br><br>
|
||||
Box deployed Kubernetes in a cluster in a production data center just six months later. Kubernetes was then still pre-beta, on version 0.11. They started small: The very first thing Ghods’s team ran on Kubernetes was a Box API checker that confirms Box is up. "That was just to write and deploy some software to get the whole pipeline functioning," he says. Next came some daemons that process jobs, which was "nice and safe because if they experienced any interruptions, we wouldn’t fail synchronous incoming requests from customers."
|
||||
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div class="banner3">
|
||||
<div class="banner3text">
|
||||
"As we’ve been expanding into regions around the globe, and as the public cloud wars have been heating up, we’ve been focusing a lot more on figuring out how we [can have Kubernetes help] run our workload across many different environments and many different cloud infrastructure providers."
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<section class="section3">
|
||||
<div class="fullcol">
|
||||
The first live service, which the team could route to and ask for information, was launched a few months later. At that point, Ghods says, "We were comfortable with the stability of the Kubernetes cluster. We started to port some services over, then we would increase the cluster size and port a few more, and that’s ended up to about 100 servers in each data center that are dedicated purely to Kubernetes. And that’s going to be expanding a lot over the next 12 months, probably too many hundreds if not thousands."<br><br>
|
||||
While observing teams who began to use Kubernetes for their microservices, "we immediately saw an uptick in the number of microservices being released," Ghods notes. "There was clearly a pent-up demand for a better way of building software through microservices, and the increase in agility helped our developers be more productive and make better architectural choices."
|
||||
<br><br><div class="quote">"There was clearly a pent-up demand for a better way of building software through microservices, and the increase in agility helped our developers be more productive and make better architectural choices."</div><br>
|
||||
Ghods reflects that as early adopters, Box had a different journey from what companies experience now. "We were definitely lock step with waiting for certain things to stabilize or features to get released," he says. "In the early days we were doing a lot of contributions [to components such as kubectl apply] and waiting for Kubernetes to release each of them, and then we’d upgrade, contribute more, and go back and forth several times. The entire project took about 18 months from our first real deployment on Kubernetes to having general availability. If we did that exact same thing today, it would probably be no more than six."<br><br>
|
||||
In any case, Box didn’t have to make too many modifications to Kubernetes for it to work for the company. "The vast majority of the work our team has done to implement Kubernetes at Box has been making it work inside of our existing (and often legacy) infrastructure," says Ghods, "such as upgrading our base operating system from RHEL6 to RHEL7 or integrating it into <a href="https://www.nagios.org/">Nagios</a>, our monitoring infrastructure. But overall Kubernetes has been remarkably flexible with fitting into many of our constraints, and we’ve been running it very successfully on our bare metal infrastructure."<br><br>
|
||||
Perhaps the bigger challenge for Box was a cultural one. "Kubernetes, and cloud native in general, represents a pretty big paradigm shift, and it’s not very incremental," Ghods says. "We’re essentially making this pitch that Kubernetes is going to solve everything because it does things the right way and everything is just suddenly better. But it’s important to keep in mind that it’s not nearly as proven as many other solutions out there. You can’t say how long this or that company took to do it because there just aren’t that many yet. Our team had to really fight for resources because our project was a bit of a moonshot."
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div class="banner4">
|
||||
<div class="banner4text">
|
||||
"The vast majority of the work our team has done to implement Kubernetes at Box has been making it work inside of our existing [and often legacy] infrastructure....overall Kubernetes has been remarkably flexible with fitting into many of our constraints, and we’ve been running it very successfully on our bare metal infrastructure."
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<section class="section4">
|
||||
<div class="fullcol">
|
||||
Having learned from experience, Ghods offers these two pieces of advice for companies going through similar challenges:
|
||||
<h2>1. Deliver early and often.</h2> Service discovery was a huge problem for Box, and the team had to decide whether to build an interim solution or wait for Kubernetes to natively satisfy Box’s unique requirements. After much debate, "we just started focusing on delivering something that works, and then dealing with potentially migrating to a more native solution later," Ghods says. "The above-all-else target for the team should always be to serve real production use cases on the infrastructure, no matter how trivial. This helps keep the momentum going both for the team itself and for the organizational perception of the project." </br></br>
|
||||
<h2>2. Keep an open mind about what your company has to abstract away from developers and what it doesn’t.</h2> Early on, the team built an abstraction on top of Docker files to help ensure that images had the right security updates.
|
||||
This turned out to be superfluous work, since container images are considered immutable and you can easily scan them post-build to ensure they do not contain vulnerabilities. Because managing infrastructure through containerization is such a discontinuous leap, it’s better to start by interacting directly with the native tools and learning their unique advantages and caveats. An abstraction should be built only after a practical need for it arises.</br></br>
|
||||
In the end, the impact has been powerful. "Before Kubernetes," Ghods says, "our infrastructure was so antiquated it was taking us more than six months to deploy a new microservice. Now a new microservice takes less than five days to deploy. And we’re working on getting it to an hour. Granted, much of that six months was due to how broken our systems were, but bare metal is intrinsically a difficult platform to support unless you have a system like Kubernetes to help manage it."</br></br>
|
||||
By Ghods’s estimate, Box is still several years away from his goal of being a 90-plus percent Kubernetes shop. "We’re very far along on having a mission-critical, stable Kubernetes deployment that provides a lot of value," he says. "Right now about five percent of all of our compute runs on Kubernetes, and I think in the next six months we’ll likely be between 20 to 50 percent. We’re working hard on enabling all stateless service use cases, and shift our focus to stateful services after that."
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div class="banner5">
|
||||
<div class="banner5text">
|
||||
"Ghods predicts that Kubernetes has the opportunity to be the new cloud platform. '...because it’s a never-before-seen level of automation and intelligence surrounding infrastructure that is portable and agnostic to every way you can run your infrastructure.'"
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<section class="section5">
|
||||
<div class="fullcol">
|
||||
In fact, that’s what he envisions across the industry: Ghods predicts that Kubernetes has the opportunity to be the new cloud platform. Kubernetes provides an API consistent across different cloud platforms including bare metal, and "I don’t think people have seen the full potential of what’s possible when you can program against one single interface," he says. "The same way <a href="https://aws.amazon.com/">AWS</a> changed infrastructure so that you don’t have to think about servers or cabinets or networking equipment anymore, Kubernetes enables you to focus exclusively on the containers that you’re running, which is pretty exciting. That’s the vision."</br></br>
|
||||
Ghods points to projects that are already in development or recently released for Kubernetes as a cloud platform: cluster federation, the Dashboard UI, and <a href="https://coreos.com/">CoreOS</a>’s etcd operator. "I honestly believe it’s the most exciting thing I’ve seen in cloud infrastructure," he says, "because it’s a never-before-seen level of automation and intelligence surrounding infrastructure that is portable and agnostic to every way you can run your infrastructure."</br></br>
|
||||
Box, with its early decision to use bare metal, embarked on its Kubernetes journey out of necessity. But Ghods says that even if companies don’t have to be agnostic about cloud providers today, Kubernetes may soon become the industry standard, as more and more tooling and extensions are built around the API.</br></br>
|
||||
"The same way it doesn’t make sense to deviate from Linux because it’s such a standard," Ghods says, "I think Kubernetes is going down the same path. It is still early days—the documentation still needs work and the user experience for writing and publishing specs to the Kubernetes clusters is still rough. When you’re on the cutting edge you can expect to bleed a little. But the bottom line is, this is where the industry is going. Three to five years from now it’s really going to be shocking if you run your infrastructure any other way."
|
||||
</div>
|
||||
</section>
|
||||
@@ -1,4 +1,5 @@
|
||||
---
|
||||
draft: True
|
||||
title: Comcast
|
||||
content_url: https://youtu.be/lmeFkH-rHII
|
||||
---
|
||||
|
||||
@@ -4,66 +4,234 @@ layout: basic
|
||||
cid: community
|
||||
---
|
||||
|
||||
<section id="mainContent">
|
||||
<main>
|
||||
<div class="content">
|
||||
<h3>Garantire che Kubernetes funzioni bene ovunque e per tutti.</h3>
|
||||
<p>Connettersi con la comunità Kubernetes sul nostro <a href="http://slack.k8s.io/">canale di Slack</a>, <a href="https://discuss.kubernetes.io/">forum di discussione</a>, o unisciti al
|
||||
<a href="https://groups.google.com/forum/#!forum/kubernetes-dev">Kubernetes-dev Google group</a>. Una riunione settimanale
|
||||
della comunità avviene tramite videoconferenza per discutere lo stato delle cose, vedi
|
||||
<a href="https://github.com/kubernetes/community/blob/master/events/community-meeting.md">queste istruzioni </a> per informazioni
|
||||
su come partecipare</p>
|
||||
<p>Puoi anche unirti a Kubernetes in tutto il mondo attraverso il nostro
|
||||
<a href="https://www.meetup.com/topics/kubernetes/">Kubernetes Meetup Community</a> e
|
||||
<a href="https://www.meetup.com/Kubernetes-Cloud-Native-Online-Meetup/">Kubernetes Cloud Native Meetup Community</a>.</p>
|
||||
</div>
|
||||
<div class="content">
|
||||
<h3>Special Interest Groups (SIGs)</h3>
|
||||
<p>hai un interesse particolare nel modo in cui Kubernetes funziona con un'altra tecnologia? Guarda la nostra crescita
|
||||
<a href="https://git.k8s.io/community/sig-list.md">lista dei SIG</a>,
|
||||
da AWS e Openstack a Big Data e Scalabilità, c'è un posto per te per contribuire e istruzioni
|
||||
puoi creare un nuovo SIG di tuo interesse se non e presente(ancora).</p>
|
||||
<div class="newcommunitywrapper">
|
||||
<div class="banner1">
|
||||
<img src="/images/community/kubernetes-community-final-02.jpg" alt="Immagine di una conferenza Kubernetes" style="width:100%;padding-left:0px" class="desktop">
|
||||
<img src="/images/community/kubernetes-community-02-mobile.jpg" alt="Immagine di una conferenza Kubernetes" style="width:100%;padding-left:0px" class="mobile">
|
||||
</div>
|
||||
|
||||
<p>Come membro della comunità di Kubernetes, puoi partecipare a qualsiasi riunione SIG
|
||||
a cui sei interessato. Non è richiesta alcuna registrazione.</p>
|
||||
<div class="intro">
|
||||
<br class="mobile">
|
||||
<p>La comunità di Kubernetes - utenti, contributors e la cultura che abbiamo costruito assieme - è una dei maggiori motivi della crescita esponenziale di questo progetto open-source. La nostra cultura e i nostri valori continuano a rafforzarsi con il progetto stesso. Lavoriamo tutti assieme per il miglioramento costante del progetto e degli strumenti di lavoro correlati.
|
||||
<br><br>Noi siamo le persone che aprono gli issue, le pull request, che partecipano alle riunioni delle SIG, ai meetup di Kubernetes, alle KubeCon, che promuoviamo l'innovazione e l'adozione di Kubernetes, che eseguiamo <code>kubectl get pods</code>, e che contribuiamo in moltissimi altri modi egualmente vitali al progetto. Continua a leggere per scoprire come essere coinvolto in queste attività e diventare parte di questa meravigliosa comunità.</p>
|
||||
<br class="mobile">
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<div class="navbar">
|
||||
|
||||
<div class="content">
|
||||
<h3>Codice di condotta</h3>
|
||||
<p>La comunità di Kubernetes apprezza il rispetto e l'inclusività, e
|
||||
applica un <a href="code-of-conduct/">Codice di condotta</a> in tutte
|
||||
le interazioni. Se si nota una violazione del Codice di condotta a
|
||||
in un evento o meeting in Slack, or in qualsiasi canale di comunicazione
|
||||
contatta il <a href="https://github.com/kubernetes/community/tree/master/committee-code-of-conduct">Comitato di Condotta di Kubernetes</a>
|
||||
<a href="mailto:conduct@kubernetes.io">conduct@kubernetes.io</a>.
|
||||
Il tuo anonimato sarà protetto.
|
||||
</p>
|
||||
</div>
|
||||
</main>
|
||||
</section>
|
||||
<a href="#conduct">Codice di Condotta</a>
|
||||
<a href="#videos">Video</a>
|
||||
<a href="#discuss">Discussioni</a>
|
||||
<a href="#events">Eventi e meetups</a>
|
||||
<a href="#news">Notizie</a>
|
||||
|
||||
<section id="talkToUs">
|
||||
<main>
|
||||
<h3>Parla con noi!</h3>
|
||||
<h4>Ci piacerebbe sapere da te, come stai usando Kubernetes,<br> e cosa possiamo fare per renderlo migliore.</h4>
|
||||
<div id="bigSocial">
|
||||
<div>
|
||||
<a href="https://twitter.com/kubernetesio">@kubernetesio</a>
|
||||
<p>Ricevi le ultime notizie e aggiornamenti.</p>
|
||||
</div>
|
||||
<div>
|
||||
<a href="https://github.com/kubernetes/kubernetes">GitHub Project</a>
|
||||
<p>Guarda il progetto e considera di contribuire</p>
|
||||
</div>
|
||||
<div>
|
||||
<a href="http://slack.k8s.io/">#kubernetes-users</a>
|
||||
<p>Il nostro canale Slack è il modo migliore per contattare i nostri ingegneri e condividere le tue idee con loro.</p>
|
||||
</div>
|
||||
<div>
|
||||
<a href="http://stackoverflow.com/questions/tagged/kubernetes">Stack Overflow</a>
|
||||
<p>Il nostro forum di utenti è un ottimo posto dove andare per il supporto della comunità.</p>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
</section>
|
||||
</div>
|
||||
<br class="mobile"><br class="mobile">
|
||||
<div class="imagecols">
|
||||
<br class="mobile">
|
||||
<div class="imagecol">
|
||||
<img src="/images/community/kubernetes-community-final-03.jpg" alt="Immagine di una conferenza Kubernetes" style="width:100%" class="desktop">
|
||||
</div>
|
||||
|
||||
<div class="imagecol">
|
||||
<img src="/images/community/kubernetes-community-final-04.jpg" alt="Immagine di una conferenza Kubernetes" style="width:100%" class="desktop">
|
||||
</div>
|
||||
|
||||
<div class="imagecol" style="margin-right:0% important">
|
||||
<img src="/images/community/kubernetes-community-final-05.jpg" alt="Immagine di una conferenza Kubernetes" style="width:100%;margin-right:0% important" class="desktop">
|
||||
</div>
|
||||
<img src="/images/community/kubernetes-community-04-mobile.jpg" alt="Immagine di una conferenza Kubernetes" style="width:100%;margin-bottom:3%" class="mobile">
|
||||
|
||||
<a name="conduct"></a>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="conduct">
|
||||
<div class="conducttext">
|
||||
<br class="mobile"><br class="mobile">
|
||||
<br class="tablet"><br class="tablet">
|
||||
<div class="conducttextnobutton" style="margin-bottom:2%"><h1>Codice di Condotta</h1>
|
||||
La comunità di Kubernetes valorizza il rispetto e l'inclusività, e mette il Codice di Condotta alla base di ogni iterazione. Se noti una violazione del Codice di Condotta durante un evento o un meeting, in Slack, o in qualsiasi altra comunicazione, contatta la Kubernetes Code of Conduct Committee mandando una mail a <a href="mailto:conduct@kubernetes.io" style="color:#0662EE;font-weight:300">conduct@kubernetes.io</a>. Tutte le segnalazioni sono tenute confidenziali. Puoi leggere di più sulla Kubernetes Code of Conduct Committee <a href="https://github.com/kubernetes/community/tree/master/committee-code-of-conduct" style="color:#0662EE;font-weight:300">qui</a>.
|
||||
<br>
|
||||
<a href="https://kubernetes.io/it/community/code-of-conduct/">
|
||||
<br class="mobile"><br class="mobile">
|
||||
|
||||
<span class="fullbutton">
|
||||
LEGGI DI PIÙ
|
||||
</span>
|
||||
</a>
|
||||
</div><a name="videos"></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="videos">
|
||||
<br class="mobile"><br class="mobile">
|
||||
<br class="tablet"><br class="tablet">
|
||||
<h1 style="margin-top:0px">Video</h1>
|
||||
|
||||
<div style="margin-bottom:4%;font-weight:300;text-align:center;padding-left:10%;padding-right:10%">Siamo molto presenti su YouTube. Iscriviti per seguire i molti argomenti che vengono trattati.</div>
|
||||
|
||||
<div class="videocontainer">
|
||||
|
||||
<div class="video">
|
||||
|
||||
<iframe width="100%" height="250" src="https://www.youtube.com/embed/videoseries?list=PL69nYSiGNLP3azFUvYJjGn45YbF6C-uIg" title="Monthly office hours" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
|
||||
|
||||
<a href="https://www.youtube.com/playlist?list=PL69nYSiGNLP3azFUvYJjGn45YbF6C-uIg">
|
||||
<div class="videocta">
|
||||
Guarda gli incontri mensili ▶</div>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="video">
|
||||
<iframe width="100%" height="250" src="https://www.youtube.com/embed/videoseries?list=PL69nYSiGNLP1pkHsbPjzAewvMgGUpkCnJ" title="Weekly community meetings" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
|
||||
<a href="https://www.youtube.com/playlist?list=PL69nYSiGNLP1pkHsbPjzAewvMgGUpkCnJ">
|
||||
<div class="videocta">
|
||||
Guarda i meetings settimanali della comunità ▶
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="video">
|
||||
|
||||
<iframe width="100%" height="250" src="https://www.youtube.com/embed/videoseries?list=PL69nYSiGNLP3QpQrhZq_sLYo77BVKv09F" title="Talk from a community member" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>
|
||||
|
||||
<a href="https://www.youtube.com/playlist?list=PL69nYSiGNLP3QpQrhZq_sLYo77BVKv09F">
|
||||
<div class="videocta">
|
||||
Guarda un talk di un membro della comunità ▶
|
||||
</div>
|
||||
|
||||
</a>
|
||||
<a name="discuss"></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<div class="resources">
|
||||
<br class="mobile"><br class="mobile">
|
||||
<br class="tablet"><br class="tablet">
|
||||
<h1 style="padding-top:1%">Discussioni</h1>
|
||||
|
||||
<div style="font-weight:300;text-align:center">A noi piace parlare! Vienici a trovare e partecipa alla conversazione su una di queste piattaforme.</div>
|
||||
|
||||
<div class="resourcecontainer">
|
||||
|
||||
<div class="resourcebox">
|
||||
<img src="/images/community/discuss.png" alt=Forum" style="width:80%;padding-bottom:2%">
|
||||
<a href="https://discuss.kubernetes.io/" style="color:#0662EE;display:block;margin-top:1%">
|
||||
forum ▶
|
||||
</a>
|
||||
<div class="resourceboxtext" style="font-size:12px;text-transform:none !important;font-weight:300;line-height:1.4em;color:#333333;margin-top:4%">
|
||||
Discussioni tecniche che completano la documentazione, StackOverflow, e molto altro
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="resourcebox">
|
||||
<img src="/images/community/twitter.png" alt="Twitter" style="width:80%;padding-bottom:2%">
|
||||
<a href="https://twitter.com/kubernetesio" style="color:#0662EE;display:block;margin-top:1%">
|
||||
twitter ▶
|
||||
</a>
|
||||
<div class="resourceboxtext" style="font-size:12px;text-transform:none !important;font-weight:300;line-height:1.4em;color:#333333;margin-top:4%">
|
||||
Annunci di nuovi blog post, eventi, notizie e idee in tempo reale
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="resourcebox">
|
||||
<img src="/images/community/github.png" alt="GitHub" style="width:80%;padding-bottom:2%">
|
||||
<a href="https://github.com/kubernetes/kubernetes" style="color:#0662EE;display:block;margin-top:1%">
|
||||
github ▶
|
||||
</a>
|
||||
<div class="resourceboxtext" style="font-size:12px;text-transform:none !important;font-weight:300;line-height:1.4em;color:#333333;margin-top:4%">
|
||||
Tutti i progetti, le issue e ovviamente il codice stesso
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="resourcebox">
|
||||
<img src="/images/community/stack.png" alt="Stack Overflow" style="width:80%;padding-bottom:2%">
|
||||
<a href="https://stackoverflow.com/search?q=kubernetes" style="color:#0662EE;display:block;margin-top:1%">
|
||||
stack overflow ▶
|
||||
</a>
|
||||
<div class="resourceboxtext" style="font-size:12px;text-transform:none !important;font-weight:300;line-height:1.4em;color:#333333;margin-top:4%">
|
||||
Supporto tecnico
|
||||
<a name="events"></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--
|
||||
<div class="resourcebox">
|
||||
|
||||
<img src="/images/community/slack.png" style="width:80%">
|
||||
|
||||
slack ▶
|
||||
|
||||
<div class="resourceboxtext" style="font-size:11px;text-transform:none !important;font-weight:200;line-height:1.4em;color:#333333;margin-top:4%">
|
||||
With 170+ channels, you'll find one that fits your needs.
|
||||
</div>
|
||||
|
||||
</div>-->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="events">
|
||||
<br class="mobile"><br class="mobile">
|
||||
<br class="tablet"><br class="tablet">
|
||||
<div class="eventcontainer">
|
||||
<h1 style="color:white !important">Eventi futuri</h1>
|
||||
{{< upcoming-events >}}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="meetups">
|
||||
<div class="meetupcol">
|
||||
<div class="meetuptext">
|
||||
<h1 style="text-align:left">Comunità globale</h1>
|
||||
Con oltre 150 meetup in tutto il mondo in continua crescita, trova le persone della comunità che sono vicine a te. Se non ci sono eventi vicini a te, organizzane uno tu!
|
||||
</div>
|
||||
<a href="https://www.meetup.com/topics/kubernetes/">
|
||||
<div class="button">
|
||||
TROVA UN MEETUP
|
||||
</div>
|
||||
</a>
|
||||
<a name="news"></a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
<!--
|
||||
<div class="contributor">
|
||||
<div class="contributortext">
|
||||
<br>
|
||||
<h1 style="text-align:left">
|
||||
New Contributors Site
|
||||
</h1>
|
||||
Text about new contributors site.
|
||||
|
||||
<br><br>
|
||||
|
||||
<div class="button">
|
||||
VISIT SITE
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
-->
|
||||
|
||||
<div class="news">
|
||||
<br class="mobile"><br class="mobile">
|
||||
<br class="tablet"><br class="tablet">
|
||||
<h1 style="margin-bottom:2%">Notizie Recenti</h1>
|
||||
|
||||
<br>
|
||||
<div class="twittercol1">
|
||||
<a class="twitter-timeline" data-tweet-limit="1" href="https://twitter.com/kubernetesio?ref_src=twsrc%5Etfw">I tweet di kubernetesio</a> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
|
||||
</div>
|
||||
|
||||
<br>
|
||||
<br><br><br><br>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Community
|
||||
title: Comunità
|
||||
layout: basic
|
||||
cid: community
|
||||
css: /css/community.css
|
||||
@@ -10,15 +10,16 @@ css: /css/community.css
|
||||
|
||||
Kubernetes segue il
|
||||
<a href="https://github.com/cncf/foundation/blob/master/code-of-conduct.md">codice di condotta CNCF</a>.
|
||||
Il testo del CNC CoC è replicato di seguito a partire dal
|
||||
<a href="https://github.com/cncf/foundation/blob/0ce4694e5103c0c24ca90c189da81e5408a46632/code-of-conduct.md">commit 0ce4694</a>.
|
||||
Se noti che questo non è aggiornato, ti preghiamo di far presente questo problema.
|
||||
<a href="https://github.com/kubernetes/website/issues/new">file an issue</a>.
|
||||
Il testo del codice di condotta CNCF è replicato di seguito a partire dal
|
||||
<a href="https://github.com/cncf/foundation/blob/214585e24aab747fb85c2ea44fbf4a2442e30de6/code-of-conduct.md">commit 214585e</a>.
|
||||
Se noti che questo non è aggiornato, ti preghiamo
|
||||
<a href="https://github.com/kubernetes/website/issues/new">inviare una issue</a>
|
||||
|
||||
Se noti una violazione del Codice di condotta in occasione di un evento o una riunione, in Slack o in un altro meccanismo di comunicazione,
|
||||
contatta il Comitato per
|
||||
<a href="https://git.k8s.io/community/committee-code-of-conduct">il codice di condotta di Kubernetes/a>.
|
||||
Potete raggiungerci via email all'indirizzo <a href="mailto:conduct@kubernetes.io">conduct@kubernetes.io</a>.
|
||||
Se noti una violazione del codice di condotta in occasione di un evento
|
||||
o una riunione, in Slack o in un altro canale di comunicazione,
|
||||
contatta il comitato per
|
||||
<a href="https://git.k8s.io/community/committee-code-of-conduct">il codice di condotta di Kubernetes</a>.
|
||||
Potete raggiungerci tramite email a <a href="mailto:conduct@kubernetes.io">conduct@kubernetes.io</a>.
|
||||
Il tuo anonimato sarà protetto.
|
||||
|
||||
<div class="cncf_coc_container">
|
||||
|
||||
@@ -1,46 +1,28 @@
|
||||
<!-- Do not edit this file directly. Get the latest from
|
||||
https://github.com/cncf/foundation/blob/master/code-of-conduct.md -->
|
||||
## CNCF Community Code of Conduct v1.0
|
||||
## CNCF Codice di condotta comunitaria v1.0
|
||||
|
||||
### Contributor Code of Conduct
|
||||
### Codice di condotta dei collaboratori
|
||||
|
||||
As contributors and maintainers of this project, and in the interest of fostering
|
||||
an open and welcoming community, we pledge to respect all people who contribute
|
||||
through reporting issues, posting feature requests, updating documentation,
|
||||
submitting pull requests or patches, and other activities.
|
||||
Come collaboratori e responsabili di questo progetto, per creare un ambiente accogliente e aperto, ci impegniamo a rispettare tutte le persone che contribuiranno a segnalare dei problemi, condividendo richieste, aggiornando la documentazione, inviando richieste o patch e altre attività.
|
||||
|
||||
We are committed to making participation in this project a harassment-free experience for
|
||||
everyone, regardless of level of experience, gender, gender identity and expression,
|
||||
sexual orientation, disability, personal appearance, body size, race, ethnicity, age,
|
||||
religion, or nationality.
|
||||
Ci impegniamo a far si che la partecipazione ai progetti CNCF sia un’esperienza senza alcun tipo di molestia, indipendentemente dal livello di esperienza, genere, espressione, orientamento sessuale, disabilità, apparenza fisica, taglia, razza, etnia, età, religione o nazionalità.
|
||||
|
||||
Examples of unacceptable behavior by participants include:
|
||||
Esempi di comportamenti inaccettabili includono:
|
||||
|
||||
* The use of sexualized language or imagery
|
||||
* Personal attacks
|
||||
* Trolling or insulting/derogatory comments
|
||||
* Public or private harassment
|
||||
* Publishing other's private information, such as physical or electronic addresses,
|
||||
without explicit permission
|
||||
* Other unethical or unprofessional conduct.
|
||||
- Uso di linguaggio o immagini volgari
|
||||
- Attacchi personali
|
||||
- Trolling o commenti dispregiativi
|
||||
- Molestie privato o pubbliche
|
||||
- Pubblicazione di informazioni personali, come indirizzi di posta elettronica o indirizzi di residenza, senza permesso esplicito
|
||||
- Altri tipi di condotta non etica o non professionale
|
||||
|
||||
Project maintainers have the right and responsibility to remove, edit, or reject
|
||||
comments, commits, code, wiki edits, issues, and other contributions that are not
|
||||
aligned to this Code of Conduct. By adopting this Code of Conduct, project maintainers
|
||||
commit themselves to fairly and consistently applying these principles to every aspect
|
||||
of managing this project. Project maintainers who do not follow or enforce the Code of
|
||||
Conduct may be permanently removed from the project team.
|
||||
I responsabili di progetto hanno il diritto e la responsabilità di rimuovere, modificare o respingere commenti, aggressioni, codice, wiki edit, reclami e altri contributi che non siano allineati con questo codice di condotta. Adottando il codice di condotta, i responsabili del progetto si impegnano ad applicare questi principi in prima persona e a ogni aspetto della gestione del progetto. I responsabili che non seguiranno o non faranno rispettare il codice di condotta saranno rimossi dal team. Questo codice di condotta verrà applicato a chiunque contribuisca o rappresenti un progetto o la sua comunità in pubblico.
|
||||
|
||||
This code of conduct applies both within project spaces and in public spaces
|
||||
when an individual is representing the project or its community.
|
||||
Casi di comportamenti abusivi, molestie o altri comportamenti inaccettabili in Kubernetes potranno essere denunciati contattando [Il comitato del codice di condotta Kubernetes (CNCF)](https://git.k8s.io/community/committee-code-of-conduct) attraverso <conduct@kubernetes.io>. Per altri progetti, contattare il Project manager del CNCF o il nostro mediatore, Mishi Choudhary <mishi@linux.com>.
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting
|
||||
the [Kubernetes Code of Conduct Committee](https://github.com/kubernetes/community/tree/master/committee-code-of-conduct) <conduct@kubernetes.io>.
|
||||
Il codice di condotta è stato adattato dal Contributor Covenant (http://contributor-covenant.org), versione 1.2.0, disponibile su http://contributor-covenant.org/version/1/2/0/
|
||||
|
||||
This Code of Conduct is adapted from the Contributor Covenant
|
||||
(http://contributor-covenant.org), version 1.2.0, available at
|
||||
http://contributor-covenant.org/version/1/2/0/
|
||||
### CNCF Codice di condotta negli eventi
|
||||
|
||||
### CNCF Events Code of Conduct
|
||||
|
||||
CNCF events are governed by the Linux Foundation [Code of Conduct](http://events.linuxfoundation.org/events/cloudnativecon/attend/code-of-conduct) available on the event page. This is designed to be compatible with the above policy and also includes more details on responding to incidents.
|
||||
Gli eventi CNCF sono gestiti da Linux Foundation Codice di Condotta disponibile sulla pagina dell'evento. Questo è compatibile con quanto descritto sopra e include maggiori dettagli sulla gestione degli incidenti.
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
---
|
||||
title: Documentazione
|
||||
---
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: Concepts
|
||||
title: Concetti
|
||||
main_menu: true
|
||||
content_template: templates/concept
|
||||
weight: 40
|
||||
|
||||
@@ -6,11 +6,11 @@ weight: 30
|
||||
|
||||
{{% capture overview %}}
|
||||
|
||||
Il concetto CCM (cloud controller manager) (da non confondere con il binario) è stato originariamente creato per consentire al codice del fornitore specifico del cloud e al core Kubernetes di evolversi indipendentemente l'uno dall'altro. Il gestore del controller cloud viene eseguito insieme ad altri componenti principali come il controller controller di Kubernetes, il server API e lo scheduler. Può anche essere avviato come addon di Kubernetes, nel qual caso viene eseguito su Kubernetes.
|
||||
Il concetto di CCM (cloud controller manager), da non confondere con il binario, è stato originariamente creato per consentire di sviluppare Kubernetes indipendentemente dall'implementazione dello specifico cloud provider. Il cloud controller manager viene eseguito insieme ad altri componenti principali come il Kubernetes controller manager, il server API e lo scheduler. Può anche essere avviato come addon di Kubernetes, nel qual caso viene eseguito su Kubernetes.
|
||||
|
||||
Il design del gestore del controller cloud è basato su un meccanismo di plug-in che consente ai nuovi provider cloud di integrarsi facilmente con Kubernetes utilizzando plug-in. Sono in atto piani per l'acquisizione a bordo di nuovi provider di cloud su Kubernetes e per la migrazione dei provider di cloud dal vecchio modello al nuovo modello CCM.
|
||||
Il design del cloud controller manager è basato su un meccanismo di plug-in che consente ai nuovi provider cloud di integrarsi facilmente con Kubernetes creando un plug-in. Sono in atto programmi per l'aggiunta di nuovi provider di cloud su Kubernetes e per la migrazione dei provider che usano il vecchio metodo a questo nuovo metodo.
|
||||
|
||||
Questo documento discute i concetti alla base del gestore del controller cloud e fornisce dettagli sulle funzioni associate.
|
||||
Questo documento discute i concetti alla base del cloud controller manager e fornisce dettagli sulle funzioni associate.
|
||||
|
||||
Ecco l'architettura di un cluster Kubernetes senza il gestore del controller cloud:
|
||||
|
||||
@@ -21,7 +21,7 @@ Ecco l'architettura di un cluster Kubernetes senza il gestore del controller clo
|
||||
|
||||
{{% capture body %}}
|
||||
|
||||
## Design
|
||||
## Architettura
|
||||
|
||||
Nel diagramma precedente, Kubernetes e il provider cloud sono integrati attraverso diversi componenti:
|
||||
|
||||
@@ -30,100 +30,84 @@ Nel diagramma precedente, Kubernetes e il provider cloud sono integrati attraver
|
||||
* Kubernetes API server
|
||||
|
||||
|
||||
CCM consolida tutta la logica dipendente dal cloud dai tre componenti precedenti per creare un singolo punto di integrazione con il cloud. La nuova architettura con il CCM si presenta così:
|
||||
Il CCM consolida tutta la logica dipendente dal cloud presente nei tre componenti precedenti, per creare un singolo punto di integrazione con il cloud. La nuova architettura con il CCM si presenta così:
|
||||
|
||||

|
||||
|
||||
## Components of the CCM
|
||||
## Componenti del CCM
|
||||
|
||||
CCM interrompe alcune funzionalità di Kubernetes controller manager (KCM) e lo esegue come processo separato. In particolare, elimina i controller in KCM dipendenti dal cloud. KCM ha i seguenti loop del controller dipendenti dal cloud:
|
||||
Il CCM divide alcune funzionalità del Kubernetes controller manager (KCM) e le esegue in un differente processo. In particolare, toglie dal KCM le integrazioni con il cloud specifico. Il KCM ha i seguenti controller che dipendono dal cloud specifico:
|
||||
|
||||
* Node controller
|
||||
* Volume controller
|
||||
* Route controller
|
||||
* Service controller
|
||||
|
||||
Nella versione 1.9, CCM esegue i seguenti controller dall'elenco precedente:
|
||||
Nella versione 1.9, il CCM esegue i seguenti controller dall'elenco precedente:
|
||||
|
||||
* Node controller
|
||||
* Route controller
|
||||
* Service controller
|
||||
|
||||
Inoltre, esegue un altro controller chiamato controller PersistentVolumeLabels. Questo controller è responsabile dell'impostazione delle etichette delle zone e delle regioni su PersistentVolumes creati nei cloud GCP e AWS.
|
||||
|
||||
{{< note >}}
|
||||
Il controller del volume è stato deliberatamente scelto per non far parte di CCM. A causa della complessità e degli sforzi già esistenti per estrapolare la logica del volume specifica del fornitore, è stato deciso che il controller del volume non verrà spostato su CCM.
|
||||
È stato deliberatamente deciso di non spostare il Volume controller nel CCM. Data la complessità del Volume controller e gli sforzi già fatti per astrarre le logiche specifiche dei singoli fornitori, è stato deciso che il Volume controller non verrà spostato nel CCM.
|
||||
{{< /note >}}
|
||||
|
||||
Il piano originale per supportare i volumi utilizzando CCM era di utilizzare i volumi Flex per supportare volumi collegabili. Tuttavia, è in programma uno sforzo concorrente noto come CSI per sostituire la logica Flex.me, è stato deciso che il controller del volume non verrà spostato su CCM.
|
||||
Il piano originale per supportare i volumi utilizzando il CCM era di utilizzare [Flex](/docs/concepts/storage/volumes/#flexVolume) per supportare volumi collegabili. Tuttavia, una implementazione parallela, nota come [CSI](/docs/concepts/storage/volumes/#csi) è stata designata per sostituire Flex.
|
||||
|
||||
Considerando queste dinamiche, abbiamo deciso di adottare una misurazione dell'interruzione intermedia finché il CSI non è pronto.
|
||||
Considerando queste evoluzioni, abbiamo deciso di adottare un approccio intermedio finché il CSI non è pronto.
|
||||
|
||||
## Functions of the CCM
|
||||
## Funzioni del CCM
|
||||
|
||||
Il CCM eredita le sue funzioni da componenti di Kubernetes che dipendono da un provider di cloud. Questa sezione è strutturata in base a tali componenti.
|
||||
Il CCM eredita le sue funzioni da componenti di Kubernetes che dipendono da uno specifico provider di cloud. Questa sezione è strutturata sulla base di tali componenti.
|
||||
|
||||
### 1. Kubernetes controller manager
|
||||
|
||||
La maggior parte delle funzioni del CCM è derivata dal KCM. Come menzionato nella sezione precedente, CCM esegue i seguenti cicli di controllo:
|
||||
La maggior parte delle funzioni del CCM deriva dal KCM. Come menzionato nella sezione precedente, CCM esegue i seguenti cicli di controllo:
|
||||
|
||||
* Node controller
|
||||
* Route controller
|
||||
* Service controller
|
||||
* PersistentVolumeLabels controller
|
||||
|
||||
#### Node controller
|
||||
|
||||
Il controller del nodo è responsabile per l'inizializzazione di un nodo ottenendo informazioni sui nodi in esecuzione nel cluster dal provider cloud. Il controller del nodo esegue le seguenti funzioni:
|
||||
Il Node controller è responsabile per l'inizializzazione di un nodo ottenendo informazioni sui nodi in esecuzione nel cluster dal provider cloud. Il controller del nodo esegue le seguenti funzioni:
|
||||
|
||||
1. Inizializzare un nodo con etichette zona / regione specifiche per il cloud.
|
||||
2. Inizializzare un nodo con dettagli di istanza specifici del cloud, ad esempio, tipo e dimensione.
|
||||
3. Ottenere gli indirizzi di rete del nodo e il nome host.
|
||||
1. Inizializzare un nodo con le label zone/region specifiche per il cloud in uso.
|
||||
2. Inizializzare un nodo con le specifiche, ad esempio, tipo e dimensione specifiche del cloud in uso.
|
||||
3. Ottenere gli indirizzi di rete del nodo e l'hostname.
|
||||
4. Nel caso in cui un nodo non risponda, controlla il cloud per vedere se il nodo è stato cancellato dal cloud.
|
||||
Se il nodo è stato eliminato dal cloud, elimina l'oggetto Nodo Kubernetes.
|
||||
Se il nodo è stato eliminato dal cloud, elimina l'oggetto Nodo di Kubernetes.
|
||||
|
||||
#### Route controller
|
||||
|
||||
Il controller di instradamento è responsabile della configurazione delle rotte nel cloud in modo appropriato in modo che i contenitori su nodi diversi nel cluster Kubernetes possano comunicare tra loro. Il controller di percorso è applicabile solo ai cluster di Google Compute Engine.
|
||||
Il Route controller è responsabile della configurazione delle route nel cloud in modo che i container su nodi differenti del cluster Kubernetes possano comunicare tra loro. Il Route controller è utilizzabile solo dai cluster su Google Compute Engine.
|
||||
|
||||
#### Service Controller
|
||||
|
||||
Il responsabile del servizio è responsabile dell'ascolto del servizio di creazione, aggiornamento ed eliminazione di eventi. In base allo stato attuale dei servizi in Kubernetes, configura i bilanciatori del carico cloud (come ELB o Google LB) per riflettere lo stato dei servizi in Kubernetes. Inoltre, assicura che i back-end di servizio per i servizi di bilanciamento del carico del cloud siano aggiornati.
|
||||
|
||||
#### PersistentVolumeLabels controller
|
||||
|
||||
Il controllore PersistentVolumeLabels applica le etichette sui volumi AWS EBS / GCE PD al momento della creazione. Ciò elimina la necessità per gli utenti di impostare manualmente le etichette su questi volumi.
|
||||
|
||||
Queste etichette sono essenziali per la pianificazione dei pod in quanto questi volumi sono costretti a funzionare solo all'interno della regione / zona in cui si trovano. Qualsiasi pod che utilizza questi volumi deve essere pianificato nella stessa zona / zona.
|
||||
|
||||
Il controller PersistentVolumeLabels è stato creato appositamente per CCM; cioè, non esisteva prima della creazione del CCM. Ciò è stato fatto per spostare la logica di etichettatura fotovoltaica nel server API Kubernetes (era un controller di ammissione) al CCM. Non funziona su KCM.
|
||||
Il Service Controller rimane in ascolto per eventi di creazione, aggiornamento ed eliminazione di servizi. In base allo stato attuale dei servizi in Kubernetes, configura i bilanciatori di carico forniti dal cloud (come gli ELB, i Google LB, o gli Oracle Cloud Infrastructure LB) per riflettere lo stato dei servizi in Kubernetes. Inoltre, assicura che i back-end dei bilanciatori di carico forniti dal cloud siano aggiornati.
|
||||
|
||||
### 2. Kubelet
|
||||
|
||||
Il controller del nodo contiene la funzionalità dipendente dal cloud di kubelet. Prima dell'introduzione del CCM, il kubelet era responsabile dell'inizializzazione di un nodo con dettagli specifici del cloud come indirizzi IP, etichette regione / zona e informazioni sul tipo di istanza. L'introduzione del CCM ha spostato questa operazione di inizializzazione dal kubelet al CCM.
|
||||
Il Node Controller contiene l'implementazione dipendente dal cloud della kubelet. Prima dell'introduzione del CCM, la kubelet era responsabile dell'inizializzazione di un nodo con dettagli dipendenti dallo specifico cloud come gli indirizzi IP, le label region/zone e le informazioni sul tipo di istanza. L'introduzione del CCM ha spostato questa operazione di inizializzazione dalla kubelet al CCM.
|
||||
|
||||
In questo nuovo modello, kubelet inizializza un nodo senza informazioni specifiche del cloud. Tuttavia, aggiunge un disturbo al nodo appena creato che rende il nodo non programmabile finché CCM non inizializza il nodo con informazioni specifiche del cloud. Rimuove quindi questa macchia.
|
||||
In questo nuovo modello, la kubelet inizializza un nodo senza informazioni specifiche del cloud. Tuttavia, aggiunge un blocco al nodo appena creato che rende il nodo non selezionabile per eseguire container finché il CCM non inizializza il nodo con le informazioni specifiche del cloud. Il CCM rimuove quindi questo blocco.
|
||||
|
||||
## Sistema a plug-in
|
||||
|
||||
### 3. Kubernetes API server
|
||||
Il cloud controller manager utilizza le interfacce di Go per consentire l'implementazione di implementazioni di qualsiasi cloud. In particolare, utilizza l'interfaccia CloudProvider definita [qui](https://github.com/kubernetes/cloud-provider/blob/9b77dc1c384685cb732b3025ed5689dd597a5971/cloud.go#L42-L62).
|
||||
|
||||
Il controller Persistent Volume Labels sposta la funzionalità dipendente dal cloud del server API di Kubernetes sul CCM come descritto nelle sezioni precedenti
|
||||
L'implementazione dei quattro controller generici evidenziati sopra, alcune strutture, l'interfaccia cloudprovider condivisa rimarranno nel core di Kubernetes. Le implementazioni specifiche per i vari cloud saranno costruite al di fuori del core e implementeranno le interfacce definite nel core.
|
||||
|
||||
## Plugin mechanism
|
||||
Per ulteriori informazioni sullo sviluppo di plug-in, consultare [Developing Cloud Controller Manager](/docs/tasks/administer-cluster/developing-cloud-controller-manager/).
|
||||
|
||||
Il gestore del controller cloud utilizza le interfacce Go per consentire l'implementazione di implementazioni da qualsiasi cloud. In particolare, utilizza l'interfaccia CloudProvider definita [qui](https://github.com/kubernetes/cloud-provider/blob/9b77dc1c384685cb732b3025ed5689dd597a5971/cloud.go#L42-L62).
|
||||
## Autorizzazione
|
||||
|
||||
L'implementazione dei quattro controller condivisi evidenziati sopra e alcuni scaffolding con l'interfaccia cloudprovider condivisa rimarranno nel core di Kubernetes. Le implementazioni specifiche per i fornitori di cloud saranno costruite al di fuori del core e implementeranno le interfacce definite nel core.
|
||||
Questa sezione dettaglia l'accesso richiesto dal CCM sui vari API objects per eseguire le sue operazioni.
|
||||
|
||||
Per ulteriori informazioni sullo sviluppo di plug-in, consultare [Developing Cloud Controller Manager](/docs/tasks/administer-cluster/developing-cloud-controller-manager/).
|
||||
### Node controller
|
||||
|
||||
## Authorization
|
||||
|
||||
Questa sezione suddivide l'accesso richiesto su vari oggetti API da CCM per eseguire le sue operazioni.
|
||||
|
||||
### Node Controller
|
||||
|
||||
Il controller del nodo funziona solo con oggetti nodo. Richiede l'accesso completo per ottenere, elencare, creare, aggiornare, applicare patch, guardare ed eliminare oggetti nodo.
|
||||
Il Node controller funziona solo con oggetti di tipo Node. Richiede l'accesso completo per ottenere, elencare, creare, aggiornare, applicare patch, guardare ed eliminare oggetti di tipo Node.
|
||||
|
||||
v1/Node:
|
||||
|
||||
@@ -137,7 +121,7 @@ v1/Node:
|
||||
|
||||
### Route controller
|
||||
|
||||
Il controllore del percorso ascolta la creazione dell'oggetto Nodo e configura le rotte in modo appropriato. Richiede l'accesso agli oggetti Nodo.
|
||||
Il Route controller ascolta la creazione dell'oggetto Node e configura le rotte in modo appropriato. Richiede l'accesso in lettura agli oggetti di tipo Node.
|
||||
|
||||
v1/Node:
|
||||
|
||||
@@ -145,11 +129,11 @@ v1/Node:
|
||||
|
||||
### Service controller
|
||||
|
||||
Il controller del servizio ascolta Service object crea, aggiorna ed elimina eventi e quindi configura gli endpoint per tali Servizi in modo appropriato.
|
||||
Il Service controller resta in ascolto per eventi di creazione, aggiornamento ed eliminazione di oggetti di tipo Servizi, e configura gli endpoint per tali Servizi in modo appropriato.
|
||||
|
||||
Per accedere ai Servizi, è necessario un elenco e controllare l'accesso. Per aggiornare i servizi, richiede la patch e l'accesso agli aggiornamenti.
|
||||
Per accedere ai Servizi, è necessario il permesso per list e watch. Per aggiornare i Servizi, sono necessari i permessi patch e update.
|
||||
|
||||
Per impostare gli endpoint per i Servizi, richiede l'accesso per creare, elencare, ottenere, guardare e aggiornare.
|
||||
Per impostare gli endpoint per i Servizi, richiede i permessi create, list, get, watch, e update.
|
||||
|
||||
v1/Service:
|
||||
|
||||
@@ -159,20 +143,9 @@ v1/Service:
|
||||
- Patch
|
||||
- Update
|
||||
|
||||
### PersistentVolumeLabels controller
|
||||
|
||||
Il controller Persistent Volume Labels ascolta su Persistent Volume (PV) crea eventi e quindi li aggiorna. Questo controller richiede l'accesso per ottenere e aggiornare PV.
|
||||
|
||||
v1/PersistentVolume:
|
||||
|
||||
- Get
|
||||
- List
|
||||
- Watch
|
||||
- Update
|
||||
|
||||
### Others
|
||||
|
||||
L'implementazione del core di CCM richiede l'accesso per creare eventi e per garantire operazioni sicure richiede l'accesso per creare ServiceAccounts.
|
||||
L'implementazione del core di CCM richiede l'accesso per creare eventi e, per garantire operazioni sicure, richiede l'accesso per creare ServiceAccounts.
|
||||
|
||||
v1/Event:
|
||||
|
||||
@@ -184,7 +157,7 @@ v1/ServiceAccount:
|
||||
|
||||
- Create
|
||||
|
||||
RBAC ClusterRole per il CCM ha il seguente aspetto:
|
||||
L'RBAC ClusterRole per il CCM ha il seguente aspetto:
|
||||
|
||||
```yaml
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
@@ -250,18 +223,23 @@ rules:
|
||||
|
||||
## Vendor Implementations
|
||||
|
||||
I seguenti fornitori di cloud hanno implementato CCM:
|
||||
I seguenti fornitori di cloud hanno una implementazione di CCM:
|
||||
|
||||
* [Digital Ocean](https://github.com/digitalocean/digitalocean-cloud-controller-manager)
|
||||
* [Oracle](https://github.com/oracle/oci-cloud-controller-manager)
|
||||
* [Azure](https://github.com/kubernetes/cloud-provider-azure)
|
||||
* [GCP](https://github.com/kubernetes/cloud-provider-gcp)
|
||||
* [Alibaba Cloud](https://github.com/kubernetes/cloud-provider-alibaba-cloud)
|
||||
* [AWS](https://github.com/kubernetes/cloud-provider-aws)
|
||||
* [Azure](https://github.com/kubernetes/cloud-provider-azure)
|
||||
* [BaiduCloud](https://github.com/baidu/cloud-provider-baiducloud)
|
||||
* [DigitalOcean](https://github.com/digitalocean/digitalocean-cloud-controller-manager)
|
||||
* [GCP](https://github.com/kubernetes/cloud-provider-gcp)
|
||||
* [Hetzner](https://github.com/hetznercloud/hcloud-cloud-controller-manager)
|
||||
* [Linode](https://github.com/linode/linode-cloud-controller-manager)
|
||||
* [OpenStack](https://github.com/kubernetes/cloud-provider-openstack)
|
||||
* [Oracle](https://github.com/oracle/oci-cloud-controller-manager)
|
||||
* [TencentCloud](https://github.com/TencentCloud/tencentcloud-cloud-controller-manager)
|
||||
|
||||
## Cluster Administration
|
||||
|
||||
Sono fornite le istruzioni complete per la configurazione e l'esecuzione del CCM
|
||||
Le istruzioni complete per la configurazione e l'esecuzione del CCM sono fornite
|
||||
[qui](/docs/tasks/administer-cluster/running-cloud-controller/#cloud-controller-manager).
|
||||
|
||||
{{% /capture %}}
|
||||
{{% /capture %}}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
---
|
||||
draft: True
|
||||
title: Comunicazione Master-Node
|
||||
content_template: templates/concept
|
||||
weight: 20
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
---
|
||||
draft: True
|
||||
title: Nodi
|
||||
content_template: templates/concept
|
||||
weight: 10
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
title: "Cluster Administration"
|
||||
title: "Amministrazione del Cluster"
|
||||
weight: 100
|
||||
---
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
---
|
||||
draft: True
|
||||
title: Installazione dei componenti aggiuntivi
|
||||
content_template: templates/concept
|
||||
---
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
---
|
||||
draft: True
|
||||
title: Certificati
|
||||
content_template: templates/concept
|
||||
weight: 20
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
---
|
||||
draft: True
|
||||
title: Cloud Providers
|
||||
content_template: templates/concept
|
||||
weight: 30
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
---
|
||||
draft: True
|
||||
title: Panoramica sull'amministrazione del cluster
|
||||
content_template: templates/concept
|
||||
weight: 10
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
---
|
||||
draft: True
|
||||
title: Metriche del responsabile del controller
|
||||
content_template: templates/concept
|
||||
weight: 100
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
---
|
||||
draft: True
|
||||
title: Federation
|
||||
content_template: templates/concept
|
||||
weight: 80
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
|
||||
draft: True
|
||||
title: Configurazione della raccolta dati kubelet
|
||||
content_template: templates/concept
|
||||
weight: 70
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
---
|
||||
draft: True
|
||||
title: Log di registrazione
|
||||
content_template: templates/concept
|
||||
weight: 60
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
---
|
||||
draft: True
|
||||
title: Gestione delle risorse
|
||||
content_template: templates/concept
|
||||
weight: 40
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
---
|
||||
draft: True
|
||||
title: Cluster Networking
|
||||
content_template: templates/concept
|
||||
weight: 50
|
||||
|
||||
@@ -6,62 +6,61 @@ weight: 90
|
||||
|
||||
{{% capture overview %}}
|
||||
Questa pagina spiega i proxy utilizzati con Kubernetes.
|
||||
|
||||
{{% /capture %}}
|
||||
|
||||
{{% capture body %}}
|
||||
|
||||
## Proxies
|
||||
## Proxy
|
||||
|
||||
Esistono diversi proxy che puoi incontrare quando usi Kubernetes:
|
||||
|
||||
1. Il [proxy kubectl](/docs/tasks/access-application-cluster/access-cluster/#direct-accessing-the-rest-api):
|
||||
1. Il [kubectl proxy](/docs/tasks/access-application-cluster/access-cluster/#direct-accessing-the-rest-api):
|
||||
|
||||
- Funziona sul desktop di un utente o in un pod
|
||||
- proxy da un indirizzo localhost all'apiserver di Kubernetes
|
||||
- client per proxy utilizza HTTP
|
||||
- proxy per apiserver utilizza HTTPS
|
||||
- viene eseguito sul computer di un utente o in un pod
|
||||
- collega un localhost address all'apiserver di Kubernetes
|
||||
- il client comunica con il proxy in HTTP
|
||||
- il proxy comunica con l'apiserver in HTTPS
|
||||
- individua l'apiserver
|
||||
- Aggiunge le intestazioni di autenticazione
|
||||
- aggiunge gli header di autenticazione
|
||||
|
||||
1. Il [proxy apiserver](/docs/tasks/access-application-cluster/access-cluster/#discovering-builtin-services):
|
||||
1. L'[apiserver proxy](/docs/tasks/access-application-cluster/access-cluster/#discovering-builtin-services):
|
||||
|
||||
- è un bastione costruito nell'apiserver
|
||||
- è un proxy presente nell'apiserver
|
||||
- collega un utente al di fuori del cluster agli IP del cluster che altrimenti potrebbero non essere raggiungibili
|
||||
- funziona nei processi di apiserver
|
||||
- client per proxy utilizza HTTPS (o http se apiserver configurato in tal modo)
|
||||
- proxy to target può utilizzare HTTP o HTTPS come scelto dal proxy utilizzando le informazioni disponibili
|
||||
- è uno dei processi dell'apiserver
|
||||
- il client comunica con il proxy in HTTPS (o HTTP se l'apiserver è configurato in tal modo)
|
||||
- il proxy comunica con il target via HTTP o HTTPS come scelto dal proxy utilizzando le informazioni disponibili
|
||||
- può essere utilizzato per raggiungere un nodo, un pod o un servizio
|
||||
- esegue il bilanciamento del carico quando viene utilizzato per raggiungere un servizio
|
||||
|
||||
1. Il [kube proxy](/docs/concepts/services-networking/service/#ips-and-vips):
|
||||
1. Il [kube proxy](/docs/concepts/services-networking/service/#ips-and-vips):
|
||||
|
||||
- Funziona su ciascun nodo
|
||||
- proxy UDP, TCP e SCTP
|
||||
- non capisce l'HTTP
|
||||
- fornisce il bilanciamento del carico
|
||||
- è appena usato per raggiungere i servizi
|
||||
- è eseguito su ciascun nodo
|
||||
- fa da proxy per comunicazioni UDP, TCP e SCTP
|
||||
- non gestisce il protocollo HTTP
|
||||
- esegue il bilanciamento del carico
|
||||
- è usato solo per raggiungere i servizi
|
||||
|
||||
1. Un proxy / bilanciamento del carico di fronte agli apiserver:
|
||||
1. Un proxy/bilanciatore di carico di fronte agli apiserver:
|
||||
|
||||
- esistenza e implementazione variano da cluster a cluster (ad esempio nginx)
|
||||
- si trova tra tutti i client e uno o più apiserver
|
||||
- funge da bilanciamento del carico se ci sono diversi apiserver.
|
||||
- la sua esistenza e implementazione variano da cluster a cluster (ad esempio nginx)
|
||||
- si trova tra i client e uno o più apiserver
|
||||
- funge da bilanciatore di carico se ci sono più di un apiserver.
|
||||
|
||||
1. Cloud Load Balancer su servizi esterni:
|
||||
1. Cloud Load Balancer su servizi esterni:
|
||||
|
||||
- sono forniti da alcuni fornitori di servizi cloud (ad es. AWS ELB, Google Cloud Load Balancer)
|
||||
- vengono creati automaticamente quando il servizio Kubernetes ha tipo "LoadBalancer"
|
||||
- Solitamente supporta solo UDP / TCP
|
||||
- Il supporto SCTP dipende dall'implementazione del servizio di bilanciamento del carico del provider cloud
|
||||
- vengono creati automaticamente quando il servizio Kubernetes ha tipo `LoadBalancer`
|
||||
- solitamente supporta solo UDP / TCP
|
||||
- il supporto SCTP dipende dall'implementazione del bilanciatore di carico del provider cloud
|
||||
- l'implementazione varia a seconda del provider cloud.
|
||||
|
||||
Gli utenti di Kubernetes in genere non devono preoccuparsi di nulla di diverso dai primi due tipi. L'amministratore del cluster
|
||||
in genere assicurerà che questi ultimi tipi siano impostati correttamente.
|
||||
Gli utenti di Kubernetes in genere non devono preoccuparsi alcun proxy, se non i primi due tipi. L'amministratore del cluster
|
||||
in genere assicurerà che gli altri tipi di proxy siano impostati correttamente.
|
||||
|
||||
## Richiedere reindirizzamenti
|
||||
|
||||
I proxy hanno sostituito le capacità di reindirizzamento. I reindirizzamenti sono stati deprecati.
|
||||
I proxy hanno sostituito le funzioni di reindirizzamento. I reindirizzamenti sono stati deprecati.
|
||||
|
||||
{{% /capture %}}
|
||||
|
||||
|
||||
@@ -16,12 +16,12 @@ Questa pagina spiega ...
|
||||
|
||||
{{% capture body %}}
|
||||
|
||||
## Understanding ...
|
||||
## Comprendendo ...
|
||||
|
||||
Kubernetes fornisce ...
|
||||
|
||||
|
||||
## Using ...
|
||||
## Usando ...
|
||||
|
||||
Usare
|
||||
|
||||
@@ -29,7 +29,7 @@ Usare
|
||||
|
||||
{{% capture whatsnext %}}
|
||||
|
||||
**[Optional Section]**
|
||||
**[Sezione opzionale]**
|
||||
|
||||
* Ulteriori informazioni su [Scrivere un nuovo argomento](/docs/home/contribuisci/scrivi-nuovo-argomento/).
|
||||
* Vedi [Uso dei modelli di pagina - Modello di concetto](/docs/home/contribuis/page-templates/#concept_template) su come utilizzare questo modello.
|
||||
|
||||
@@ -0,0 +1,124 @@
|
||||
---
|
||||
title: I componenti di Kubernetes
|
||||
content_template: templates/concept
|
||||
weight: 20
|
||||
card:
|
||||
name: concepts
|
||||
weight: 20
|
||||
---
|
||||
|
||||
{{% capture overview %}}
|
||||
Facendo il deployment di Kubernetes, ottieni un cluster.
|
||||
{{< glossary_definition term_id="cluster" length="all" prepend="Un cluster è">}}
|
||||
|
||||
Questo documento describe i diversi componenti che sono necessari per avere
|
||||
un cluster Kubernetes completo e funzionante.
|
||||
|
||||
Questo è un diagramma di un cluster Kubernetes con tutti i componenti e le loro relazioni.
|
||||
|
||||

|
||||
|
||||
{{% /capture %}}
|
||||
|
||||
{{% capture body %}}
|
||||
## Componenti della Control Plane
|
||||
|
||||
La Control Plane è responsabile di tutte le decisioni globali sul cluster (ad esempio, lo scheduling), e l'individuazione e la risposta ad eventi derivanti dal cluster (ad esempio, l'avvio di un nuovo {{< glossary_tooltip text="pod" term_id="pod">}} quando il valore `replicas` di un deployment non è soddisfatto).
|
||||
|
||||
I componenti della Control Plane possono essere eseguiti su qualsiasi nodo del cluster, ma solitamente gli script di installazione tendono a eseguire tutti i componenti della Control Plane sulla stessa macchina, separando la Control Plane dai workload dell'utente.
|
||||
Vedi [creare un cluster in High-Availability](/docs/admin/high-availability/) per un esempio di un'installazione multi-master.
|
||||
|
||||
### kube-apiserver
|
||||
|
||||
{{< glossary_definition term_id="kube-apiserver" length="all" >}}
|
||||
|
||||
### etcd
|
||||
|
||||
{{< glossary_definition term_id="etcd" length="all" >}}
|
||||
|
||||
### kube-scheduler
|
||||
|
||||
{{< glossary_definition term_id="kube-scheduler" length="all" >}}
|
||||
|
||||
### kube-controller-manager
|
||||
|
||||
{{< glossary_definition term_id="kube-controller-manager" length="all" >}}
|
||||
|
||||
Alcuni esempi di controller gestiti dal kube-controller-manager sono:
|
||||
|
||||
* Node Controller: Responsabile del monitoraggio dei nodi del cluster, e.g. della gestione delle azioni da eseguire quando un nodo diventa non disponibile.
|
||||
* Replication Controller: Responsabile per il mantenimento del corretto numero di Pod per ogni ReplicaSet presente nel sistema
|
||||
* Endpoints Controller: Popola gli oggetti Endpoints (cioè, mette in relazioni i Pods con i Services).
|
||||
* Service Account & Token Controllers: Creano gli account di default e i token di accesso alle API per i nuovi namespaces.
|
||||
|
||||
### cloud-controller-manager
|
||||
|
||||
Il [cloud-controller-manager](/docs/tasks/administer-cluster/running-cloud-controller/) esegue i controller che interagiscono con i cloud provider responsabili per la gestione dell'infrastruttura sottostante al cluster, in caso di deployment in cloud.
|
||||
Il cloud-controller-manager è una funzionalità alpha introdotta in Kubernetes 1.6.
|
||||
|
||||
Il cloud-controller-manager esegue esclusivamente i cicli di controllo specifici dei cloud provider.
|
||||
È possibile disabilitare questi cicli di controllo usando il kube-controller-manager.
|
||||
È inoltre possibile disabilitare i cicli di controllo settando il parametro `--cloud-provider` con il valore `external` durante l'esecuzione del kube-controller-manager.
|
||||
|
||||
Il cloud-controller-manager permette l'evoluzione indipendente al codice di Kubernetes e a quello dei singoli cloud vendor.
|
||||
Precedentemente, il codice core di Kubernetes dipendeva da implementazioni specifiche dei cloud provider.
|
||||
In futuro, implementazioni specifiche per singoli cloud provider devono essere mantenuti dai cloud provider interessati e collegati al cloud-controller-manager.
|
||||
|
||||
I seguenti controller hanno dipendenze verso implementazioni di specifici cloud provider:
|
||||
|
||||
* Node Controller: Per controllare se sul cloud provider i nodi che hanno smesso di rispondere sono stati cancellati
|
||||
* Route Controller: Per configurare le regole di route nella sottostante infrastruttura cloud
|
||||
* Service Controller: Per creare, aggiornare ed eliminare i load balancer nella infrastruttura del cloud provider
|
||||
* Volume Controller: Per creare, associare e montare i volumi e per interagire con il cloud provider per orchestrare i volumi
|
||||
|
||||
## Componenti dei Nodi
|
||||
|
||||
I componenti di Kubernetes che girano sui Worker Node sono responsabili dell'esecuzione dei workload degli utenti.
|
||||
|
||||
### kubelet
|
||||
|
||||
{{< glossary_definition term_id="kubelet" length="all" >}}
|
||||
|
||||
### kube-proxy
|
||||
|
||||
{{< glossary_definition term_id="kube-proxy" length="all" >}}
|
||||
|
||||
### Container Runtime
|
||||
|
||||
{{< glossary_definition term_id="container-runtime" length="all" >}}
|
||||
|
||||
## Addons
|
||||
|
||||
Gli Addons usano le risorse Kubernetes ({{< glossary_tooltip term_id="daemonset" >}}, {{< glossary_tooltip term_id="deployment" >}}, etc) per implementare nuove funzionalità a livello di cluster.
|
||||
Dal momento che gli addons forniscono funzionalità a livello di cluster, le risorse che necessitano di un namespace, vengono collocate nel namespace `kube-system`.
|
||||
|
||||
Alcuni addons sono descritti di seguito; mentre per una più estesa lista di addons, riferirsi ad [Addons](/docs/concepts/cluster-administration/addons/).
|
||||
|
||||
### DNS
|
||||
|
||||
Mentre gli altri addons non sono strettamente richiesti, tutti i cluster Kubernetes dovrebbero essere muniti di un [DNS del cluster](/docs/concepts/services-networking/dns-pod-service/), dal momento che molte applicazioni lo necessitano.
|
||||
|
||||
Il DNS del cluster è un server DNS aggiuntivo rispetto ad altri server DNS presenti nella rete, e si occupa specificatamente dei record DNS per i servizi Kubernetes.
|
||||
|
||||
I container eseguiti da Kubernetes possono utilizzare questo server per la risoluzione DNS.
|
||||
|
||||
### Interfaccia web (Dashboard)
|
||||
|
||||
La [Dashboard](/docs/tasks/access-application-cluster/web-ui-dashboard/) è una interfaccia web per i cluster Kubernetes.
|
||||
Permette agli utenti di gestire e fare troubleshooting delle applicazioni che girano nel cluster, e del cluster stesso.
|
||||
|
||||
### Monitoraggio dei Container
|
||||
|
||||
Il [Monitoraggio dei Container](/docs/tasks/debug-application-cluster/resource-usage-monitoring/) salva serie temporali di metriche generiche dei container in un database centrale e fornisce una interfaccia in cui navigare i dati stessi.
|
||||
|
||||
### Log a livello di Cluster
|
||||
|
||||
Un [log a livello di cluster](/docs/concepts/cluster-administration/logging/) è responsabile per il salvataggio dei log dei container in un log centralizzato la cui interfaccia permette di cercare e navigare nei log.
|
||||
|
||||
{{% /capture %}}
|
||||
{{% capture whatsnext %}}
|
||||
* Scopri i concetti relativi ai [Nodi](/docs/concepts/architecture/nodes/)
|
||||
* Scopri i concetti relativi ai [Controller](/docs/concepts/architecture/controller/)
|
||||
* Scopri i concetti relativi al [kube-scheduler](/docs/concepts/scheduling/kube-scheduler/)
|
||||
* Leggi la [documentazione](https://etcd.io/docs/) ufficiale di etcd
|
||||
{{% /capture %}}
|
||||
@@ -1,12 +1,13 @@
|
||||
---
|
||||
title: Cos'è Kubernetes
|
||||
title: Cos'è Kubernetes?
|
||||
description: >
|
||||
Kubernetes è una piattaforma portatile, estensibile e open-source per la gestione di carichi di lavoro e servizi containerizzati, in grado di facilitare sia la configurazione dichiarativa che l'automazione. La piattaforma vanta un grande ecosistema in rapida crescita. Servizi, supporto e strumenti sono ampiamente disponibili nel mondo Kubernetes .
|
||||
content_template: templates/concept
|
||||
weight: 10
|
||||
card:
|
||||
name: concepts
|
||||
weight: 10
|
||||
---
|
||||
<meta charset="utf-8" />
|
||||
|
||||
{{% capture overview %}}
|
||||
Questa pagina è una panoramica generale su Kubernetes.
|
||||
@@ -15,75 +16,77 @@ Questa pagina è una panoramica generale su Kubernetes.
|
||||
{{% capture body %}}
|
||||
Kubernetes è una piattaforma portatile, estensibile e open-source per la gestione di carichi di lavoro e servizi containerizzati, in grado di facilitare sia la configurazione dichiarativa che l'automazione. La piattaforma vanta un grande ecosistema in rapida crescita. Servizi, supporto e strumenti sono ampiamente disponibili nel mondo Kubernetes .
|
||||
|
||||
Il nome Kubernetes deriva dal greco, significa timoniere o pilota. Google ha aperto il progetto Kubernetes nel 2014. Kubernetes si basa su [dieci anni e mezzo di esperienza di Google nella gestione di workloads (carichi di lavoro) di produzione in scala] (https://ai.google/research/pubs/pub43438), combinata con le migliori idee e pratiche della comunità.
|
||||
Il nome Kubernetes deriva dal greco, significa timoniere o pilota. Google ha reso open-source il progetto Kubernetes nel 2014. Kubernetes unisce [oltre quindici anni di esperienza di Google nella gestione di carichi di lavoro di produzione su scala mondiale](https://ai.google/research/pubs/pub43438) con le migliori idee e pratiche della comunità.
|
||||
|
||||
## Facciamo un piccolo passo indietro
|
||||
## Facciamo un piccolo salto indietro
|
||||
Diamo un'occhiata alla ragione per cui Kubernetes è così utile facendo un piccolo salto indietro nel tempo.
|
||||
|
||||

|
||||
|
||||
**L'era del deployment tradizionale:**
|
||||
All'inizio, le organizzazioni eseguivano applicazioni su server fisici. Non c'era modo di definire i limiti delle risorse per le applicazioni in un server fisico e questo ha causato non pochi problemi di allocazione delle risorse. Ad esempio, se più applicazioni vengono eseguite su di un server fisico, si possono verificare casi in cui un'applicazione assorbe la maggior parte delle risorse e, di conseguenza, le altre applicazioni non raggiungono prestazioni ottimali. Una soluzione per questo sarebbe di eseguire ogni applicazione su un server fisico diverso. Ma questo non è la soluzione ideale, perché le risorse vengono sottoutilizzate, inoltre, questa pratica risulta essere costosa per le organizzazioni, le quali devono mantenere numerosi server fisici.
|
||||
All'inizio, le organizzazioni eseguivano applicazioni su server fisici. Non c'era modo di definire i limiti delle risorse per le applicazioni in un server fisico e questo ha causato non pochi problemi di allocazione delle risorse. Ad esempio, se più applicazioni vengono eseguite sullo stesso server fisico, si possono verificare casi in cui un'applicazione assorbe la maggior parte delle risorse e, di conseguenza, le altre applicazioni non hanno le prestazioni attese. Una soluzione per questo sarebbe di eseguire ogni applicazione su un server fisico diverso. Ma questa non è una soluzione ideale, dal momento che le risorse vengono sottoutilizzate, inoltre, questa pratica risulta essere costosa per le organizzazioni, le quali devono mantenere numerosi server fisici.
|
||||
|
||||
**L'era del deployment virtualizzato:** Come soluzione venne introdotta la virtualizzazione. Essa consente di eseguire più macchine virtuali (VM) su di una singola CPU di un server fisico. La virtualizzazione consente di isolare le applicazioni tra più macchine virtuali e fornisce un livello di sicurezza superiore, dal momento che le informazioni di un'applicazione non sono liberamente accessibili da un'altra applicazione.
|
||||
**L'era del deployment virtualizzato:**
|
||||
Come soluzione venne introdotta la virtualizzazione. Essa consente di eseguire più macchine virtuali (VM) su una singola CPU fisica. La virtualizzazione consente di isolare le applicazioni in più macchine virtuali e fornisce un livello di sicurezza superiore, dal momento che le informazioni di un'applicazione non sono liberamente accessibili da un'altra applicazione.
|
||||
|
||||
La virtualizzazione consente un migliore utilizzo delle risorse in un server fisico e permette una migliore scalabilità, perché un'applicazione può essere aggiunta o aggiornata facilmente, riduce i costi dell'hardware e molto altro ancora.
|
||||
La virtualizzazione consente un migliore utilizzo delle risorse riducendo i costi per l'hardware, permette una migliore scalabilità, dato che un'applicazione può essere aggiunta o aggiornata facilmente, e ha molti altri vantaggi.
|
||||
|
||||
Ogni VM è una macchina completa che esegue tutti i componenti, compreso il proprio sistema operativo, oltre all'hardware virtualizzato.
|
||||
Ogni VM è una macchina completa che esegue tutti i componenti, compreso il proprio sistema operativo, sopra all'hardware virtualizzato.
|
||||
|
||||
**L'era del deployment a container:** I container sono simili alle macchine virtuali, ma presentano proprietà di isolamento che consentono di condividere il sistema operativo (OS) tra le applicazioni. Pertanto, i container sono considerati più leggeri. Analogamente a una macchina virtuale, un contenitore dispone di un proprio filesystem, CPU, memoria, spazio di elaborazione e altro ancora. Poiché sono disaccoppiati dall'infrastruttura sottostante, risultano portatili su cloud e distribuzioni di sistemi operativi.
|
||||
**L'era del deployment in container:**
|
||||
I container sono simili alle macchine virtuali, ma presentano un modello di isolamento più leggero, condividendo il sistema operativo (OS) tra le applicazioni. Pertanto, i container sono considerati più leggeri. Analogamente a una macchina virtuale, un container dispone di una segregazione di filesystem, CPU, memoria, PID e altro ancora. Poiché sono disaccoppiati dall'infrastruttura sottostante, risultano portabili tra differenti cloud e diverse distribuzioni.
|
||||
|
||||
I container stanno diventando popolari perché offrono molteplici vantaggi. Alcuni dei vantaggi dei container sono elencati di seguito:
|
||||
I container sono diventati popolari dal momento che offrono molteplici vantaggi, ad esempio:
|
||||
|
||||
* Creazione e distribuzione di applicazioni Agile: maggiore facilità ed efficienza nella creazione di immagini container rispetto all'uso di immagini VM.
|
||||
* Sviluppo, integrazione e distribuzione continuativi: consente la creazione e la distribuzione di immagini container affidabili e frequenti con rollback rapidi e semplici (a causa dell'immutabilità dell'immagine).
|
||||
* Separazione delle fasi di Dev e Ops: si creano immagini contenitore di applicazioni al momento della costruzione/rilascio piuttosto che al momento della distribuzione, disaccoppiando così le applicazioni dall'infrastruttura.
|
||||
* L'osservabilità non riguarda solo le informazioni e le metriche a livello di sistema operativo, ma anche lo stato di salute dell'applicazione e altri segnali.
|
||||
* Coerenza ambientale tra sviluppo, test e produzione: Funziona sullo stesso modo su un computer portatile come nel cloud.
|
||||
* Portabilità della distribuzione cloud e del sistema operativo: Funziona su Ubuntu, RHEL, CoreOS, on-prem, Google Kubernetes Engine e ovunque.
|
||||
* Gestione incentrata sulle applicazioni: Aumenta il livello di astrazione dall'esecuzione di un sistema operativo su hardware virtuale all'esecuzione di un'applicazione su un sistema operativo utilizzando risorse logiche.
|
||||
* Microservizi liberamente abbinabili, distribuiti, elastici e liberalizzati: le applicazioni sono suddivise in pezzi più piccoli e indipendenti e possono essere distribuite e gestite dinamicamente - niente stack monolitici che girano su di una grande macchina monouso.
|
||||
* Isolamento delle risorse: prestazioni prevedibili dell'applicazione.
|
||||
* Adozione di pratiche per lo sviluppo/test/rilascio continuativo: consente la frequente creazione e la distribuzione di container image affidabili, dando la possibilità di fare rollback rapidi e semplici (grazie all'immutabilità dell'immagine stessa).
|
||||
* Separazione delle fasi di Dev e Ops: le container image vengono prodotte al momento della compilazione dell'applicativo piuttosto che nel momento del rilascio, permettendo così di disaccoppiare le applicazioni dall'infrastruttura sottostante.
|
||||
* L'osservabilità non riguarda solo le informazioni e le metriche del sistema operativo, ma anche lo stato di salute e altri segnali dalle applicazioni.
|
||||
* Coerenza di ambiente tra sviluppo, test e produzione: i container funzionano allo stesso modo su un computer portatile come nel cloud.
|
||||
* Portabilità tra cloud e sistemi operativi differenti: lo stesso container funziona su Ubuntu, RHEL, CoreOS, on-premise, Google Kubernetes Engine e da qualsiasi altra parte.
|
||||
* Gestione incentrata sulle applicazioni: Aumenta il livello di astrazione dall'esecuzione di un sistema operativo su hardware virtualizzato all'esecuzione di un'applicazione su un sistema operativo utilizzando risorse logiche.
|
||||
* Microservizi liberamente combinabili, distribuiti, ad alta scalabilità: le applicazioni sono suddivise in pezzi più piccoli e indipendenti che possono essere distribuite e gestite dinamicamente - niente stack monolitici che girano su una singola grande macchina.
|
||||
* Isolamento delle risorse: le prestazioni delle applicazioni sono prevedibili.
|
||||
* Utilizzo delle risorse: alta efficienza e densità.
|
||||
|
||||
## Perché necessito di Kubernetes e cosa posso farci
|
||||
|
||||
I container sono un buon modo per raggruppare ed eseguire le applicazioni. In un ambiente di produzione, è necessario gestire i container che eseguono le applicazioni e garantire che non si verifichino tempi di inattività. Per esempio, se un container si guasta, un altro container necessita di essere riavviato. Non sarebbe più facile se questo comportamento fosse gestito direttamente da un sistema?
|
||||
I container sono un buon modo per distribuire ed eseguire le tue applicazioni. In un ambiente di produzione, è necessario gestire i container che eseguono le applicazioni e garantire che non si verifichino interruzioni dei servizi. Per esempio, se un container si interrompe, è necessario avviare un nuovo container. Non sarebbe più facile se questo comportamento fosse gestito direttamente da un sistema?
|
||||
|
||||
È così che Kubernetes viene in soccorso! Kubernetes vi fornisce un framework per far funzionare i sistemi distribuiti in modo resiliente. Si prende cura delle vostre esigenze di scalabilità, failover, schemi di distribuzione, e altro ancora. Per esempio, Kubernetes può facilmente gestire un Canary deploument per il vostro sistema.
|
||||
È proprio qui che Kubernetes viene in soccorso! Kubernetes ti fornisce un framework per far funzionare i sistemi distribuiti in modo resiliente. Kubernetes si occupa della scalabilità, failover, distribuzione delle tue applicazioni. Per esempio, Kubernetes può facilmente gestire i rilasci con modalità Canary deployment.
|
||||
|
||||
Kubernetes vi fornisce:
|
||||
Kubernetes ti fornisce:
|
||||
|
||||
* **Scoperta del servizio e bilanciamento del carico**
|
||||
Kubernetes può esporre un contenitore usando il nome DNS o il proprio indirizzo IP. Se il traffico verso un container è alto, Kubernetes è in grado di caricare e distribuire il traffico di rete in modo che la distribuzione rimanga stabile.
|
||||
* **Orchestrazione dello stoccaggio**
|
||||
Kubernetes vi permette di montare automaticamente un sistema di archiviazione di vostra scelta, come per esempio memoria locale, fornitori di cloud pubblici, e altro ancora.
|
||||
* **Scoperta dei servizi e bilanciamento del carico**
|
||||
Kubernetes può esporre un container usando un nome DNS o il suo indirizzo IP. Se il traffico verso un container è alto, Kubernetes è in grado di distribuire il traffico su più container in modo che il servizio rimanga stabile.
|
||||
* **Orchestrazione dello storage**
|
||||
Kubernetes ti permette di montare automaticamente un sistema di archiviazione di vostra scelta, come per esempio storage locale, dischi forniti da cloud pubblici, e altro ancora.
|
||||
* **Rollout e rollback automatizzati**
|
||||
È possibile descrivere lo stato desiderato per i propri contenitori distribuiti utilizzando Kubernetes, e si può cambiare lo stato da quello attuale a quello desiderato ad una velocità stabilita e controllata. Per esempio, potete automatizzare Kubernetes per creare nuovi container per la vostra distribuzione, rimuovere i container esistenti e adottare tutte le loro risorse nel nuovo container.
|
||||
* **Packing automatico dei file bin**
|
||||
Kubernetes permette di specificare quanta CPU e memoria (RAM) ha bisogno ogni container. Quando i container dispongono di richieste di risorse specifiche, Kubernetes può prendere decisioni migliori per gestire le risorse per i container.
|
||||
* **Auto risoluzione**
|
||||
Kubernetes riavvia i container che si bloccano, sostituisce i container, termina i container che non rispondono al controllo di salute definito dall'utente, e non li distribuisce ai clienti finché non sono pronti per funzionare correttamente..
|
||||
Puoi utilizzare Kubernetes per descrivere lo stato desiderato per i propri container, e Kubernetes si occuperà di cambiare lo stato attuale per raggiungere quello desiderato ad una velocità controllata. Per esempio, puoi automatizzare Kubernetes per creare nuovi container per il tuo servizio, rimuovere i container esistenti e adattare le loro risorse a quelle richieste dal nuovo container.
|
||||
* **Ottimizzazione dei carichi**
|
||||
Fornisci a Kubernetes un cluster di nodi per eseguire i container. Puoi istruire Kubernetes su quanta CPU e memoria (RAM) ha bisogno ogni singolo container. Kubernetes allocherà i container sui nodi per massimizzare l'uso delle risorse a disposizione.
|
||||
* **Self-healing**
|
||||
Kubernetes riavvia i container che si bloccano, sostituisce container, termina i container che non rispondono agli health checks, e evita di far arrivare traffico ai container che non sono ancora pronti per rispondere correttamente.
|
||||
* **Gestione di informazioni sensibili e della configurazione**
|
||||
Kubernetes consente di memorizzare e gestire informazioni sensibili, come le password, i token OAuth e le chiavi ssh. È possibile distribuire e aggiornare i segreti e la configurazione dell'applicazione senza dover ricostruire le immagini del container e senza rivelare segreti nella configurazione della pila.
|
||||
Kubernetes consente di memorizzare e gestire informazioni sensibili, come le password, i token OAuth e le chiavi SSH. Puoi distribuire e aggiornare le informazioni sensibili e la configurazione dell'applicazione senza dover ricostruire le immagini dei container e senza svelare le informazioni sensibili nella configurazione del tuo sistema.
|
||||
|
||||
## Cosa non è Kubernetes
|
||||
|
||||
Kubernetes non è un sistema PaaS (Platform as a Service) tradizionale e completo. Dal momento che Kubernetes opera a livello di contenitore piuttosto che a livello hardware, esso fornisce alcune caratteristiche generalmente applicabili comuni alle offerte PaaS, come la distribuzione, il ridimensionamento, il bilanciamento del carico, la registrazione e il monitoraggio. Tuttavia, Kubernetes non è monolitico, e queste soluzioni predefinite sono opzionali e collegabili. Kubernetes fornisce gli elementi costitutivi per la costruzione di piattaforme di sviluppo, ma conserva la scelta e la flessibilità dell'utente dove è importante.
|
||||
Kubernetes non è un sistema PaaS (Platform as a Service) tradizionale e completo. Dal momento che Kubernetes opera a livello di container piuttosto che che a livello hardware, esso fornisce alcune caratteristiche generalmente disponibili nelle offerte PaaS, come la distribuzione, il ridimensionamento, il bilanciamento del carico, la registrazione e il monitoraggio. Tuttavia, Kubernetes non è monolitico, e queste soluzioni predefinite sono opzionali ed estensibili. Kubernetes fornisce gli elementi base per la costruzione di piattaforme di sviluppo, ma conserva le scelte dell'utente e la flessibilità dove è importante.
|
||||
|
||||
Kubernetes:
|
||||
|
||||
* Non limita i tipi di applicazioni supportate. Kubernetes mira a supportare una grande varietà di carichi di lavoro, compresi i carichi di lavoro senza stato, stateful e di elaborazione dati. Se un'applicazione può essere eseguita in un container, dovrebbe funzionare alla grande anche su Kubernetes.
|
||||
* Non distribuisce il codice sorgente e non costruisce la vostra applicazione. I flussi di lavoro Continuous Integration, Delivery, and Deployment (CI/CD) sono determinati dalle culture e preferenze dell'organizzazione e dai requisiti tecnici.
|
||||
* Non fornisce servizi a livello applicativo, come middleware (per esempio, bus di messaggi), framework di elaborazione dati (per esempio, Spark), database (per esempio, mysql), cache, né sistemi di archiviazione cluster (per esempio, Ceph) come servizi integrati. Tali componenti possono essere eseguiti su Kubernetes, e/o possono essere richiamati da applicazioni che girano su Kubernetes attraverso meccanismi portatili, come l'Open Service Broker.
|
||||
* Non impone soluzioni di logging, monitoraggio o di allarme. Fornisce alcune integrazioni come test di un concetto, e meccanismi per raccogliere ed esportare le metriche.
|
||||
* Non fornisce né rende obbligatorio un linguaggio/sistema di configurazione (per esempio, jsonnet). Fornisce un'API dichiarativa che può essere presa di mira da forme arbitrarie di specifiche dichiarative.
|
||||
* Non fornisce né adotta alcuna configurazione completa della macchina, manutenzione, gestione o sistemi di autoguarigione.
|
||||
* Inoltre, Kubernetes non è un semplice sistema di orchestrazione. Infatti, questo sistema elimina la necessità di orchestrazione. La definizione tecnica di orchestrazione è l'esecuzione di un flusso di lavoro definito: prima si fa A, poi B, poi C. Al contrario, Kubernetes è composto da un insieme di processi di controllo indipendenti e componibili che guidano costantemente lo stato attuale verso lo stato desiderato. Non dovrebbe importare come si passa dalla A alla C. Anche il controllo centralizzato non è richiesto. Questo si traduce in un sistema più facile da usare e più potente, robusto, resiliente ed estensibile.
|
||||
* Non limita i tipi di applicazioni supportate. Kubernetes mira a supportare una grande varietà di carichi di lavoro, compresi i carichi di lavoro stateless, stateful e elaborazione di dati. Se un'applicazione può essere eseguita in un container, dovrebbe funzionare alla grande anche su Kubernetes.
|
||||
* Non compila il codice sorgente e non crea i container. I flussi di Continuous Integration, Delivery, and Deployment (CI/CD) sono determinati dalla cultura e dalle preferenze dell'organizzazione e dai requisiti tecnici.
|
||||
* Non fornisce servizi a livello applicativo, come middleware (per esempio, bus di messaggi), framework di elaborazione dati (per esempio, Spark), database (per esempio, mysql), cache, né sistemi di storage distribuito (per esempio, Ceph) come servizi integrati. Tali componenti possono essere eseguiti su Kubernetes, e/o possono essere richiamati da applicazioni che girano su Kubernetes attraverso meccanismi come l'[Open Service Broker](https://openservicebrokerapi.org/).
|
||||
* Non impone soluzioni di logging, monitoraggio o di gestione degli alert. Fornisce alcune integrazioni come dimostrazione, e meccanismi per raccogliere ed esportare le metriche.
|
||||
* Non fornisce né rende obbligatorio un linguaggio/sistema di configurazione (per esempio, Jsonnet). Fornisce un'API dichiarativa che può essere richiamata da qualsiasi sistema.
|
||||
* Non fornisce né adotta alcun sistema di gestione completa della macchina, configurazione, manutenzione, gestione o sistemi di self healing.
|
||||
* Inoltre, Kubernetes non è un semplice sistema di orchestrazione. Infatti, questo sistema elimina la necessità di orchestrazione. La definizione tecnica di orchestrazione è l'esecuzione di un flusso di lavoro definito: prima si fa A, poi B, poi C. Al contrario, Kubernetes è composto da un insieme di processi di controllo indipendenti e componibili che guidano costantemente lo stato attuale verso lo stato desiderato. Non dovrebbe importare come si passa dalla A alla C. Anche il controllo centralizzato non è richiesto. Questo si traduce in un sistema più facile da usare, più potente, robusto, resiliente ed estensibile.
|
||||
|
||||
{{% /capture %}}
|
||||
|
||||
{{% capture whatsnext %}}
|
||||
* Dai un'occhiata alla pagina [Le Componenti di Kubernetes](/docs/concepts/overview/components/)
|
||||
* Dai un'occhiata alla pagina [i componenti di Kubernetes](/docs/concepts/overview/components/)
|
||||
* Sai già [Come Iniziare](/docs/setup/)?
|
||||
{{% /capture %}}
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
---
|
||||
approvers:
|
||||
- chenopis
|
||||
title: Documentazione di Kubernetes
|
||||
noedit: true
|
||||
cid: docsHome
|
||||
layout: docsportal_home
|
||||
class: gridPage
|
||||
linkTitle: "Home"
|
||||
main_menu: true
|
||||
weight: 10
|
||||
hide_feedback: true
|
||||
menu:
|
||||
main:
|
||||
title: "Documentazione"
|
||||
weight: 20
|
||||
post: >
|
||||
<p>Impara come usare Kubernetes con informazioni concettuali, guide e documentazione tecnica. Puoi anche <a href="/editdocs/" data-auto-burger-exclude>contribuire alla documentazione</a>!</p>
|
||||
overview: >
|
||||
Kubernetes è un motore open source di orchestrazione di containers che automatizza il deployment, la scalabilità e la gestione di applicazioni containerizzate. Il progetto open source è ospitato dalla Cloud Native Computing Foundation (<a href="https://www.cncf.io/about">CNCF</a>).
|
||||
cards:
|
||||
- name: concepts
|
||||
title: "Capire le basi"
|
||||
description: "Impara Kubernetes e i suoi concetti fondamentali."
|
||||
button: "Impara i concetti"
|
||||
button_path: "/docs/concepts"
|
||||
- name: tutorials
|
||||
title: "Prova Kubernetes"
|
||||
description: "Segui delle guide per imparare come fare il deployment di applicativi in Kubernetes."
|
||||
button: "Vedi le guide"
|
||||
button_path: "/docs/tutorials"
|
||||
- name: setup
|
||||
title: "Configura un cluster"
|
||||
description: "Esegui Kubernetes sulla base delle tue risorse e necessità."
|
||||
button: "Configura Kubernetes"
|
||||
button_path: "/docs/setup"
|
||||
- name: tasks
|
||||
title: "Impara come usare Kubernetes"
|
||||
description: "Impara quali sono le procedure principali e come eseguirle in pochi passaggi."
|
||||
button: "Guarda le procedure"
|
||||
button_path: "/docs/tasks"
|
||||
- name: reference
|
||||
title: Guarda le referenze
|
||||
description: Naviga la terminologia, la sintassi della riga di comando, la documentazione delle API e degli strumenti di installazione.
|
||||
button: Vedi le referenze
|
||||
button_path: /docs/reference
|
||||
- name: contribute
|
||||
title: Contribuisci alla documentazione
|
||||
description: Chiunque può contribuire, indipendentemente dal fatto che sia nuovo nel progetto o un utente esperto.
|
||||
button: Contribuisci alla documentazione
|
||||
button_path: /docs/contribute
|
||||
- name: download
|
||||
title: Scarica Kubernetes
|
||||
description: Se stai installando Kubernetes o aggiornandolo all'ultima versione, controlla le note di rilascio per la versione corrente.
|
||||
- name: about
|
||||
title: Sulla documentazione
|
||||
description: Questo sito contiene la documentazione per la versione corrente e le precedenti 4 versioni di Kubernetes.
|
||||
---
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
---
|
||||
title: Cluster
|
||||
id: cluster
|
||||
date: 2019-06-15
|
||||
full_link:
|
||||
short_description: >
|
||||
Un'insieme di macchine, chiamate nodi, che eseguono container e gestite da Kubernetes. Un cluster ha almeno un Worker Node e un Control Plane Node.
|
||||
|
||||
aka:
|
||||
tags:
|
||||
- fundamental
|
||||
- operation
|
||||
---
|
||||
Un'insieme di macchine, chiamate nodi, che eseguono container e gestite da Kubernetes. Un cluster ha almeno un Worker Node e un Control Plane Node.
|
||||
|
||||
<!--more-->
|
||||
Il/I Worker Node ospitano i Pod che eseguono i workload dell'utente. Il/I Control Plane Node gestiscono i Worker Node e tutto quanto accade all'interno del cluster. Per garantire la high-availability e la possibilità di failover del cluster, vengono utilizzati più Control Plane Node.
|
||||
@@ -0,0 +1,21 @@
|
||||
---
|
||||
title: Container Runtime
|
||||
id: container-runtime
|
||||
date: 2019-06-05
|
||||
full_link: /docs/reference/generated/container-runtime
|
||||
short_description: >
|
||||
Il container runtime è il software che è responsabile per l'esecuzione dei container.
|
||||
|
||||
aka:
|
||||
tags:
|
||||
- fundamental
|
||||
- workload
|
||||
---
|
||||
Il container runtime è il software che è responsabile per l'esecuzione dei container.
|
||||
|
||||
<!--more-->
|
||||
|
||||
Kubernetes supporta diversi container runtimes: [Docker](http://www.docker.com),
|
||||
[containerd](https://containerd.io), [cri-o](https://cri-o.io/),
|
||||
[rktlet](https://github.com/kubernetes-incubator/rktlet) e tutte le implementazioni di
|
||||
[Kubernetes CRI (Container Runtime Interface)](https://github.com/kubernetes/community/blob/master/contributors/devel/sig-node/container-runtime-interface.md).
|
||||
Executable
+21
@@ -0,0 +1,21 @@
|
||||
---
|
||||
title: etcd
|
||||
id: etcd
|
||||
date: 2018-04-12
|
||||
full_link: /docs/tasks/administer-cluster/configure-upgrade-etcd/
|
||||
short_description: >
|
||||
È un database key-value altamente disponibile che è usato da Kubernetes per salvare tutte le informazioni del cluster.
|
||||
|
||||
aka:
|
||||
tags:
|
||||
- architecture
|
||||
- storage
|
||||
---
|
||||
È un database key-value ridondato, che è usato da Kubernetes per salvare tutte le informazioni del cluster.
|
||||
|
||||
<!--more-->
|
||||
|
||||
Se il tuo cluster utilizza etcd per salvare le informazioni, assicurati di
|
||||
avere una strategia di [backup](/docs/tasks/administer-cluster/configure-upgrade-etcd/#backing-up-an-etcd-cluster) per questi dati.
|
||||
|
||||
Puoi trovare informazioni dettagliate su etcd sulla [documentazione](https://etcd.io/docs/) ufficiale.
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
---
|
||||
title: API server
|
||||
id: kube-apiserver
|
||||
date: 2018-04-12
|
||||
full_link: /docs/reference/generated/kube-apiserver/
|
||||
short_description: >
|
||||
Componente della Control plane che serve le Kubernetes API.
|
||||
|
||||
aka:
|
||||
- kube-apiserver
|
||||
tags:
|
||||
- architecture
|
||||
- fundamental
|
||||
---
|
||||
L'API server è un componente di Kubernetes
|
||||
{{< glossary_tooltip text="control plane" term_id="control-plane" >}} che espone le Kubernetes API.
|
||||
L'API server è il front end del control plane di Kubernetes.
|
||||
|
||||
<!--more-->
|
||||
|
||||
La principale implementazione di un server Kubernetes API è [kube-apiserver](/docs/reference/generated/kube-apiserver/).
|
||||
kube-apiserver è progettato per scalare orizzontalmente, cioè scala aumentando il numero di istanze.
|
||||
Puoi eseguire multiple istanze di kube-apiserver e bilanciare il traffico tra queste istanze.
|
||||
@@ -0,0 +1,18 @@
|
||||
---
|
||||
title: kube-controller-manager
|
||||
id: kube-controller-manager
|
||||
date: 2018-04-12
|
||||
full_link: /docs/reference/command-line-tools-reference/kube-controller-manager/
|
||||
short_description: >
|
||||
Componente della Control Plane che gestisce i controller.
|
||||
|
||||
aka:
|
||||
tags:
|
||||
- architecture
|
||||
- fundamental
|
||||
---
|
||||
Componente della Control Plane che gestisce {{< glossary_tooltip text="controllers" term_id="controller" >}}.
|
||||
|
||||
<!--more-->
|
||||
|
||||
Da un punto di vista logico, ogni {{< glossary_tooltip text="controller" term_id="controller" >}} è un processo separato, ma per ridurre la complessità, tutti i principali controller di Kubernetes vengono raggruppati in un unico container ed eseguiti in un singolo processo.
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
---
|
||||
title: kube-proxy
|
||||
id: kube-proxy
|
||||
date: 2018-04-12
|
||||
full_link: /docs/reference/command-line-tools-reference/kube-proxy/
|
||||
short_description: >
|
||||
`kube-proxy` è un proxy eseguito su ogni nodo del cluster.
|
||||
|
||||
aka:
|
||||
tags:
|
||||
- fundamental
|
||||
- networking
|
||||
---
|
||||
[kube-proxy](/docs/reference/command-line-tools-reference/kube-proxy/) è un
|
||||
proxy eseguito su ogni nodo del cluster, responsabile della gestione dei
|
||||
Kubernetes {{< glossary_tooltip term_id="service">}}.
|
||||
|
||||
<!--more-->
|
||||
|
||||
I kube-proxy mantengono le regole di networking sui nodi.
|
||||
Queste regole permettono la comunicazione verso gli altri nodi del cluster o l'esterno.
|
||||
|
||||
Il kube-proxy usa le librerie del sistema operativo quando possible; in caso contrario il kube-proxy gestisce il traffico direttamente.
|
||||
+18
@@ -0,0 +1,18 @@
|
||||
---
|
||||
title: kube-scheduler
|
||||
id: kube-scheduler
|
||||
date: 2018-04-12
|
||||
full_link: /docs/reference/generated/kube-scheduler/
|
||||
short_description: >
|
||||
Componente della Control Plane che controlla i pod appena creati che non hanno un nodo assegnato, e dopo averlo identificato glielo assegna.
|
||||
|
||||
aka:
|
||||
tags:
|
||||
- architecture
|
||||
---
|
||||
Componente della Control Plane che controlla i pod appena creati che non hanno un nodo assegnato, e dopo averlo identificato glielo assegna.
|
||||
|
||||
<!--more-->
|
||||
|
||||
I fattori presi in considerazioni nell'individuare un nodo a cui assegnare l'esecuzione di un Pod includono la richiesta di risorse del Pod stesso e degli altri workload presenti nel sistema, i vincoli delle hardware/software/policy, le indicazioni di affinity e di anti-affinity, requisiti relativi alla disponibilità di dati/Volumes, le interferenze tra diversi workload e le scadenze.
|
||||
|
||||
+19
@@ -0,0 +1,19 @@
|
||||
---
|
||||
title: Kubelet
|
||||
id: kubelet
|
||||
date: 2018-04-12
|
||||
full_link: /docs/reference/generated/kubelet
|
||||
short_description: >
|
||||
Un agente che è eseguito su ogni nodo del cluster. Si assicura che i container siano eseguiti in un pod.
|
||||
|
||||
aka:
|
||||
tags:
|
||||
- fundamental
|
||||
- core-object
|
||||
---
|
||||
Un agente che è eseguito su ogni nodo del cluster. Si assicura che i container siano eseguiti in un pod.
|
||||
|
||||
<!--more-->
|
||||
|
||||
La kubelet riceve un set di PodSpecs che vengono forniti attraverso vari meccanismi, e si assicura che i container descritti in questi PodSpecs funzionino correttamente e siano sani. La kubelet non gestisce i container che non sono stati creati da Kubernetes.
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
L'uso di `Federation v1` è fortemente sconsigliato. `Federation V1` ha ormai raggiunto lo stato GA e non è più in
|
||||
fase di sviluppo attivo. La documentazione è solo per scopi storici.
|
||||
L'uso di `Federation v1` è fortemente sconsigliato. `Federation V1` non ha mai raggiunto lo stato GA e non è più in fase di sviluppo attivo. La documentazione è solo per scopi storici.
|
||||
|
||||
Per ulteriori informazioni, il seguente link
|
||||
[Kubernetes Federation v2](https://github.com/kubernetes-sigs/federation-v2).
|
||||
Per ulteriori informazioni, vedi la documentazione per il suo successore [Kubernetes Federation v2](https://github.com/kubernetes-sigs/federation-v2).
|
||||
|
||||
+18
-109
@@ -1,134 +1,43 @@
|
||||
---
|
||||
title: Partners
|
||||
bigheader: Kubernetes Partners
|
||||
abstract: Growing the Kubernetes ecosystem.
|
||||
title: Partner
|
||||
bigheader: I partner di Kubernetes
|
||||
abstract: Far crescere l'ecosistema di Kubernetes.
|
||||
class: gridPage
|
||||
cid: partners
|
||||
---
|
||||
|
||||
<section id="users">
|
||||
<main>
|
||||
<h5>Kubernetes collabora con i partner per creare una base di codice forte e vivace che supporti uno spettro di piattaforme complementari.</h5>
|
||||
<div class="col-container">
|
||||
<div class="col-nav">
|
||||
<center>
|
||||
<h5---
|
||||
title: Partners
|
||||
bigheader: I Partners di Kubernetes
|
||||
abstract: La Crescita dell'ecosistema Kubernetes.
|
||||
class: gridPage
|
||||
cid: partners
|
||||
---
|
||||
<meta charset="utf-8" />
|
||||
|
||||
<section id="users">
|
||||
<main>
|
||||
<h5>Kubernetes lavora in collaborazione con diversi partner al fine di creare un codice dalla base forte e dinamica che supporti uno spettro di piattaforme complementari.</h5>
|
||||
<main class="main-section">
|
||||
<h5>Kubernetes collabora con i partner per creare per creare un codebase che supporti uno spettro di piattaforme complementari.</h5>
|
||||
<div class="col-container">
|
||||
<div class="col-nav">
|
||||
<center>
|
||||
<h5>
|
||||
<b>Fornitori di Servizi Certificati Kubernetes</b>
|
||||
<b>Fornitori Certificati di Servizi su Kubernetes</b>
|
||||
</h5>
|
||||
<br>Fornitori di servizi controllati con grande esperienza nell'aiutare le imprese ad adottare con successo Kubernetes.
|
||||
<br>Fornitori di servizi riconosciuti e con grande esperienza nell'aiutare le imprese ad adottare con successo Kubernetes.
|
||||
<br><br><br>
|
||||
<button id="kcsp" class="button" onClick="updateSrc(this.id)">Guarda i Partners di KCSP</button>
|
||||
<br><br>Interessato a diventare partner <a href="https://www.cncf.io/certification/kcsp/">KCSP</a>?
|
||||
<button id="kcsp" class="button" onClick="updateSrc(this.id)">Guarda i Partners KCSP</button>
|
||||
<br><br>Interessato a diventare un partner <a href="https://www.cncf.io/certification/kcsp/">KCSP</a>?
|
||||
</center>
|
||||
</div>
|
||||
<div class="col-nav">
|
||||
<center>
|
||||
<h5>
|
||||
<b>Distribuzioni Kubernetes Certificate, Piattaforme Hosted e Installers</b>
|
||||
</h5>La conformità del software assicura che la versione di Kubernetes di ogni fornitore supporti le API richieste.
|
||||
<b>Distribuzioni di Kubernetes Certificate, Certified Hosted Platforms and Software di installazione Certificati</b>
|
||||
</h5>La conformità del software assicura che le versioni di Kubernetes prodotte da ogni fornitore supportino coerentemente le API necessarie.
|
||||
<br><br><br>
|
||||
<button id="conformance" class="button" onClick="updateSrc(this.id)">Guarda i Partner di Conformità</button>
|
||||
<br><br>Interessato a diventare partner <a href="https://www.cncf.io/certification/software-conformance/">Certificati Kubernetes</a>?
|
||||
<button id="conformance" class="button" onClick="updateSrc(this.id)">Guarda i Partner certificati</button>
|
||||
<br><br>Interessato a diventare un partner <a href="https://www.cncf.io/certification/software-conformance/">certificato Kubernetes</a>?
|
||||
</center>
|
||||
</div>
|
||||
<div class="col-nav">
|
||||
<center>
|
||||
<h5><b>Partner per la Formazione Kubernetes</b></h5>
|
||||
<br>Professionisti esperti e certificati, con solida esperienza nella formazione tecnologica Cloud Native.
|
||||
<button id="ktp" class="button" onClick="updateSrc(this.id)">Guarda i Partner di KTP</button>
|
||||
<br><br>Interessato a diventare partner <a href="https://www.cncf.io/certification/training/">KTP</a>?
|
||||
</center>
|
||||
</div>
|
||||
</div>
|
||||
<script src="https://code.jquery.com/jquery-3.3.1.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script>
|
||||
<script type="text/javascript">
|
||||
|
||||
var defaultLink = "https://landscape.cncf.io/category=kubernetes-certified-service-provider&format=card-mode&grouping=category&embed=yes";
|
||||
var firstLink = "https://landscape.cncf.io/category=certified-kubernetes-distribution,certified-kubernetes-hosted,certified-kubernetes-installer&format=card-mode&grouping=category&embed=yes";
|
||||
var secondLink = "https://landscape.cncf.io/category=kubernetes-training-partner&format=card-mode&grouping=category&embed=yes";
|
||||
|
||||
function updateSrc(buttonId) {
|
||||
if (buttonId == "kcsp") {
|
||||
$("#landscape").attr("src",defaultLink);
|
||||
window.location.hash = "#kcsp";
|
||||
}
|
||||
if (buttonId == "conformance") {
|
||||
$("#landscape").attr("src",firstLink);
|
||||
window.location.hash = "#conformance";
|
||||
}
|
||||
if (buttonId == "ktp") {
|
||||
$("#landscape").attr("src",secondLink);
|
||||
window.location.hash = "#ktp";
|
||||
}
|
||||
}
|
||||
|
||||
// Automatically load the correct iframe based on the URL fragment
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
var showContent = "kcsp";
|
||||
if (window.location.hash) {
|
||||
console.log('hash is:', window.location.hash.substring(1));
|
||||
showContent = window.location.hash.substring(1);
|
||||
}
|
||||
updateSrc(showContent);
|
||||
});
|
||||
</script>
|
||||
<body>
|
||||
<div id="frameHolder">
|
||||
<iframe id="landscape" frameBorder="0" scrolling="no" style="width: 1px; min-width: 100%" src=""></iframe>
|
||||
<script src="https://landscape.cncf.io/iframeResizer.js"></script>
|
||||
</div>
|
||||
</body>
|
||||
</main>
|
||||
</section>
|
||||
|
||||
<style>
|
||||
{{< include "partner-style.css" >}}
|
||||
</style>
|
||||
|
||||
<script>
|
||||
{{< include "partner-script.js" >}}
|
||||
</script>
|
||||
>
|
||||
<b>Fornitori di servizi certificati Kubernetes</b>
|
||||
</h5>
|
||||
<br>Fornitori di servizi con una grande esperienza nell'aiutare le imprese ad adottare con successo Kubernetes.
|
||||
<br><br><br>
|
||||
<button id="kcsp" class="button" onClick="updateSrc(this.id)">Vedi KCSP Partners</button>
|
||||
<br><br>Interessato a diventare un <a href="https://www.cncf.io/certification/kcsp/">KCSP</a>?
|
||||
</center>
|
||||
</div>
|
||||
<div class="col-nav">
|
||||
<center>
|
||||
<h5>
|
||||
<b>Distribuzioni certificate di Kubernetes, piattaforme hosted e installer </b>
|
||||
</h5>La conformità del software garantisce che la versione di Kubernetes di ogni fornitore supporti le API richieste.
|
||||
<br><br><br>
|
||||
<button id="conformance" class="button" onClick="updateSrc(this.id)">vedi le conformita' Partners</button>
|
||||
<br><br>Interessato a diventare un <a href="https://www.cncf.io/certification/software-conformance/">Certificato Kubernetes</a>?
|
||||
</center>
|
||||
</div>
|
||||
<div class="col-nav">
|
||||
<center>
|
||||
<h5><b>Partner di formazione di Kubernetes</b></h5>
|
||||
<br>Fornitori di formazione con esperienza che hanno una profonda esperienza nella formazione della tecnologia cloud nativa.
|
||||
<h5><b>Partner per la Formazione su Kubernetes</b></h5>
|
||||
<br>Professionisti riconosciuti e certificati, con solida esperienza nella formazione su tecnologie Cloud Native.
|
||||
<br><br><br><br>
|
||||
<button id="ktp" class="button" onClick="updateSrc(this.id)">vedi KTP Partners</button>
|
||||
<br><br>Interessato a diventare un <a href="https://www.cncf.io/certification/training/">KTP</a>?
|
||||
<button id="ktp" class="button" onClick="updateSrc(this.id)">Guarda i KTP partner</button>
|
||||
<br><br>Interessato a diventare un partner <a href="https://www.cncf.io/certification/training/">KTP</a>?
|
||||
</center>
|
||||
</div>
|
||||
</div>
|
||||
@@ -166,7 +75,7 @@ cid: partners
|
||||
</script>
|
||||
<body>
|
||||
<div id="frameHolder">
|
||||
<iframe id="landscape" frameBorder="0" scrolling="no" style="width: 1px; min-width: 100%" src=""></iframe>
|
||||
<iframe id="landscape" title="Panorama CNCF" frameBorder="0" scrolling="no" style="width: 1px; min-width: 100%" src=""></iframe>
|
||||
<script src="https://landscape.cncf.io/iframeResizer.js"></script>
|
||||
</div>
|
||||
</body>
|
||||
|
||||
@@ -0,0 +1,118 @@
|
||||
---
|
||||
title: Formazione
|
||||
bigheader: Formazione e Certificazioni Kubernetes
|
||||
abstract: Programmi di formazioni, certificazioni e partner.
|
||||
layout: basic
|
||||
cid: training
|
||||
class: training
|
||||
---
|
||||
|
||||
<section class="call-to-action">
|
||||
<div class="main-section">
|
||||
<div class="call-to-action" id="cta-certification">
|
||||
<div class="logo-certification cta-image cta-image-before" id="logo-cka">
|
||||
<img src="/images/training/kubernetes-cka-white.svg"/>
|
||||
</div>
|
||||
<div class="logo-certification cta-image cta-image-after" id="logo-ckad">
|
||||
<img src="/images/training/kubernetes-ckad-white.svg"/>
|
||||
</div>
|
||||
<div class="cta-text">
|
||||
<h2>Costruisci la tua carriera nel mondo Cloud Native</h2>
|
||||
<p>Kubernetes è un elemento importante del mondo Cloud Native. La formazione e le certificazioni della The Linux Foundation e dei nostri partner ti permettono di investire nella tua carriera, imparare Kubernetes, e aver successo nei tuoi progetti Cloud Native.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<div class="main-section padded">
|
||||
<center>
|
||||
<h2>Fai un corso gratuito su edX</h2>
|
||||
</center>
|
||||
<div class="col-container">
|
||||
<div class="col-nav">
|
||||
<center>
|
||||
<h5>
|
||||
<b>Introduzione a Kubernetes<br> </b>
|
||||
</h5>
|
||||
<p>Vuoi imparare Kubernetes? Ottieni delle solide fondamenta su questo potente sistema di gestione di applicazioni deployate in container.</p>
|
||||
<br>
|
||||
<a href="https://www.edx.org/course/introduction-to-kubernetes" target="_blank" class="button">Vai al corso</a>
|
||||
</center>
|
||||
</div>
|
||||
<div class="col-nav">
|
||||
<center>
|
||||
<h5>
|
||||
<b>Introduzione alla gestione delle infrastutture IT in Cloud</b>
|
||||
</h5>
|
||||
<p>Impara le basi per creare e gestire tecnologie cloud direttamente dalla The Linux Foundation, il leader nel mondo open source.</p>
|
||||
<br>
|
||||
<a href="https://www.edx.org/course/introduction-to-cloud-infrastructure-technologies" target="_blank" class="button">Vai al corso</a>
|
||||
</center>
|
||||
</div>
|
||||
<div class="col-nav">
|
||||
<center>
|
||||
<h5>
|
||||
<b>Introduzione a Linux</b>
|
||||
</h5>
|
||||
<p>Non hai mai imparato Linux? Hai bisogno di un ripasso? Sviluppa una buona conoscenza delle varie famiglie di distribuzioni Linux usando sia l'interfaccia grafica che la linea di comando.</p>
|
||||
<br>
|
||||
<a href="https://www.edx.org/course/introduction-to-linux" target="_blank" class="button">Vai al corso</a>
|
||||
</center>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div class="padded lighter-gray-bg">
|
||||
<div class="main-section two-thirds-centered">
|
||||
<center>
|
||||
<h2>Impara con la The Linux Foundation</h2>
|
||||
<p>La The Linux Foundation offre corsi con un docente e corsi da fare in autonomia per apprendere lo sviluppo di applicativi per Kubernetes e per l'amministrazione della piattaforma stessa.</p>
|
||||
<br/><br/>
|
||||
<a href="https://training.linuxfoundation.org/training/course-catalog/?_sft_technology=kubernetes" target="_blank" class="button">Vedi i corsi</a>
|
||||
</center>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<section>
|
||||
<div class="main-section padded">
|
||||
<center>
|
||||
<h2>Certificati Kubernetes</h2>
|
||||
</center>
|
||||
<div class="col-container">
|
||||
<div class="col-nav">
|
||||
<center>
|
||||
<h5>
|
||||
<b>Certified Kubernetes Application Developer (CKAD)</b>
|
||||
</h5>
|
||||
<p>L'esame "Certified Kubernetes Application Developer" certifica che la persona è in grado di progettare, costruire, configurare, e rilasciare in produzione un applicativo Cloud Native su Kubernetes.</p>
|
||||
<br>
|
||||
<a href="https://training.linuxfoundation.org/certification/certified-kubernetes-application-developer-ckad/" target="_blank" class="button">Vai alla certificazione</a>
|
||||
</center>
|
||||
</div>
|
||||
<div class="col-nav">
|
||||
<center>
|
||||
<h5>
|
||||
<b>Certified Kubernetes Administrator (CKA)</b>
|
||||
</h5>
|
||||
<p>Il programma "Certified Kubernetes Administrator" assicura che la persona ha le capacità, conoscenze, e competenze per operare come amministratore di Kubernets.</p>
|
||||
<br>
|
||||
<a href=https://training.linuxfoundation.org/certification/certified-kubernetes-administrator-cka/" target="_blank" class="button">Vai alla certificazione</a>
|
||||
</center>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div class="padded lighter-gray-bg">
|
||||
<div class="main-section two-thirds-centered">
|
||||
<center>
|
||||
<h2>Partner per la formazione Kubernetes</h2>
|
||||
<p>La nostra rete di Kubernetes Training Partners fornisce servizi di formazione su Kubernetes e sui progetti Cloud Native.</p>
|
||||
</center>
|
||||
</div>
|
||||
<div class="main-section landscape-section">
|
||||
<iframe src="https://landscape.cncf.io/category=kubernetes-training-partner&format=logo-mode&grouping=category&embed=yes" frameborder="0" id="landscape" scrolling="no"></iframe>
|
||||
<script src="https://landscape.cncf.io/iframeResizer.js"></script>
|
||||
</div>
|
||||
</div>
|
||||
+182
-70
@@ -1,4 +1,164 @@
|
||||
# i18n strings for the Italian site.
|
||||
# NOTE: Please keep the entries in alphabetical order when editing
|
||||
|
||||
[caution]
|
||||
other = "Attenzione: "
|
||||
|
||||
[cleanup_heading]
|
||||
other = "In pulizia"
|
||||
|
||||
[community_events_calendar]
|
||||
other = "Calendario Eventi"
|
||||
|
||||
[community_forum_name]
|
||||
other = "Forum"
|
||||
|
||||
[community_github_name]
|
||||
other = "GitHub"
|
||||
|
||||
[community_slack_name]
|
||||
other = "Slack"
|
||||
|
||||
[community_stack_overflow_name]
|
||||
other = "Stack Overflow"
|
||||
|
||||
[community_twitter_name]
|
||||
other = "Twitter"
|
||||
|
||||
[community_youtube_name]
|
||||
other = "YouTube"
|
||||
|
||||
[deprecation_warning]
|
||||
other = " documentazione non è più manutenuta. La versione che stai visualizzando in questo momento è archiviata. Per una versione aggiornata, guarda "
|
||||
|
||||
[deprecation_file_warning]
|
||||
other = "Deprecata"
|
||||
|
||||
[docs_label_browse]
|
||||
other = "Sfoglia documenti"
|
||||
|
||||
[docs_label_contributors]
|
||||
other = "Contributors"
|
||||
|
||||
[docs_label_i_am]
|
||||
other = "Io Sono..."
|
||||
|
||||
[docs_label_users]
|
||||
other = "Utenti"
|
||||
|
||||
[feedback_heading]
|
||||
other = "Feedback"
|
||||
|
||||
[feedback_no]
|
||||
other = "No"
|
||||
|
||||
[feedback_question]
|
||||
other = "Questa pagina è stata di aiuto?"
|
||||
|
||||
[feedback_yes]
|
||||
other = "Sì"
|
||||
|
||||
[input_placeholder_email_address]
|
||||
other = "indirizzo email"
|
||||
|
||||
[latest_version]
|
||||
other = "ultima versione."
|
||||
|
||||
[layouts_blog_pager_prev]
|
||||
other = "<< Precedente"
|
||||
|
||||
[layouts_blog_pager_next]
|
||||
other = "Succesiva >>"
|
||||
|
||||
[layouts_case_studies_list_tell]
|
||||
other = "Racconta il tuo use case"
|
||||
|
||||
[layouts_docs_glossary_aka]
|
||||
other = "Anche noto come"
|
||||
|
||||
[layouts_docs_glossary_description]
|
||||
other = "Questo glossario vuole essere un aiuto per standardizzare la terminologia usata per Kubernetes. Include termini tecnici che sono specifici di Kubernetes, così come termini più generali che sono utili per dare un contesto."
|
||||
|
||||
[layouts_docs_glossary_deselect_all]
|
||||
other = "Deseleziona tutto"
|
||||
|
||||
[layouts_docs_glossary_click_details_after]
|
||||
other = "per il significato di questo termine."
|
||||
|
||||
[layouts_docs_glossary_click_details_before]
|
||||
other = "Fare click sull'icona"
|
||||
|
||||
[layouts_docs_glossary_filter]
|
||||
other = "Filtra i termini sulla base delle loro etichette"
|
||||
|
||||
[layouts_docs_glossary_select_all]
|
||||
other = "Seleziona tutto"
|
||||
|
||||
[layouts_docs_partials_feedback_improvement]
|
||||
other = "suggerire un miglioramento"
|
||||
|
||||
[layouts_docs_partials_feedback_issue]
|
||||
other = "Apri un issue sul repository GitHub se vuoi "
|
||||
|
||||
[layouts_docs_partials_feedback_or]
|
||||
other = "o"
|
||||
|
||||
[layouts_docs_partials_feedback_problem]
|
||||
other = "riportare un problema"
|
||||
|
||||
[layouts_docs_partials_feedback_thanks]
|
||||
other = "Grazie per il feedback. Se hai una domanda specifica su Kubernetes, chiedi su"
|
||||
|
||||
[layouts_docs_search_fetching]
|
||||
other = "Caricando i risultati..."
|
||||
|
||||
[main_by]
|
||||
other = "di"
|
||||
|
||||
[main_cncf_project]
|
||||
other = """Kubernetes è un progetto <a href="https://cncf.io/">CNCF</a></p>"""
|
||||
|
||||
[main_community_explore]
|
||||
other = "Explora la community"
|
||||
|
||||
[main_contribute]
|
||||
other = "Contribuire"
|
||||
|
||||
[main_copyright_notice]
|
||||
other = """The Linux Foundation ®. Tutti i diritti riservati. The Linux Foundation ha marchi registrati e utilizza marchi commerciali. Per un elenco dei marchi di Linux Foundation, consulta la <a href="https://www.linuxfoundation.org/trademark-usage" class="light-text">pagina sull'utilizzo dei marchi</a>"""
|
||||
|
||||
[main_documentation_license]
|
||||
other = """Gli autori di Kubernetes | Documentazione distribuita sotto <a href="https://git.k8s.io/website/LICENSE" class="light-text">CC BY 4.0</a>"""
|
||||
|
||||
[main_edit_this_page]
|
||||
other = "Modifica questa pagina"
|
||||
|
||||
[main_github_create_an_issue]
|
||||
other = "Crea un issue"
|
||||
|
||||
[main_github_invite]
|
||||
other = "Sei interessato a contribuire a Kubernetes?"
|
||||
|
||||
[main_github_view_on]
|
||||
other = "Visualizza su GitHub"
|
||||
|
||||
[main_kubernetes_features]
|
||||
other = "Caratteristiche di Kubernetes"
|
||||
|
||||
[main_kubeweekly_baseline]
|
||||
other = "Sei interessato a ricevere le ultime notizie su Kubernetes? Registrati alla newsletter KubeWeekly."
|
||||
|
||||
[main_kubernetes_past_link]
|
||||
other = "Vedi le precedenti mail della newsletter"
|
||||
|
||||
[main_kubeweekly_signup]
|
||||
other = "Iscriviti"
|
||||
|
||||
[main_page_history]
|
||||
other = "Storico della Pagina"
|
||||
|
||||
[main_page_last_modified_on]
|
||||
other = "Ultima modifica alla pagina"
|
||||
|
||||
[main_read_about]
|
||||
other = "Leggi"
|
||||
@@ -6,77 +166,29 @@ other = "Leggi"
|
||||
[main_read_more]
|
||||
other = "Leggi di più"
|
||||
|
||||
[main_github_invite]
|
||||
other = "Ti interessa l'hacking sulla base del codice di Kubernetes?"
|
||||
[note]
|
||||
other = "Nota:"
|
||||
|
||||
[main_github_view_on]
|
||||
other = "Visualizza su GitHub"
|
||||
[objectives_heading]
|
||||
other = "Obbiettivi"
|
||||
|
||||
[main_github_create_an_issue]
|
||||
other = "Crea un issue"
|
||||
[prerequisites_heading]
|
||||
other = "Prima di cominciare"
|
||||
|
||||
[main_community_explore]
|
||||
other = "Explora la community"
|
||||
|
||||
[main_kubernetes_features]
|
||||
other = "Caratteristiche di Kubernetes"
|
||||
|
||||
[main_cncf_project]
|
||||
other = """Noi siamo un <a href="https://cncf.io/">CNCF</a> progetto </p>"""
|
||||
|
||||
[main_kubeweekly_signup]
|
||||
other = "Sottoscrivi"
|
||||
|
||||
[main_contribute]
|
||||
other = "Contribuire"
|
||||
|
||||
[main_edit_this_page]
|
||||
other = "Modifica questa pagina"
|
||||
|
||||
[main_page_history]
|
||||
other = "Lo Storico della Pagina"
|
||||
|
||||
[main_page_last_modified_on]
|
||||
other = "Ultima modifica alla pagina"
|
||||
|
||||
[main_by]
|
||||
other = "di"
|
||||
|
||||
[main_documentation_license]
|
||||
other = """Gli autori di Kubernetes| Documentazione distribuita sotto <a href="https://git.k8s.io/website/LICENSE" class="light-text">CC BY 4.0</a>"""
|
||||
|
||||
[main_copyright_notice]
|
||||
other = """The Linux Foundation ®. Tutti i diritti riservati. The Linux Foundation ha marchi registrati e utilizza marchi commerciali. Per un elenco dei marchi di Linux Foundation, consultare il nostro sito<a href="https://www.linuxfoundation.org/trademark-usage" class="light-text">Trademark Usage page</a>"""
|
||||
|
||||
# Labels for the docs portal home page.
|
||||
[docs_label_browse]
|
||||
other = "Sfoglia documenti"
|
||||
|
||||
[docs_label_contributors]
|
||||
other = "Contributori"
|
||||
|
||||
[docs_label_users]
|
||||
other = "Utenti"
|
||||
|
||||
[docs_label_i_am]
|
||||
other = "Io Sono..."
|
||||
|
||||
|
||||
|
||||
# Community links
|
||||
[community_twitter_name]
|
||||
other = "Twitter"
|
||||
[community_github_name]
|
||||
other = "GitHub"
|
||||
[community_slack_name]
|
||||
other = "Slack"
|
||||
[community_stack_overflow_name]
|
||||
other = "Stack Overflow"
|
||||
[community_forum_name]
|
||||
other = "Forum"
|
||||
[community_events_calendar]
|
||||
other = "Events Calendar"
|
||||
|
||||
# UI elements
|
||||
[ui_search_placeholder]
|
||||
other = "Search"
|
||||
other = "Cerca"
|
||||
|
||||
[version_check_mustbe]
|
||||
other = "La tua installazione Kubernetes deve avere la versione "
|
||||
|
||||
[version_check_mustbeorlater]
|
||||
other = "La tua installazione Kubernetes deve avere almeno la versione "
|
||||
|
||||
[version_check_tocheck]
|
||||
other = "Per verificare la versione, esegui "
|
||||
|
||||
[warning]
|
||||
other = "Attenzione:"
|
||||
|
||||
[whatsnext_heading]
|
||||
other = "Voci correlate"
|
||||
|
||||
Reference in New Issue
Block a user