学Kubernetes做的笔记Day1,大部分内容来自《Kubernetes快速入门》。

Kubernetes简介

从 本质上说,Kubernetes是云原生 微服务应用的编排器

微服务
微服务应用是由很多小型专用部件组成的,这些部件被松散地耦合在一起,形成一个有用的应用。

云原生
一个云原生应用必须能够:

按需扩缩容;
自我修复;
支持零停机时间滚动更新
可以在任何有Kubernetes的地方运行

编排器
编排器将一组微服务聚集在一起,并将它们组织成一个能创造价值的应用。它还能提供并管理云原生功能,如扩缩容,自我修复和更新。

Kubernetes的一些优点:

  • 可以部署时随时在不同的云间进行切换;
  • 可以实现多云;
  • 可以更轻松地在云和本地之间过渡;

Kubernetes集群构成

一个Kubernetes集群是一个或多个安装了Kubernetes的机器。

我们通常把Kubernetes集群中的机器成为节点,Kubernetes集群有两种类型的节点:

  • 主节点;
  • 工作节点;

主节点托管这控制面板,工作节点是运行用户应用的地方。

主节点运行以下服务,它们共同组成了控制面板:

  • API服务器;
  • 调度器;
  • 存储器;
  • 云控制器;
  • ……

API服务器是Kubernetes集群中唯一你能够直接交互的部分。你向集群发送的命令会被送到API服务器,你收到的响应也都来自API服务器。

调度器选择在哪些节点上运行用户应用。

存储器是存储集群和所有应用状态的地方。

云控制器允许Kubernetes与云服务(如存储和负载均衡器)集成。

kubectl命令行工具管理Kubernetes。

创建容器化应用

获取应用代码

1
git clone https://github.com/nigelpoulton/qsk-book

构建容器镜像

1
docker image build -t <你的ID>/qsk-book:1.0 .

image-20231217032126914

在仓库上托管容器镜像

1
docker image push <你的ID>/qsk-book:1.0

image-20231217032230423

在Kubernetes上运行应用

验证Kubernetes集群

1
kubectl get nodes

(书上用的LKE来做的集群,现在暂时不来弄了)