Skip to content

Commit fcf2501

Browse files
committed
Add create-cluster tutorial
1 parent ead42dc commit fcf2501

File tree

4 files changed

+125
-222
lines changed

4 files changed

+125
-222
lines changed

content/en/docs/tutorials/kubernetes-basics/_index.html

Lines changed: 0 additions & 117 deletions
This file was deleted.
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
---
2+
title: Learn Kubernetes Basics
3+
main_menu: true
4+
no_list: true
5+
weight: 20
6+
content_type: concept
7+
---
8+
9+
## Kubernetes Basics
10+
11+
This tutorial provides a walkthrough of the basics of the Kubernetes cluster orchestration
12+
system. Each module contains some background information on major Kubernetes features
13+
and concepts, and a tutorial for you to follow along.
14+
15+
Using the tutorials, you can learn to:
16+
17+
* Deploy a containerized application on a cluster.
18+
* Scale the deployment.
19+
* Update the containerized application with a new software version.
20+
* Debug the containerized application.
21+
22+
## What can Kubernetes do for you?
23+
24+
With modern web services, users expect applications to be available 24/7, and developers
25+
expect to deploy new versions of those applications several times a day. Containerization
26+
helps package software to serve these goals, enabling applications to be released and updated
27+
without downtime. Kubernetes helps you make sure those containerized applications run where
28+
and when you want, and helps them find the resources and tools they need to work. Kubernetes
29+
is a production-ready, open source platform designed with Google's accumulated experience in
30+
container orchestration, combined with best-of-breed ideas from the community.
31+
32+
## Kubernetes Basic Modules
33+
34+
### [Create a Kubernetes cluster](/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/)
35+
36+
{{< figure src="public/images/module_01.svg" class="diagram-small" >}}
37+
38+
### [Deploy an app](/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/)
39+
40+
{{< figure src="public/images/module_02.svg" class="diagram-small" >}}
41+
42+
### [Explore your app](/docs/tutorials/kubernetes-basics/explore/explore-intro/)
43+
44+
{{< figure src="public/images/module_03.svg" class="diagram-small" >}}
45+
46+
### [Expose your app publicly](/docs/tutorials/kubernetes-basics/expose/expose-intro/)
47+
48+
{{< figure src="public/images/module_04.svg" class="diagram-small" >}}
49+
50+
### [Scale up your app](/docs/tutorials/kubernetes-basics/scale/scale-intro/)
51+
52+
{{< figure src="public/images/module_05.svg" class="diagram-small" >}}
53+
54+
### [Update your app](/docs/tutorials/kubernetes-basics/update/update-intro/)
55+
56+
{{< figure src="public/images/module_06.svg" class="diagram-small" >}}

content/en/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro.html

Lines changed: 0 additions & 105 deletions
This file was deleted.
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
---
2+
title: Using Minikube to Create a Cluster
3+
weight: 10
4+
---
5+
6+
## {{% heading "objectives" %}}
7+
8+
* Learn what a Kubernetes cluster is.
9+
* Learn what Minikube is.
10+
* Start a Kubernetes cluster on your computer.
11+
12+
## Kubernetes Clusters
13+
14+
**Kubernetes coordinates a highly available cluster of computers that are connected
15+
to work as a single unit.** The abstractions in Kubernetes allow you to deploy
16+
containerized applications to a cluster without tying them specifically to individual
17+
machines. To make use of this new model of deployment, applications need to be packaged
18+
in a way that decouples them from individual hosts: they need to be containerized.
19+
Containerized applications are more flexible and available than in past deployment models,
20+
where applications were installed directly onto specific machines as packages deeply
21+
integrated into the host. **Kubernetes automates the distribution and scheduling of
22+
application containers across a cluster in a more efficient way.** Kubernetes is an
23+
open-source platform and is production-ready.
24+
25+
A Kubernetes cluster consists of two types of resources:
26+
27+
28+
* The **Control Plane** coordinates the cluster
29+
* **Nodes** are the workers that run applications
30+
31+
### Cluster Diagram
32+
33+
34+
{{< figure src="../../public/images/module_01_cluster.svg" class="diagram-medium" >}}
35+
36+
37+
**The Control Plane is responsible for managing the cluster.** The Control Plane
38+
coordinates all activities in your cluster, such as scheduling applications, maintaining
39+
applications' desired state, scaling applications, and rolling out new updates.
40+
41+
42+
**A node is a VM or a physical computer that serves as a worker machine in a Kubernetes
43+
cluster.** Each node has a Kubelet, which is an agent for managing the node and
44+
communicating with the Kubernetes control plane. The node should also have tools for
45+
handling container operations, such as {{< glossary_tooltip text="containerd" term_id="containerd" >}}
46+
or {{< glossary_tooltip term_id="cri-o" >}}. A Kubernetes cluster that handles production
47+
traffic should have a minimum of three nodes because if one node goes down, both an
48+
[etcd](/docs/concepts/architecture/#etcd) member and a control plane instance
49+
are lost, and redundancy is compromised. You can mitigate this risk by adding more
50+
control plane nodes.
51+
52+
When you deploy applications on Kubernetes, you tell the control plane to start
53+
the application containers. The control plane schedules the containers to run on
54+
the cluster's nodes. **Node-level components, such as the kubelet, communicate
55+
with the control plane using the [Kubernetes API](/docs/concepts/overview/kubernetes-api/)**,
56+
which the control plane exposes. End users can also use the Kubernetes API directly
57+
to interact with the cluster.
58+
59+
A Kubernetes cluster can be deployed on either physical or virtual machines. To
60+
get started with Kubernetes development, you can use Minikube. Minikube is a lightweight
61+
Kubernetes implementation that creates a VM on your local machine and deploys a
62+
simple cluster containing only one node. Minikube is available for Linux, macOS,
63+
and Windows systems. The Minikube CLI provides basic bootstrapping operations for
64+
working with your cluster, including start, stop, status, and delete.
65+
66+
## {{% heading "whatsnext" %}}
67+
68+
Now that you know more about what Kubernetes is, visit [Hello Minikube](/docs/tutorials/hello-minikube/)
69+
to try this out on your computer.

0 commit comments

Comments
 (0)