什么是对象存储
对象存储是一种用于处理非结构化数据(如文本、图片、视频等)的存储架构,它以对象的形式存储数据。与传统的文件存储(如文件系统)和块存储(如SAN)不同,对象存储为每个数据单元(对象)提供一个唯一的标识符(通常是一个URL),使数据可以在分布式系统中被存取。
基于MinIO的对象存储
MinIO 是一种高性能的分布式对象存储服务,可以在私有云环境中存储大量的非结构化数据。它是兼容Amazon S3 API的开源平台,因此可以广泛用于各种云存储应用。以下是MinIO的一些主要特点:
-
- 高性能和高效率:MinIO专为性能而设计,支持高速数据读写和低延迟访问,非常适合存储大型对象及处理大规模数据工作负载。
-
- 可扩展性:MinIO具有良好的水平扩展能力,用户可以通过增加更多的节点来随时扩大存储容量和处理能力。
-
- 数据保护:MinIO提供强大的数据保护功能,包括服务端加密、客户端加密、访问策略和身份验证机制,以确保数据安全。
-
- 简单易用:MinIO拥有简单直观的界面和广泛的文档支持,用户可以轻松地部署和管理存储集群。
-
- 多云兼容:MinIO兼容AWS S3 API,支持在多种云平台上无缝集成和部署,为用户提供灵活的多云存储解决方案。
-
- 开源和社区支持:MinIO是开源项目,拥有活跃的开发者社区,用户可以获得丰富的资源和及时的技术支持。
-
- 生态系统整合:MinIO可以与各种大数据工具和应用无缝集成,如Kubernetes、Apache Spark、Presto等,非常适合构建现代的数据分析和AI应用。
搭建部署
我们将使用简单的方式,利用docker来搭建一个minio的oss对象存储服务,服务器使用的Centos7系统。
安装docker
完整的复制下方命令执行即可正确的安装完成docker服务:
yum remove -y docker docker-common docker-selinux docker-engine
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum install docker-ce
systemctl enable --now docker
安装docker-compose
我们将使用docker-compose来创建并运行minio容器,这是一个可选的操作,如若不想使用docker-compose可以直接执行下方的docker命令进行搭建:
docker run -p 9000:9000 -p 9001:9001 --name minio1 \
--restart always \
-e "MINIO_ROOT_USER=minioadmin" \
-e "MINIO_ROOT_PASSWORD=minioadmin" \
-v $PWD/data:/data \
quay.io/minio/minio server /data --console-address ":9001"
安装完成后通过访问下方地址并使用用户名密码minioadmin来进行登录:
http://127.0.0.1:9001/
接下来是使用docker-compose的方式,安装docker-compose工具:
curl -SL "https://mirror.ghproxy.com/https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
我们新增一个docker-compose.yml
文件并写入:
services:
minio1:
image: quay.io/minio/minio
container_name: minio1
restart: always
ports:
- "9000:9000"
- "9001:9001"
environment:
MINIO_ROOT_USER: minioadmin
MINIO_ROOT_PASSWORD: minioadmin
volumes:
- ./data:/data
command: server /data --console-address ":9001"
使用下方的命令启动:
docker-compose up -d
往期推荐
手把手带你搭建k8s集群 2024-05-12 一个开源的轻量级笔记服务 2024-05-11 Pake:将网页生成轻量级桌面 App 2024-05-15 k8s系列:什么是Kubeconfig文件? 2024-05-17 Harbor:搭建一个企业级别的docker镜像管理服务 2024-05-16
欢迎大家关注我的公众号,将会为大家推荐更优质的内容!