打破限制,随时随地练习K8S!在线Kubernetes平台开启你的技术之旅!

这篇具有很好参考价值的文章主要介绍了打破限制,随时随地练习K8S!在线Kubernetes平台开启你的技术之旅!。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

是不是有很多小伙伴想学习k8s,但是又没有机器去练习。使用自己的笔记本电脑或者主机只能搭建单机版本的k8s来练习。

现在福利来了,给大家介绍一个在线多节点k8s练习平台:Play with Kubernetes。

Play with Kubernetes 介绍

  1. Play with Kubernetes 一个提供了在浏览器中使用免费 CentOS Linux 虚拟机的体验平台,其内部实际上是 Docker-in-Docker(DinD)技术模拟了多虚拟机/PC 的效果。
  2. Play with Kubernetes 平台有如下几个特色:
  • 允许我们使用 github 或 dockerhub 账号登录
  • 在登录后会开始倒计时,让我们有 4 小时的时间去实践
  • K8s 环境使用 kubeadm 来部署(使用用 weave 网络)
  • 平台共提供 5 台 centos7 设备供我们使用(docker 版本为 24.0.2)

搭建 Kubernetes 集群

  1. 首先访问网站:https://labs.play-with-k8s.com/,并使用github 或 dockerhub 账号进行登录。
  2. 登录后点击页面上的 Start 按钮,我们便拥有一个自己的实验室环境。

play-with-kubernetes 如何使用,kubernetes,kubernetes,容器,云原生

play-with-kubernetes 如何使用,kubernetes,kubernetes,容器,云原生
3. 单击左侧的“Add New Instance” 来创建第一个 Kubernetes 集群节点。它会自动将其命名为“node1”,这个将作为我们群集的主节点。

play-with-kubernetes 如何使用,kubernetes,kubernetes,容器,云原生
可以看到有三条命令,分别是:初始化master节点、初始化网络、部署nginx pod。
4. node1 执行第一条命令

kubeadm init --apiserver-advertise-address $(hostname -i) --pod-network-cidr 10.5.0.0/16

执行完毕后,可以看到输出中存在这么一条命令:

play-with-kubernetes 如何使用,kubernetes,kubernetes,容器,云原生
这条命令用于后续添加node节点,在node节点中执行。先复制出来,后续使用
5. node1 执行第二条命令
此命令是安装 Pod 网络(这里我们使用 flannel),否则 Pod 之间无法通信。

kubectl apply -f https://raw.githubusercontent.com/cloudnativelabs/kube-router/master/daemonset/kubeadm-kuberouter.yaml
  1. 点击“Add New Instance” 创建node2,并执行第四步复制出来,执行添加节点的的命令
kubeadm join 192.168.0.13:6443 --token ezgizu.pi14arjxq8pyzstm \
        --discovery-token-ca-cert-hash sha256:83feca790dfbd89d515f28deb4fce1401078cccc95981fdd63895c340697d90e

执行完毕后,切换到node1,执行kubectl get nodes查看已经部署好的节点:

[node1 ~]$ kubectl get nodes
NAME    STATUS   ROLES           AGE     VERSION
node1   Ready    control-plane   4m19s   v1.27.2
node2   Ready    <none>          23s     v1.27.2
  1. 部署nginx,node1执行第三条命令。
kubectl apply -f https://raw.githubusercontent.com/kubernetes/website/master/content/en/examples/application/nginx-app.yaml

检查pod 是否运行,执行kubectl get pods -o wide

[node1 ~]$ kubectl get pods -o wide
NAME                       READY   STATUS    RESTARTS   AGE   IP         NODE    NOMINATED NODE   READINESS GATES
my-nginx-cbdccf466-c2744   1/1     Running   0          30s   10.5.1.2   node2   <none>           <none>
my-nginx-cbdccf466-sqc2z   1/1     Running   0          30s   10.5.1.3   node2   <none>           <none>
my-nginx-cbdccf466-wl8kq   1/1     Running   0          30s   10.5.1.4   node2   <none>           <none>

检查service,执行kubectl get service:

[node1 ~]$ kubectl get service
NAME           TYPE           CLUSTER-IP     EXTERNAL-IP   PORT(S)        AGE
kubernetes     ClusterIP      10.96.0.1      <none>        443/TCP        7m3s
my-nginx-svc   LoadBalancer   10.97.165.15   <pending>     80:31661/TCP   78s

此时,可以看到集群内部ip为10.97.165.15,在任意节点中执行 curl 10.97.165.15

可看到有以下输出:

[node2 ~]$ curl 10.97.165.15
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
    body {
        width: 35em;
        margin: 0 auto;
        font-family: Tahoma, Verdana, Arial, sans-serif;
    }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>

<p><em>Thank you for using nginx.</em></p>
</body>
</html>

至此,一个master,一个node节点的k8s就已经搭建好了,并且部署了一个nginx deployment。

后续想要自己部署其他服务,也可以在这上面进行练习。每次都会有四个小时的连接时间。文章来源地址https://www.toymoban.com/news/detail-850936.html

