当前位置: 首页 > news >正文

2024广东省职业技能大赛云计算赛项实战——Minio服务搭建

Minio服务搭建

前言

这道题是比赛时考到的,没找到具体题目,但在公布的样题中找到了,虽然很短~
使用提供的 OpenStack 云平台,申请一台云主机,使用提供的软件包安装部署 MINIO 服务并使用 systemctl 管理

Minio是一个开源的对象存储服务器,基于云存储服务的API(如Amazon S3),提供了类似S3的功能和接口,但可以在自己的服务器或私有云中部署和管理,从个人项目到企业级应用都可以使用它来构建可靠和可扩展的存储解决方案。

虚拟机使用的是自行创建的CentOS7,如果你不会,那虚拟机创建的流程可以参考我这篇文章:职业技能大赛云计算赛项实战——OpenStack搭建-CSDN博客
使用镜像为CentOS-7-x86_64-DVD-2009.iso,可从阿里镜像站下载:https://mirrors.aliyun.com/centos/7/isos/x86_64/
需要用到的Minio软件压缩包:https://pan.baidu.com/s/1GoeNYFwAkTnvfL9s9wGLRA?pwd=u1gy
提取码:u1gy

操作过程

上传软件包

将我提供的软件包上传至主目录内
在这里插入图片描述

安装minio

#解压软件包
[root@localhost ~]# tar -zxf minio.tar.gz
#解压后主目录会多一个mc和minio目录(mc是minio的命令行工具,而那个图片我也不知道为什么他们要放进来)
[root@localhost ~]# ls
anaconda-ks.cfg  car.jpg  mc  minio  minio.tar.gz
#给文件授权,确保其可执行
[root@localhost ~]# chmod +x minio mc
#设置/mnt/data为工作目录,--console-address为指定端口
[root@localhost ~]# ./minio server /mnt/data --console-address ":9001" &
API: http://192.168.100.11:9000  http://127.0.0.1:9000     
#9000是minion默认的http端口,我们可以通过总共端口访问Minio的Web界面
RootUser: minioadmin 
RootPass: minioadmin 
#默认用户和密码
Finished loading IAM sub-system (took 0.0s of 0.0s to load data).Console: http://192.168.100.11:9001 http://127.0.0.1:9001   
#9001则是其管理端口,用于执行管理操作,例如创建、删除和配置存储桶等
RootUser: minioadmin 
RootPass: minioadmin 
#默认用户和密码
Command-line: https://docs.min.io/docs/minio-client-quickstart-guide$ mc alias set myminio http://192.168.100.11:9000 minioadmin minioadmin
#这里它告诉我们可以设置别名
#这样可以快速连接服务器,方便后续命令操作
Documentation: https://docs.min.io
#我们照做,设置别名
[root@localhost ~]# ./mc alias set myminio http://192.168.100.11:9000 minioadmin minioadmin
...

使用systemctl管理服务

#题目需要我们使用systemctl管理minion服务
#我们先添加自定义服务文件
[root@localhost ~]# vi /etc/systemd/system/minio.service 
[Unit]
Description=MinIO Object Storage
After=network.target
[Service]
User=root
Environment="MINIO_ACCESS_KEY=minioadmin"
Environment="MINIO_SECRET_KEY=minioadmin"
ExecStart=/root/minio server /mnt/data  
WorkingDirectory=/root  
Restart=always  
[Install]
WantedBy=multi-user.targe
#Description:说明
#After:在何服务后启动该服务
#User:指定服务运行的用户
#Environment:指定minio服务的用户和密码
#ExecStart:指定运行的命令
#WorkingDirectory:服务运行的工作目录
#Restart:设置服务异常终止时自动重启
#WantedBy:设置服务自启
#重新加载systemd配置
[root@localhost ~]# systemctl daemon-reload
#后台还有刚刚部署的minio进程,会占用端口,使用pgrep命令查看它的进程ID
[root@localhost ~]# pgrep minio
1770
#OK,把它嘎掉,否则我们无法重启服务
[root@localhost ~]# kill 1770
#此时我们就可以用systemctl来管理minion服务了
[root@localhost ~]# systemctl restart minio         [root@localhost ~]# systemctl enable minio 
...
[root@localhost ~]# systemctl status minio
● minio.service - MinIO Object StorageLoaded: loaded (/etc/systemd/system/minio.service; enabled; vendor preset: disabled)Active: active (running) since 一 2024-06-17 08:11:11 CST; 38s agoMain PID: 1940 (minio)CGroup: /system.slice/minio.service└─1940 /root/minio server /mnt/data
...

