Kubernetes 基础

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45

一、Kubernetes 简介
Kubernetes 是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用。

二、核心概念
1. **Pod**:Kubernetes 中最小的可部署单元,一个 Pod 可以包含一个或多个容器。
2. **Node**:Kubernetes 中的工作节点,可以是物理机或虚拟机。
3. **Service**:提供了一种稳定的网络访问方式来访问一组 Pod。
4. **Deployment**:用于管理 Pod 的创建、更新和扩缩容。

三、安装 Kubernetes
1. 准备环境
- 确保您的节点满足系统要求(如内存、CPU 等)。
- 安装必要的依赖,如 Docker。

2. 选择安装方式
- 可以使用 Minikube 在本地进行单机安装,便于学习和测试。
- 对于生产环境,可以使用 Kubeadm 等工具进行多节点安装。

四、创建 Pod
可以使用 YAML 配置文件来定义 Pod 的属性,然后使用 `kubectl create -f pod.yaml` 命令创建 Pod。

五、创建 Deployment
Deployment 可以确保 Pod 的数量和健康状态,示例 YAML 配置如下:

```yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-deployment
spec:
replicas: 3
selector:
matchLabels:
app: my-app
template:
metadata:
labels:
app: my-app
spec:
containers:
- name: my-container
image: my-image
ports:
- containerPort: 80

六、创建 Service
Service 用于提供稳定的访问方式,常见类型有 ClusterIP、NodePort 和 LoadBalancer。

1
2
3
4
5
6
7
8
9
10
11
apiVersion: v1
kind: Service
metadata:
name: my-service
spec:
type: NodePort
selector:
app: my-app
ports:
- port: 80
targetPort: 80

七、扩缩容
可以通过修改 Deployment 的 replicas 字段来实现 Pod 的扩缩容。

八、查看资源状态
使用 kubectl get podskubectl get deploymentskubectl get services 等命令查看资源的状态。

九、总结
通过以上基本步骤,您已经对 Kubernetes 的基本操作有了初步了解,可以进一步深入学习更多高级特性和功能。


希望这篇文档能帮助您顺利入门 Kubernetes!