当前位置: 首页 > 科技观察

StartLearningKubernetesFromYourLocalMachine

时间:2023-03-22 11:48:20 科技观察

【.com快译】朋友和熟人经常问我从哪里以及如何开始学习Kubernetes。提出这些问题的人包括仍在处理虚拟机和单体应用程序等遗留系统的运维人员和开发人员。像CI/CD和DevOps这样的术语对他们来说只不过是流行语,他们仍然忙于处理日常需要的遗留系统。他们现在注意到越来越多的工作负载正在从虚拟机迁移到容器,并根据微服务重新构建整体应用程序,以轻松应对创新并响应快速的市场需求。现在是时候让他们学习可以大规模迁移到Kubernetes的工具、平台和解决方案了。什么是Kubernetes?学习Kubernetes的第一件事就是找到关于它的明确解释。您可以使用许多书籍和YouTube参考资料来获得最基本的解释。我认为这个YouTube视频《图解Kubernetes儿童指南》最好地解释了Kubernetes。建议先观看。Kubernetes组件Kubernetes不是一台机器,而是一个平台。当您部署Kubernetes时,您会得到一个集群。集群由一组运行容器化应用程序的主机和工作机(称为节点)组成。每个集群至少有一个工作节点。这些是Kubernetes组件。这就是Kubernetes将所有东西捆绑在一起的样子。图1.Kubernetes集群组件示意图如何上手?学习Kubernetes的时候,需要部署一个集群。但对于那些无法访问额外硬件、没有时间安装它以及所需的网络和计算资源的人来说,这将是一个挑战。这种要求通常会在Kubernetes旅程开始之前就让其脱轨。那么最好的开始方式是什么?幸运的是,有几个开源项目允许您从笔记本电脑部署Kubernetes集群。让我们先看看这些项目,然后我就学习Kubernetes和部署您的第一个云原生应用程序的首选方式提出我的看法。本地Kubernetes项目出现这些是您可以用来探索Kubernetes的本地项目。请注意,这些项目不是企业就绪的,应该仅用于学习目的。注意:在您开始探索Kubernetes之前,请确保您的笔记本电脑上有足够的资源。Linux:RedHatEnterpriseLinux、Fedora或CentOS每台机器16GiB或更多RAM。机器上的2个CPU用作控制平面节点。集群中所有机器之间的完整网络连接。minikube在这些选择中,minikube是最容易安装的。它会给你一个运行在VirtualBox或KVM之上的单节点集群。资源要求:CPU:2内存:2GB磁盘空间:20GB拥有一个正在运行的集群(单节点)后,您可以通过使用kubectl命令行部署一个简单的应用程序来让自己与本地Kubernetes集群进行交互。我在使用Minikube时唯一注意到的问题是这个限制:需要添加worker节点来完成集群体验。kindkind要求您在Docker容器中运行Kubernetes。可以在此处找到Kind安装说明(https://kind.sigs.k8s.io/docs/user/quick-start/)。虽然安装起来很容易,但我在该项目中看到的问题是访问集群的复杂网络配置。对于刚开始使用Kubernetes的人来说,这可能会让人望而生畏。资源要求:CPU:2内存:8GB存储:20GBkubeadm使用kubeadm的集群启动可用于部署云原生应用程序。首先,您有一个主节点和一个工作节点。在笔记本电脑上安装kubeadm是最接近生产级Kubernetes集群部署的方式。因此,kuberadm大概也是Kubernetes最难学习的途径。资源要求:CPU:2内存:8GB(您将需要额外的内存来部署应用程序)。存储:20GBMinishiftMinishift是一个基于OKD的项目,它是OpenShift背后的上游项目。安装Minishift后,它将为您提供一个在VirtualBox或KVM中运行的单节点OpenShift集群。资源要求:CPU:2内存:4GB存储:20GB与其他项目相比,Minishift易于安装且具有更大的灵活性,因此您可以在Linux、Windows和macOS上安装它。由于Minishift是基于OKD的,因此您不仅会学习Kubernetes的基础知识,还会学习Openshift和Minishift中的一些组件。Minishift的缺点是它仅支持OKD3.11,因此您无法获得新版本OKD4的完整体验。Minishift已被CodeReadyContainers取代以获得完整的OKD4体验,如此处所述。CodeReadyContainers(CRC)CRC基于OKD4.1,在笔记本电脑上提供单节点配置。它的工作方式几乎与Minishift和minikube完全一样。安装也很简单,可以在此处找到文档(https://github.com/code-ready/crc#building-the-documentation)。资源要求:CPU:4内存:8GB存储:30GB结论有多种方法可以在本地部署Kubernetes以开始掌握处于当前IT革命核心的重要技能。如果你刚刚起步,我建议使用minikube来学习Kubernetes,因为我发现它对初学者来说是最简单的。熟悉Kubernetes概念后,下一步就是继续使用CRC。这将使您的Kubernetes技能更上一层楼,因此您可以学习大多数高级适配器已经使用的企业级组件。前面说过,学习Kubernetes就像重新学习Linux操作系统一样。如果您遇到障碍,请不要气馁。掌握这项技术就像投资未来,可以帮助您在某种程度上证明自己。原标题:StartlearningKubernetesfromyourlocalmachine,作者:MichaelCalizo