CCE集群切换OBS共享存储方案

news2024/11/26 9:43:52

目录

一、背景

二、创建PVC

三、同步nfs数据到OBS

 四、变更无状态负载数据储存为OBS

 五、卸载弹性文件服务SFS(nfs)


一、背景

        生产环境CEE集群,每个K8s节点挂载同一个华为云弹性文件服务SFS(可以简单的理解为nfs)。无状态应用通过hostPath方式持久化。该CCE集群运行的业务应用都是无状态负载(deployments),不但应用的日志都会收集到ELK日志服务器持久化和展示,还在华为云AOM保留了30天的日志;很多无状态负载的应用不需要保留太久的历史数据,OBS的性能也完全满足文件服务应用的数据持久话存储。

        购买的华为云弹性文件服务SFS容量为5T,每年的费用约1.5万元,然而实际上我们数据量还不是很大,使用率约10%(500G左右),非常值得的优化资源,降低不必要的成本支出。尽管nfs比OBS性能好很多效率高,但是存储历史日志和历史文件,使用OBS存储完全无压力,况且OBS每年1T的费用大概1000多元。OBS不但经济实用,还完全满足实用需求。

        挂载nfs不便于k8s集群节点弹性扩容,从管理和运维角度看也不是那么的友好,反而是变得有点复杂。

        综合来看,不管从哪角度出发,都非常有必要将nfs替换成OBS。况且CCE集群支持OBS存储卷。

二、创建PVC

        由于我的环境暂时需要将3个无状态负载的持久化变更为对象存储卷;分别创建用于mservice、ms-qing和fileserver无状态负载的对象存储卷:

cce-obs-mservicelogs、cce-obs-ms-qing-storage和cce-obs-fileserver

         创建对象存储卷,会自动生成看似不规则的对象存储桶名称并关联绑定,实际上概统名称是pv名字,即pvc和pv关联绑定。后续将nfs数据同步到OBS存储需要用到桶名称(pv名称)

三、同步nfs数据到OBS

        在挂载nfs的节点服务器上安装OBS工具,将无状态负载mservice、ms-qing和fileserver应用存储在nfs共享存储的数据分别同步到OBS

        1、下载OBS工具:

# 下载 OBS 同步工具

wget https://obs-community.obs.cn-north-1.myhuaweicloud.com/obsutil/current/obsutil_linux_amd64.tar.gz && tar -xzvf obsutil_linux_amd64.tar.gz

        2、同步节点上nfs共享数据到OBS

 四、变更无状态负载数据储存为OBS

        待nfs共享存储的数据完全同步到OBS后,就可以安排时间将无状态负载数据存储切换为OBS存储。

        注意:在切换应用的数据存储为OBS前要一直保持OBS同步工具一直运行,一直实时增量同步nfs数据到OBS。待完成无状态负载数据存储切换为OBS完成后,才能停止OBS同步脚本。

        分别切换mservice、ms-qing和fileserver应用数据存储为OBS

 五、卸载弹性文件服务SFS(nfs)

        根据自己的实际情况决定是否要卸载nfs,并且保证没有其他应用在使用nfs共享存储。

切换OBS,系统稳定运行了1个月,我才将nfs卸载,并且退了nfs文件服务产品。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/621510.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

chatgpt赋能python:Python就业岗位:行业热门,前景广阔

Python 就业岗位:行业热门,前景广阔 作为其中一门最受欢迎的编程语言,Python 经常出现在各个行业的招聘需求中。无论是大企业、初创公司,还是政府机构和非营利组织,都需要 Python 专业人士来应对日益增长的数据和技术…

chatgpt赋能python:Python库使用指南

Python库使用指南 Python是一种高级编程语言,拥有丰富而强大的标准库和第三方库。在本文中,将介绍一些主要Python库的使用方法以及如何通过使用它们来提高SEO。 Requests库 Requests是一个流行的第三方库,用于HTTP请求和响应。可以使用它来…

【内网安全-隧道搭建】内网穿透_Spp上线(全双工通信)

