刷完 Kubernetes 的教程

首先

标题不变。
这是官方教程《Kubernetes基础》的笔记和截屏,因此请注意本文章没有介绍新内容!

顺便提一下,我的Kubernetes技能只能轻描淡写地解释一下EKS是什么。
我不了解相关术语和设置步骤。

2. Kubernetes 是什么?

大致上符合认知。公式明确表明此事非常好。

 

3. 在教程之前

3-1. Kubernetes是什么?

这是一本关于Docker技术的常见出现的书籍!

スクリーンショット 2022-05-06 17.50.08.png

3-2. Kubernetes 组件

这张图非常重要。
通过进行教程的进度,写的内容会变得清楚,所以现在不懂也没关系。

スクリーンショット 2022-05-06 17.52.04.png

4. 教程开始

学习Kubernetes的基础知识

创建群集

打开命令行输入版本和状态确认命令,成功地进行了k8s初次尝试。
免费的。多么方便的时代啊。。我已经在反馈中大力赞扬了。

在这个时候,控制平面和主节点还不清楚。 , hé bù .)

4-2. 应用程序的部署

用kubectl创建Deployment

在控制平面中有一个部署,它似乎可以创建、监控和控制实例。

スクリーンショット 2022-05-05 11.47.09.png

可以使用kubectl创建和管理Deployment。
kubectl利用Kubernetes API与集群进行交互。
这里的交互是指前面提到的吗?

寻找应用程序。

关于Pod和节点的问题,

 

这是Pod。非常易懂。

スクリーンショット 2022-05-06 12.25.11.png

节点。易懂。。

スクリーンショット 2022-05-06 13.06.17.png

6-2. 应用程序的发布

6-3. 使用Service发布应用程序。

 

如果先进行Minikube,Service会更容易理解。

スクリーンショット 2022-05-06 13.13.56.png

服务使用选择器和标签来匹配一系列的Pod。

スクリーンショット 2022-05-06 13.26.03.png

7-1. 应用程序的扩展规模

运行多个应用程序实例

请提供英文的上下文以便更准确地翻译。”スケール前”可以翻译成”在规模之前”或者”在测量之前”等等,所以需要了解其含义以便进行恰当的翻译。

スクリーンショット 2022-05-06 17.25.41.png
スクリーンショット 2022-05-06 17.24.39.png

8-1.应用程序的更新

进行滚动更新

真易懂!确实没有经历过这样逐步部署的经验呢。太厉害了。

更新①

スクリーンショット 2022-05-06 17.35.23.png

更新2.

スクリーンショット 2022-05-06 17.35.57.png

第三次更新

スクリーンショット 2022-05-06 17.36.15.png

更新四

スクリーンショット 2022-05-06 17.36.46.png

9-1. 术语

如果迷失了方向,就阅读官方指南。
https://kubernetes.io/zh/docs/reference/glossary/?fundamental=true

Kubernetes集群 (Kubernetes

スクリーンショット 2022-05-04 21.40.49.png

师傅 (shī fu)

我要负责管理集群。
这个图并没有显示出来吗?

节点

这是一个虚拟机还是物理容器?

kubelet
kubelet

潜伏在节点中的Kubernetes代理。
负责管理节点并与主节点进行通信。

Kubernetes API – Kubernetes 应用程序接口

节点使用由主节点公开的Kubernetes API与主节点进行通信。
据说,终端用户(例如我)可以使用Kubernetes API与节点进行交互。

豆荚

容器的管理以及为了网络目的而组合在一起的一个或多个容器的集合。
或者
最小和最简单的Kubernetes对象。
Pod是在集群中运行的多个容器的集合。

后者更容易理解吧!

服务

将在Pod集合中运行的应用程序作为网络服务进行抽象化和公开的方法。

部署

检查 Pod 的状态,并在容器停止时重新启动。Deployment 是一种推荐的方法(手段),用于管理 Pod 的创建和扩展。

标签

为用户添加与其相关并具有意义的标识属性来为对象打上标签。
这些属性以 “键:值” 的方式呈现。

选择器

当用户使用选择器时,可以根据标签来筛选资源列表。

入口

Ingress是一种API对象,用于管理和公开从集群外部到集群内部服务的HTTPS和HTTP路径。
流量的路由受Ingress资源上定义的规则控制。
此外,Ingress还提供负载均衡、SSL终止和基于名称的虚拟主机功能。

以下是将所有流量发送到单个服务的简单Ingress示例。

スクリーンショット 2022-05-07 16.59.09.png

另外,Ingress的最小配置如下所示,来自官方!

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: minimal-ingress
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
spec:
  rules:
  - http:
      paths:
      - path: /testpath
        pathType: Prefix
        backend:
          service:
            name: test
            port:
              number: 80

使用的命令

也许以后会有用。记下来。


# Deploymentの作成
kubectl create deployment hello-node --image=k8s.gcr.io/echoserver:1.4

# Deploymentの確認
kubectl get deployments

# Podの確認
kubectl get pods

# クラスターイベントの確認
kubectl get events

# 設定の確認
kubectl view config

# Podをインターネットに公開する。exposeは公開するって意味
kubectl expose

# Serviceの確認
kubectl get services

11. 最后

虽然离实际操作还差得远,但能够摆脱无知状态还是很好的。光是能理解基本的Pod、集群等术语,这个教程已经有足够的价值了。感谢官方提供的教程!接下来就是实际操作了!

還有其他請教問題嗎?

bannerAds