测试服务

我们在浏览器中输入http://[本机IP]:9000登录web界面,输入minioadmin账号和minioadmin密码进入console界面

我们可以通过带年纪右上角的"Create Bucket"按钮创建桶

在这里插入图片描述

创建好桶后,右上角的”Upload“按钮可以上传文件
在这里插入图片描述

我们回到虚拟机内,查看我们设置的工作目录/mnt/data

#可以看到上传的文件会存放在这里
[root@localhost ~]# ls /mnt/data/test/
minio.tar.gz
#在虚拟机里我们也可以使用mc命令行工具来使用minio服务
#myminio是我们刚开始设置的别名
[root@localhost ~]# ./mc ls myminio
[2024-06-17 08:18:22 CST]     0B test/
#我们创建一个新的存储桶
[root@localhost ~]# ./mc mb myminio/test2
Bucket created successfully `myminio/test2`.
#把解压软件多出来的car.jpg图片上传至新创建的桶
[root@localhost ~]# ./mc cp /root/car.jpg myminio/test2
...t/car.jpg:  1.55 MiB / 1.55 MiB ┃▓▓▓▓▓▓▓▓▓▓▓▓▓┃ 71.80 MiB/s 0s
[root@localhost ~]# ls /mnt/data/test2/
car.jpg

后语

我们还可以通过cp命令下载文件、rm命令删除文件以及rb命令删除存储桶,这些就各位自行去了解了。

相关文章:

2024广东省职业技能大赛云计算赛项实战——Minio服务搭建

Minio服务搭建 前言 这道题是比赛时考到的,没找到具体题目,但在公布的样题中找到了,虽然很短~ 使用提供的 OpenStack 云平台,申请一台云主机,使用提供的软件包安装部署 MINIO 服务并使用 systemctl 管理 Minio是一个…...

【考研408计算机组成原理】数值表示和运算之快速数值转换

苏泽 “弃工从研”的路上很孤独,于是我记下了些许笔记相伴,希望能够帮助到大家 另外,利用了工作之余的一点点时间,整理了一套考研408的知识图谱, 我根据这一套知识图谱打造了这样一个408知识图谱问答系统 里面的每一…...

理解 JTBD 框架和EJ 理念:深挖以用户为中心的设计

在与用户的交流中,我们发现对用户需求的精准洞察普遍困扰着产品经理、设计、企划人员,因为当今消费者行为已经由单品消费转向场景消费,千人千面的个性化需求出现,消费者数据维度极大丰富,这对把握用户体验造成了很大挑…...

数据提取与治理:企业实现数据驱动决策的必经之路

数据提取与治理:企业实现数据驱动决策的必经之路 随着信息技术的迅猛发展,数据已经成为企业最宝贵的资产之一。然而,数据并非天生就具有价值,只有通过有效的提取和治理,才能转化为企业决策的有力支撑。本文将探讨数据…...

Avalonia:一个.NET跨平台UI框架

概述 Avalonia是一个强大的框架,使开发人员能够使用. NET创建跨平台应用程序。它使用自己的渲染引擎来绘制UI控件,确保在各种平台上保持一致的外观和行为,包括Windows,macOS,Linux,Android,iOS…...

海量数据处理——bitMap/BloomFilter、hash + 统计 + 堆/归并/快排

