从您的本地机器开始学习Kubernetes

从您的本地机器开始学习Kubernetes

译文
作者:布加迪编译 2020-12-30 08:00:00

开发

前端

云计算 朋友和熟人常问我可以从哪里开始学习Kubernetes、如何开始学习。提这些问题的包括仍在处理虚拟机和整体式应用程序等旧系统的运维和开发人员。CI/CD和DevOps之类的术语对他们来说不过是流行语,他们仍在忙于照顾旧系统,这是其日常工作所需要的。

【51CTO.com快译】朋友和熟人常问我可以从哪里开始学习Kubernetes、如何开始学习。提这些问题的包括仍在处理虚拟机和整体式应用程序等旧系统的运维和开发人员。CI/CD和DevOps之类的术语对他们来说不过是流行语,他们仍在忙于照顾旧系统,这是其日常工作所需要的。

现在他们注意到越来越多的工作负载从虚拟机迁移到容器,并按照微服务重新设计整体式应用程序的架构,以便轻松处理创新并响应快速的市场需求。现在是他们学习导致大规模迁移到Kubernetes的工具、平台和解决方案的时候了。

Kubernetes是什么?

学习Kubernetes时要做的第一件事是找到关于它的清晰解释。您可以利用很多书籍和YouTube参考资料获得最基本的解释,我认为《图解Kubernetes儿童指南》这段YouTube视频对Kubernetes作了最好的解释,建议先看一下。

Kubernetes组件

Kubernetes不是一台机器,而是一个平台。部署Kubernetes时,您将获得一个集群。集群由运行容器化应用程序的一组主控机器和worker机器(名为节点)组成。每个集群至少有一个worker节点。这些是Kubernetes组件。

下面是Kubernetes将所有组件捆绑在一起的样子。

图1. Kubernetes集群组件示意图

如何开始?

学习Kubernetes时,您需要部署一个集群。但这对于无法获得额外硬件,抽不出时间来安装硬件以及所需网络和计算资源的人来说将是一个挑战。这个要求常常使Kubernetes之旅还未开始就已经脱轨。那么最好的开始方式是什么呢?

幸好有多个开源项目让您可以从笔记本电脑部署Kubernetes集群。不妨先看一看那些项目,然后我提出自己的意见,表明哪个是学习Kubernetes并部署第一个云原生应用程序的优选方法。

本地Kubernetes项目挺身而出

这些是您可以用来探索Kubernetes的本地项目。请注意,这些项目尚未为企业准备就绪,仅应用于学习目的。

注意:在开始探索Kubernetes之前,确保您的笔记本电脑上有足够的资源。

  • Linux:Red Hat Enterprise Linux、Fedora或CentOS
  • 每台机器16 GiB或更多的内存。
  • 机器上用作控制平面节点的2个CPU。
  • 集群中所有机器之间实现完全网络连接。

minikube

在这些选择中,minikube是最容易安装的。它将为您提供在VirtualBox或KVM之上运行的单节点集群。

资源需求:

  • CPU:2个
  • 内存:2 GB
  • 磁盘空间:20 GB

一旦有了运行中的集群(单节点),您可以通过使用kubectl命令行部署一个简单的应用程序与本地Kubernetes集群进行交互,让自己开始上手。我在使用Minikube时注意到的唯一问题是这个限制:需要添加worker节点才能完成集群体验。

kind