到了这里,关于打破限制,随时随地练习K8S!在线Kubernetes平台开启你的技术之旅!的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用Ftp服务器+快解析软件,让你的文件随时随地可访问

    你是否曾经遇到过这样的情况?你在办公室工作到很晚,突然想起家里的电脑里有重要文件,但却无法立即访问?或者你想要和朋友分享一些照片,却发现你的电脑和他们之间的距离太远,无法直接传输文件?如果你正在为这些问题烦恼,那么Ftp服务器将成为你的救星。 什么

    2024年02月12日
    浏览(38)
  • 无公网ip如何随时随地远程查看本地群晖NAS存储的文件资源

    对于热爱学习的在校大学生 研究生来说,从网上找学习资源容易,如何存储下来还能随时随地使用始终是个难题。 随着固态硬盘价格下降,研究生小张买了一块2T SSD装到电脑上用来存储学习资源,但是每次要背着笔记本去图书馆学习不方便,小张想用iPad在图书馆使用校园

    2024年01月19日
    浏览(44)
  • Node.js环境安装与服务设置,结合内网穿透随时随地公网访问!

    Node.js 是能够在服务器端运行 JavaScript 的开放源代码、跨平台运行环境。Node.js 由 OpenJS Foundation(原为 Node.js Foundation,已与 JS Foundation 合并)持有和维护,亦为 Linux 基金会的项目。Node.js 采用 Google 开发的 V8 运行代码,使用事件驱动、非阻塞和异步输入输出模型等技术来提高

    2024年02月07日
    浏览(40)
  • 无公网IP内网穿透使用vscode配置SSH远程ubuntu随时随地开发写代码

    正文开始前给大家推荐个网站,前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。 点击跳转到网站。 远程连接服务器的工具有很多,比如XShell、putty等,可以通过ssh来远程连接服务器,但这用于写代码并不方便,可能需要现在本地写

    2024年02月11日
    浏览(48)
  • 【Navidrome 开源音乐服务器】手把手教你打造属于自己的音乐播放器随时随地想听就听

    目录 1. 前言 2. Navidrome网站搭建 2.1 Navidrome下载和安装 2.1.1 安装并添加ffmpeg 2.1.2下载并配置Navidrome 2.1.3 添加Navidrome到系统服务 2.2. Navidrome网页测试 3. 本地网页发布 3.1 cpolar的安装和注册 3.2 Cpolar云端设置 3.3 Cpolar本地设置 4. 公网访问测试 5. 结语 不知从何时开始,我们能用的音

    2023年04月19日
    浏览(75)
  • 动态更新阿里云DDNS解析记录的IPv6地址,随时随地用域名远程访问自己的电脑【如何远程访问家里的电脑】

    [2023-04-03 19:56]: 放弃了安卓版,修正了文章中的一些错误,并改用了ddns-go [2022-09-21 23:59]: 此工具后续将推出安卓版,敬请期待 [2022-09-21 03:48]: 之前与群友“不将就”的讨论发现了一大堆问题,软件经行了大改,请重新下载安装。 [2022-09-20 18:22]: 发现并修复了一个bug,I

    2024年02月06日
    浏览(71)
  • 免费永久安装Stable diffusion WebUI到Google drive云端教程,免费GPU无限跑图,随时随地运行|Google colab|AI绘图攻略|免费硬盘 免费GPU

    免费运行stable diffusion的方案中,google colab方案是最好的,但是但是他每24小时会清空数据,每次跑图都要重新下载模型。。。那么我们该如何长期保有自己的数据呢?文本将解决这个问题,除翻越问题外唯一的前提就是你的google云盘还有足够的空间~~ 预先学习 : 安装及其问

    2024年02月09日
    浏览(92)
  • k8s资源配额限制

    为什么会有资源配额管理? 资源配额管理维度解释? 资源配额参数有什么? 计算CPU CPU的Requests和Limits是通过CPU数(cpus)来度量的。 CPU的资源值是绝对值,而不是相对值,比如0.1CPU在单核或多核机器上是一样的,都严格等于0.1 CPU core。 计算Memory 内存的Requests和Limits计量单位

    2024年02月13日
    浏览(52)
  • 云原生k8s---资源限制、探针

    目录 一:资源限制 1、资源限制原因 2、Pod 和 容器 的资源请求和限制 3、CPU 资源单位 4、内存 资源单位  5、事例 (1)事例一 (2)事例二  二:重启策略 1、重启策略模式 2、事例 三:探针 1、探针简介 2、探针的三种规则 3、Probe支持三种检查方法 4、事例 (1)exec方式 (

    2024年02月13日
    浏览(50)
  • k8s进阶3——资源配额、资源限制

    为什么会有资源配额管理? 可以提高集群稳定性,确保指定的资源对象在任何时候都不会超量占用系统物理资源,避免业务进程在设计或实现上的缺陷导致整个系统运行紊乱甚至意外宕机。 资源配额管理维度: 容器级别,定义每个Pod上资源配额相关的参数,比如CPU/Memory、

    2024年02月10日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包