前言:海量数据处理是面试中一道常考的问题, 生活中也容易遇到这种问题。 通常就是有一个大文件, 让我们对这个文件进行一系列操作——找出现次数最多的数据、求交集、是否重复出现等等。 因为文件的内容太多, 我们的内存通常是放不…...

TrainingArguments、ModelArguments、DataArguments参数使用(@dataclass)

文章目录 前言一、@dataclass装饰器说明二、transformers.HfArgumentParser参数使用Demo三、field函数四、llava模型参数1、模型参数设置2、数据参数设置3、训练参数设置4、参数解析5、参数传递6、参数添加前言 理解llava相关参数传递方法,有利于我们对模型修改模块使用参数来…...

基于jeecgboot-vue3的Flowable流程-自定义业务表单处理(一)支持同一个业务多个关联流程的选择支持

因为这个项目license问题无法开源,更多技术支持与服务请加入我的知识星球。 这部分先讲讲支持自定义业务表单一个业务服务表单多个流程的支持处理 1、后端mapper部分 如下,修改selectSysCustomFormByServiceName为list对象,以便支持多个 &…...

解决数据丢失问题的MacOS 数据恢复方法

每个人都经历过 Mac 硬盘或 USB 驱动器、数码相机、SD/存储卡等数据丢失的情况。我们中的一些人可能认为已删除或格式化的数据将永远丢失,因此就此作罢。对于 macOS 用户来说,当文件被删除时,垃圾箱已被清空,他们可能不知道如何恢…...

[ARM-2D 专题]3. ##运算符

C语言的宏系统相当强大,它允许使用##符号来处理预处理期的文本替换。这种用法被称为标记连接(token pasting)操作,其结果是将两个标记紧紧地连接在一起,而省略掉它们之间的所有空格。在复杂的宏定义中,运用…...

基于语音识别的智能电子病历(五)电子病历编辑器

前言 首先我们要明确一个概念:很多电子病历的编辑器,在输入文字的地方,有个麦克风按钮,点击一下,可以进行录音,然后识别的文字会自动输入到电子病历中,这种方式其实不能称为“基于语音识别的智…...

云计算技术高速发展,优势凸显

云计算是一种分布式计算技术,其特点是通过网络“云”将巨大的数据计算处理程序分解成无数个小程序,并通过多部服务器组成的系统进行处理和分析这些小程序,最后将结果返回给用户。它融合了分布式计算、效用计算、负载均衡、并行计算、网络存储…...

文本三剑客其二

文本三剑客其二 sed和awk grep就是查找文本当中的内容,扩展正则表达式。 sed 对文本内容进行增删改查 sed是一种流编辑器,一次处理一行内容。 如果只是展示,会放在缓冲区(模式空间),展示结束之后&…...

【达梦数据库】typeorm+node.js+达梦数据库返回自增列值

1.配置环境,下载依赖包 typeorm init --name test22 --database mysql typeorm-dm,uuid,typeorm2,修改连接信息 修改src/ data-source.ts 文件 连接dm,可参考刚刚安装typeorm-dm 模块中的 README.md 3.修改自增信息 /* 修改前*/PrimaryGen…...

【ARMv8/ARMv9 硬件加速系列 2.1 -- ARM NEON 向量寄存器单个元素赋值】

文章目录 NEON 向量寄存器单个元素赋值对 v0.4s中的一个元素赋值对 v1.16b 中的一个元素赋值MOVI (Move Immediate)NEON 向量寄存器单个元素赋值 在ARMv8架构中,你可以使用特定的指令来对v0.4s和v1.16b中的单个元素赋值。这通常通过使用MOV(Move)指令的变种实现,具体取决于…...

GD32学习

参考视频13.立创开发板GD32教程:串口配置_哔哩哔哩_bilibili 固件库跟用户手册基本上差不多,只不过用用户手册编写程序的话会更加的底层,固件库的话就是把一些函数封装起来,用的时候拿过来即可,目前我还没有找到固件库…...