kind要求您在Docker容器中运行Kubernetes。可以在此处(https://kind.sigs.k8s.io/docs/user/quick-start/)找到kind安装说明。

虽然kind易于安装,但我在使用该项目时看到的问题是访问集群的复杂网络配置。对于刚开始学习Kubernetes的人来说,这可能令人望而却步。

资源需求:

  • CPU:2个
  • 内存:8GB
  • 存储空间:20GB

kubeadm

使用kubeadm的集群启动可用于部署云原生应用程序。首先,您要有一个主节点和一个worker节点。

在笔记本电脑上安装kubeadm是获得生产级Kubernetes集群部署的最接近的体验。因此,kuberadm可能也是学习Kubernetes的最困难的方法。

资源需求:

  • CPU: 2个
  • 内存:8GB(您需要额外的内存来部署应用程序)。
  • 存储空间:20GB

Minishift

Minishift是基于OKD的项目,而OKD是OpenShift背后的上游项目。安装Minishift后,它将为您提供在VirtualBox或KVM中运行的单节点OpenShift集群。

资源需求:

  • CPU:2个
  • 内存:4 GB
  • 存储空间:20 GB

与其他项目相比,Minishift易于安装,具有更大的灵活性,因此您可以在Linux、Windows和macOS中安装它。

由于Minishift基于OKD,因此您不仅将学习Kubernetes的基础知识,还将学习Openshift和Minishift中的一些组件。

Minishift的缺点在于它仅支持OKD 3.11,因此您将无法获得新版本OKD 4的完整体验。Minishift被CodeReady Containers替代,以获得OKD 4的完整体验,如此处所述。

CodeReady Containers(CRC)

CRC基于OKD 4.1,在笔记本电脑上提供了单节点配置。它的运行几乎与Minishift和minikube如出一辙。安装也很容易,文档可以在这里找到(https://github.com/code-ready/crc#building-the-documentation)。

资源需求:

  • CPU:4个
  • 内存:8 GB
  • 存储空间:30 GB

结论

有多种方法可以在本地部署Kubernetes,从而开始掌握实属当前IT革命核心的重要技能。

如果您刚起步,建议使用minikube学习Kubernetes,因为我发现这对初学者来说最容易。一旦您熟悉了Kubernetes概念,下一步就是进而使用CRC。这会将您的Kubernetes技能提高到新的水平,因此您可以学习大多数高级适配器已经在使用的企业级组件。

如前所述,学习Kubernetes就像重新学习Linux操作系统。如果遇到了障碍,别泄气。掌握这项技术就像投资未来,并在某种程度上帮助您证明自己。

原文标题:Start learning Kubernetes from your local machine,作者:Michael Calizo

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

 

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/231839.html<

(0)
管理的头像管理
上一篇2025-04-19 21:34
下一篇 2025-04-19 21:35

相关推荐

  • 骨干网络体系结构能干什么?骨干网络体系结构的作用

    骨干网络体系结构是现代信息社会的“超级高速公路网”,它通过分层设计、冗余备份和智能调度,确保海量数据在全球范围内高速、稳定、安全地传输,是支撑云计算、物联网及人工智能应用的底层基石,想象一下,如果你把互联网比作一个巨大的城市交通系统,那么骨干网络就是连接各个城市的主干道和立交桥,没有它,你的每一次微信发送、每一……

    2026-06-18
    0
  • 高io数据库可以干什么用?高io数据库适合什么场景

    高IO数据库的核心价值在于通过极高的读写吞吐量,解决海量数据场景下的性能瓶颈,是支撑高并发交易、实时分析及大规模内容分发的关键基础设施,在数字化转型的深水区,数据不再仅仅是静态的记录,而是流动的资产,传统的机械硬盘或普通SSD早已无法满足现代应用对速度的极致追求,高IO(Input/Output)数据库,就是那……

    2026-06-18
    0
  • 高io服务器性能如何?高io服务器适合什么场景

    高IO服务器并非单纯指代某种硬件,而是指在随机读写、高并发连接及小文件处理场景下,具备极致IOPS(每秒输入输出操作次数)和低延迟特性的计算资源,它是支撑现代高并发应用稳定运行的核心基石,在2026年的数字化浪潮中,业务负载早已从简单的静态页面展示演变为复杂的实时数据处理,许多开发者在排查系统瓶颈时,往往忽略了……

    2026-06-18
    0
  • 隔离网络空间哪里便宜?国内隔离网络空间价格

    隔离网络空间并没有统一的“便宜”标准,其成本高度取决于物理隔离等级、带宽需求及安全合规要求,通常物理网闸方案初期投入较高但长期运维成本低,而逻辑隔离方案虽初期便宜但存在潜在安全风险,建议根据业务敏感度选择混合隔离架构以平衡成本与安全,在数字化时代,企业构建独立网络环境的需求日益增长,但“隔离网络空间哪里便宜”这……

    2026-06-18
    0
  • 骨干网络体系结构设备为何故障?常见原因有哪些

    骨干网络体系结构设备故障的核心原因通常归结为硬件老化、配置错误、物理链路中断及外部攻击四大类,其中电源模块失效与光模块性能衰减是占比最高的隐性故障源,骨干网作为数字经济的“大动脉”,其稳定性直接关乎国计民生,当核心路由器或交换机出现丢包、震荡甚至宕机时,运维人员往往面临巨大的压力,很多人第一反应是检查软件配置……

    2026-06-18
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注