目录 Spp(特殊协议上线) 1、简述: 2、用法: 1、准备 2、服务器 3、客户机 4、cs、msf Spp(特殊协议上线) 1、简述: 1)支持的协议:tcp、udp、rudp(可靠…

基于动力学模型的无人驾驶车辆MPC轨迹跟踪算法及carsim+matlab联合仿真学习笔记

目录 1 模型推导及算法分析 1.1 模型推导 1.1.1 车辆动力学模型 1.1.2 线性时变预测模型推导 1.2 模型预测控制器设计 1.2.1 目标函数设计 1.2.2 约束设计 2 代码解析 2.1 模板框架 2.1.1 S-Function 2.1.2 mdlInitializeSizes函数 2.1.3 mdlUpdates()函数 2.1.4 …

机器学习中的数学原理——分类的正则化

通过这篇博客,你将清晰的明白什么是分类的正则化。这个专栏名为白话机器学习中数学学习笔记,主要是用来分享一下我在 机器学习中的学习笔记及一些感悟,也希望对你的学习有帮助哦!感兴趣的小伙伴欢迎私信或者评论区留言&#xff01…

Go异步任务解决方案 Asynq

今天为大家介绍一个Go处理异步任务的解决方案:Asynq,是一个 Go 库,用于排队任务并与 worker 异步处理它们。它由Redis提供支持,旨在实现可扩展且易于上手。 一、概述 Asynq 是一个 Go 库,用于对任务进行排队并与工作人…

Python爬虫学习-简单爬取网页数据

疫情宅家无事,就随便写一些随笔吧QwQ… 这是一篇介绍如何用Python实现简单爬取网页数据并导入MySQL中的数据库的文章。主要用到BeautifulSoup requests 和 pymysql。 以网页https://jbk.39.net/mxyy/jbzs/为例,假设我们要爬取的部分数据如下图所示&#…

【板栗糖GIS】——如何下载哔哩哔哩的视频CC字幕为不带时间节点的纯文字

【板栗糖GIS】——如何下载哔哩哔哩的视频CC字幕为不带时间节点的纯文字 目录 1. 打开edge浏览器或谷歌浏览器 2. 安装油猴插件 3. 安装字幕插件 4. 打开哔哩哔哩视频播放页面,点击字幕 首先在想要下载之前需要先判定视频是否有云字幕,如果有才可以…

xxl-job详解

什么是xxl-job? ​ xxl-job是一个分布式的任务调度平台,其核心设计目标是:学习简单、开发迅速、轻量级、易扩展,现在已经开放源代码并接入多家公司的线上产品线,开箱即用。xxl是xxl-job的开发者大众点评的许雪里名称的…

SpringBoot+vue 实现监控视频rtsp播放(java+Nginx+ffmpeg+flv.js)

其实原理就是: 将监控通过FFMPEG,推送给Nginx,前端通过Nginx地址拉取视频,就可以播放了。 1:安装FFMPEG. 2:下载并且配置nginx. 3:使用java代码实现调用cmd或者linux窗口,并且运行操作FFMPEG的命令,进行监控视频rtsp格式的推送,推送给nginx. …

模板方法设计模式的学习和使用

1、模板方法设计模式的学习 当涉及到一系列具有相似行为的算法或操作时,模板方法设计模式是一种有效的设计模式。它允许你定义一个算法的骨架,同时将某些步骤的实现细节交给子类来实现。   模板方法模式基于以下两个核心原则: 抽象类定义模板方法骨架&#xff1a…

chatgpt赋能python:Python将一张图片分割成多张:从理论到实践

Python将一张图片分割成多张:从理论到实践 简介 随着Internet的爆炸式增长,图片已经成为了我们生活中不可或缺的一部分。具有高质量、高清晰度的图片可以提升网站的美观程度,帮助网站吸引更多的用户。但是,有时候大型的图片并不…

chatgpt赋能python:Python并不是一门简单的编程语言

Python 并不是一门简单的编程语言 Python 是一门直观且易学的编程语言,这一点没有错,但是要说它是简单的,那其实是不准确的。Python 有着广泛的应用领域,包括人工智能、大数据分析、Web开发、自动化测试等。尽管初学者可以迅速上…

MySQL中BETWEEN AND(范围查询)

0 写在前面 MySQL 提供了 BETWEEN AND 关键字,用来判断字段的数值是否在指定范围内。 BETWEEN AND 需要两个参数,即范围的起始值和终止值。如果字段值在指定的范围内,则这些记录被返回。如果不在指定范围内,则不会被返回。 最近…

JS 装饰器

JS 装饰器 JavaScript 装饰器是一种以 符号开头的特殊语法,放在目标代码的前面用于包装或扩展代码功能。JavaScript 的装饰器语法目前仍处于提案阶段,现阶段使用的话需要通过 bable 等方式进行编译之后,才能在浏览器正常运行。装饰器分为两…

chatgpt赋能python:Python将空值替换成0

Python 将空值替换成 0 在数据分析和处理过程中,清洗数据往往是非常重要的一个环节。而在清洗数据过程中,经常会遇到空值(Missing Values)的问题。空值是指在数据集中出现的缺失值,它可能是由于数据输入错误、数据采集…

chatgpt赋能python:Python定义数据框:介绍和基础操作

Python定义数据框:介绍和基础操作 数据框是一种非常方便的数据结构,用于在Python中存储和处理表格数据。数据框可以看作是围绕Series对象构建的2D数据结构,Series是一种存储单个列的一维标记数组。在本文中,我们将介绍如何使用Py…

基于树莓派4B的车牌号识别

目录 0. 前言1. Raspbian系统烧录2. 更换清华源1. 查看树莓派系统版本2. 更换清华国内源3. Raspi镜像修改4. 系统源更新5. 错误排查 3. opencv安装4. 安装 hyperlprpip安装编译安装 5. 验证项目可行性 0. 前言 基于树莓派4B的车牌号识别系统 操作系统:Raspbian PC…

QT实例2(QTableWidget表格中增删数据)

案例介绍 本案例仅简单介绍QTableWidget部分使用方法,如在表格中插入或删除一行数据以及清空表格数据等。在添加数据时,设置了条件判断如正则表达式,若用户输入的数据不合法,则添加失败并提示用户错误的地方,便于用户…

IPsec的NAT穿越详解

问题场景 左边的支部,它的防火墙上联路由器,由于防火墙内部的接口使用的是私网地址,这就导致其无无法在公网上与对端防火墙进行IPsec的隧道建立 。所以必须在AR5上面不是NAT地址转换,由于一般使用的是NAPT,isakmp协议因…