LangChain:如何高效管理 LLM 聊天历史记录?

LangChain 团队发布了一篇关于使用 Dragonfly DB 来有效管理 LangChain 应用程序聊天历史记录的教程。 该教程旨在解决用户在使用 LangChain 应用程序时普遍遇到的一个问题:如何高效地管理聊天历史记录。 LangChain 团队在推文中强调了 Dragonfly DB 在管理聊天历…...

【React】useState 更新延迟的原因是什么,怎么解决?

useState 更新延迟的原因 异步更新:React 中的 useState 更新是异步的,这意味着当你调用更新函数(如 setData)时,React 并不立即同步更新状态,而是将其放入一个待处理的队列中,稍后在适当的时候(如在下一次渲染之前)进行处理。因此,如果你尝试在调用更新函数后立即读…...

非关系型数据库NoSQL数据层解决方案 之 redis springboot整合与读写操作 2024详解以及window版redis5.0.14下载百度网盘

redis下载安装以及基本使用 下载地址 链接:百度网盘 请输入提取码 提取码:0410 一个名对应一个数值 内存级 在内存里进行操作 准备启动 我们现在就有一个redis客户端的服务器了 我们再启动一个cmd 操作redis数据库 redis里面的基本数据类型有五种 …...

jigdo无法下载的文件

问题描述 用jigdo下载Debian的iso镜像,剩下最后一个文件下载不了,提示信息: Found 0 of the 1 files required by the template Copied input files to temporary file debian-12.5.0-amd64-DLBD-2.iso.tmp - repeat command and supply mo…...

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...

逻辑回归:给不确定性划界的分类大师

想象你是一名医生。面对患者的检查报告(肿瘤大小、血液指标),你需要做出一个**决定性判断**:恶性还是良性?这种“非黑即白”的抉择,正是**逻辑回归(Logistic Regression)** 的战场&a…...

如何在看板中有效管理突发紧急任务

在看板中有效管理突发紧急任务需要:设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP(Work-in-Progress)弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中,设立专门的紧急任务通道尤为重要,这能…...

Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信

文章目录 Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信前言一、网络通信基础概念二、服务端与客户端的完整流程图解三、每一步的详细讲解和代码示例1. 创建Socket(服务端和客户端都要)2. 绑定本地地址和端口&#x…...

人机融合智能 | “人智交互”跨学科新领域

本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...

C/C++ 中附加包含目录、附加库目录与附加依赖项详解

在 C/C 编程的编译和链接过程中,附加包含目录、附加库目录和附加依赖项是三个至关重要的设置,它们相互配合,确保程序能够正确引用外部资源并顺利构建。虽然在学习过程中,这些概念容易让人混淆,但深入理解它们的作用和联…...

2025年渗透测试面试题总结-腾讯[实习]科恩实验室-安全工程师(题目+回答)

安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。 目录 腾讯[实习]科恩实验室-安全工程师 一、网络与协议 1. TCP三次握手 2. SYN扫描原理 3. HTTPS证书机制 二…...

C# 表达式和运算符(求值顺序)

求值顺序 表达式可以由许多嵌套的子表达式构成。子表达式的求值顺序可以使表达式的最终值发生 变化。 例如,已知表达式3*52,依照子表达式的求值顺序,有两种可能的结果,如图9-3所示。 如果乘法先执行,结果是17。如果5…...

Golang——7、包与接口详解

包与接口详解 1、Golang包详解1.1、Golang中包的定义和介绍1.2、Golang包管理工具go mod1.3、Golang中自定义包1.4、Golang中使用第三包1.5、init函数 2、接口详解2.1、接口的定义2.2、空接口2.3、类型断言2.4、结构体值接收者和指针接收者实现接口的区别2.5、一个结构体实现多…...

Sklearn 机器学习 缺失值处理 获取填充失值的统计值

💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 使用 Scikit-learn 处理缺失值并提取填充统计信息的完整指南 在机器学习项目中,数据清…...