其他教程

其他教程

Products

当前位置:首页 > 其他教程 >

k8s应用管理:建集群,部署应用,发布应用,扩展应用,更新应用

GG网络技术分享 2025-03-18 16:14 0


大家好,这里是关于[BuyVM块存储挂载到VPS的教程],[k8s应用管理:建集群,部署应用,发布应用,扩展应用,更新应用]问题的解答,希望对您有所帮助。如果你还想了解更多这方面的信息,请关注本站其他相关内容,共同学习吧!

BuyVM块存储挂载到VPS的教程

教程大全BuyVM,BuyVM挂载,BuyVM挂载块存储

BuyVM块存储挂载到VPS的教程

在BuyVM官网购买块存储后,在后台可以分配到VPS上。

然后重启你的VPS,再查找存储就可以看到了。

详细步骤如下:

1.查找存储块名称

ls /dev/disk/by-id/

2.返回存储块名称如下

ata-QEMU_DVD-ROM_QM00004 scsi-0BUYVM_SLAB_VOLUME-2833

scsi-0BUYVM_SLAB_VOLUME-2833就是你存储块的名字。把他记下来下面的命令根据你的存储块名字修改下。

3.格式化存储块

mkfs.ext4 -F /dev/disk/by-id/scsi-0BUYVM_SLAB_VOLUME-2833

4.创建挂载点

这就是个目录,你可以改成其他的

mkdir -p /mnt/pan

5.将块存储挂载到你创建的挂载点上

mount -o discard,defaults /dev/disk/by-id/scsi-0BUYVM_SLAB_VOLUME-2833 /mnt/pan

6.查看挂载结果

df -ls

7.添加开机启动

不添加的话你重启就看不到存储了

echo ‘/dev/disk/by-id/scsi-0BUYVM_SLAB_VOLUME-2833 /mnt/pan ext4 defaults,nofail,discard 0 0’ | sudo tee -a /etc/fstab

k8s应用管理:建集群,部署应用,发布应用,扩展应用,更新应用

概述

前面文章分享了关于k8s的一些概念原理内容,这篇文章主要分享下k8s怎么去管理应用。 k8s是一个编排容器的工具,其实也是管理应用的全生命周期的一个工具,从创建应用,应用的部署,应用提供服务,扩容缩容应用,应用更新,都非常的方便,而且可以做到故障自愈,例如一个服务器挂了,可以自动将这个服务器上的服务调度到另外一个主机上进行运行,无需进行人工干涉。


k8s的全生命周期管理

在k8s进行管理应用的时候,基本步骤是:创建集群,部署应用,发布应用,扩展应用,更新应用。

k8s可以更快的更新新版本,打包应用,更新的时候可以做到不用中断服务,服务器故障不用停机,从开发环境到测试环境到生产环境的迁移极其方便,一个配置文件搞定,一次生成image,到处运行。。。

1、创建集群:为什么要使用集群?

使用集群,create cluster是为了掩盖底层的无能,在各种环境中,底层的硬件各不相同,有的是各种低廉的服务器,有的各种云环境,有的是各种vm,有的各种host machine,要想屏蔽底层的细节,增强可靠性和稳定性,从而需要创建集群。

在k8s只要使用两条指令就可以创建一个集群,一个是kubectl init进行初始化,创建一个master节点,第二条指令就是kubectl join xxx创建一个node节点,加入这个集群。

其实集群都差不多,master用来控制,用来存储各种元数据,node节点是一个工作节点,真正来干活的;node节点定时与master进行通信,通过kubelet进程来汇报信息。

查看集群信息

2、 部署应用

使用集群的主要目标是啥?用来提供服务,让开发开发的应用程序能在集群上运行,从而需要让开发能运行一个应用来进行测试。

部署应用

一条指令就能运行一个服务,有了image之后就是这么简单。所以,在开发完成程序之后,需要将程序打包成image,然后放到registry中,然后就能够运行应用了。

在部署完成应用之后,就可以看到应用的名称,期望状态是运行一个pod,当前有一个pod,活动的也是一个,还有启动的时间,那么什么是pod呢?

在k8s里面,集群调度的最小单元就是一个pod,一个pod可以是一个容器,也可以是多个容器,例如你运行一个程序,其中使用了nginx,使用mysql了,使用了jetty,那么可以将这三个使用在同一个pod中,对他们提供统一的调配能力,一个pod只能运行在一个主机上,而一个主机上可以有多个pod。

3、发布应用

发布应用主要就是对外提供服务,可能会有人提出疑问,我都运行了服务,为什么还不能提供服务,这是因为在集群当中,创建的ip地址等资源,只有在同一个集群中才能访问,每个pod也有独一的ip地址,当有多个pod提供相同的服务的时候,就需要有负载均衡的能力,从而这里就涉及到一个概念就是service,专门用来提供服务的。

发布应用

服务主要是用来提供外界访问的接口,服务可以关联一组pod,这些pod的ip地址各不相同,而service相当于一个复杂均衡的vip,用来指向各个pod,当pod的ip地址发生改变之后,也能做到自动进行负载均衡,在关联的时候,service和pod之间主要通过label来关联,也就是标签(-l表示为label)。

从而外界就可以访问此应用了,如下:

4、 扩容缩容

在业务上线之后,碰到了有大型考试之类的高并发情况怎么办?可以直接扩容:

过了大型考试之后怎么办,可以缩容:

这里主要体现的是K8S的横向扩展的能力,每次扩容缩容的时候,只是一条命令就可以了。不用创建vm,不用去部署中间件,不用去各种修改配置,这就是自动化。。。

5、 更新

如果有新版本需要更新,需要发布的时候则可以:

这里可以滚动更新,根据新的image创建一个pod,分配各种资源,然后自动负载均衡,删除老的pod,然后继续更新,不会中断服务。


为什么要选择k8s?其实主要是为了提高了发布的效率,更新版本的效率,更方便更快捷的上线新版本。

后面会分享更多关于devops方面的内容,感兴趣的朋友可以关注下!!

标签:

提交需求或反馈

Demand feedback