swift(Object Storage对象存储服务)(单节点)

# 在部署对象存储服务(swift)之前,你的环境必须包含身份验证服务(keystone);
# keystone需要MySQL数据库,Rabbitmq服务,Memcached服务;
# 内存:4G
# 系统:Ubuntu Server-14.04.5
# 安装方法:http://www.jianshu.com/p/9e77b3ad930a
# IP地址:192.168.10.55
# 主机名:object

基本环境配置

配置主机静态IP地址

vim /etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
# 将dhcp修改为static
iface eth0 inet static
# 静态IP地址
address 192.168.10.55
# 子网掩码
netmask 255.255.255.0
# 广播地址
broadcast 192.168.10.255
# 默认网关
gateway 192.168.10.2
# DNS服务器
## 谷歌DNS
dns-nameservers 8.8.8.8
## 阿里DNS
dns-nameservers 223.5.5.5

重启网卡

# 关闭网卡
ifdown eth0
# 开启网卡
ifup eth0

配置主机名

vim /etc/hostname
# 对于不同的节点,请做出相应的修改
# 清空文件内容
# 主机名
object

配置主机名解析

vim /etc/hosts
# 文件内容,请视实际情况做相应的修改
192.168.10.55 object

验证操作

ping -c 4 主机名
# 例如
ping -c 4 object

配置Ubuntu更新源

vim /etc/apt/sources.list
# 请先把文件内容清空
# 任选一组源
# 中国科学技术大学源
deb http://mirrors.ustc.edu.cn/ubuntu/ trusty main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu/ trusty-security main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu/ trusty-updates main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu/ trusty-proposed main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu/ trusty-backports main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ trusty main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ trusty-security main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ trusty-updates main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ trusty-proposed main restricted universe multiverse
deb-src http://mirrors.ustc.edu.cn/ubuntu/ trusty-backports main restricted universe multiverse

# 阿里云的Ubuntu-14.04源
deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse

更新系统

apt-get update && apt-get dist-upgrade

添加OpenStack库

apt-get install software-properties-common
# 此处命令行会停顿,请按Enter键继续
add-apt-repository cloud-archive:mitaka

安装OpenStack客户端

apt-get install python-openstackclient

更新系统

# 此处为必需步骤
apt-get update && apt-get dist-upgrade

重启主机

shutdown -r now
# 重启电脑后,XShell要用新的IP地址连接虚拟机
# XShell的使用方法:http://www.jianshu.com/p/ada93cba0acd

MySQL服务

安装软件包

# 此处会提示用户设置数据库密码
apt-get install mariadb-server python-pymysql

配置openstack.cnf

vim /etc/mysql/conf.d/openstack.cnf
[mysqld]
# object节点的IP
bind-address = 192.168.10.55
default-storage-engine = innodb
innodb_file_per_table
max_connections = 4096
collation-server = utf8_general_ci
character-set-server = utf8

重启mysql服务

service mysql restart

mysql安全初始化

# 提示输入密码,问题推荐输入n、y、y、y、y
mysql_secure_installation

Rabbitmq服务

安装软件包

apt-get install rabbitmq-server

添加OpenStack用户

# 此处密码为0901
rabbitmqctl add_user openstack 0901

为OpenStack用户添加读、写及访问权限

rabbitmqctl set_permissions openstack ".*" ".*" ".*"

Memcached服务

安装软件包

apt-get install memcached python-memcache

配置memcached.conf

vim /etc/memcached.conf
# object的IP地址
-l 192.168.10.55

重启服务

service memcached restart

keystone的安装

进入数据库

# 提示输入数据库密码
mysql -u root -p

创建keystone数据库

CREATE DATABASE keystone;

赋予keystone相关权限

# 根据实际情况修改密码
GRANT ALL PRIVILEGES ON keystone.* TO ‘keystone‘@‘localhost‘ IDENTIFIED BY ‘0901‘;
GRANT ALL PRIVILEGES ON keystone.* TO ‘keystone‘@‘%‘ IDENTIFIED BY ‘0901‘;

退出数据库

exit

生成随机值作为临时令牌(token)

# token:0c7030a400cf77890c75
# token值要与后文统一
openssl rand -hex 10

禁用keystone在安装完成后自启

echo "manual" > /etc/init/keystone.override

安装软件包

apt-get install keystone apache2 libapache2-mod-wsgi

配置keystone.conf

vim /etc/keystone/keystone.conf
[DEFAULT]
# token:0c7030a400cf77890c75
# token值要与后文统一
admin_token = 0c7030a400cf77890c75

[database]
# 注释掉原connection
# 根据实际情况修改密码
connection = mysql+pymysql://keystone:[email protected]/keystone

# 在第1987行
[token]
provider = fernet

同步keystone数据库

su -s /bin/sh -c "keystone-manage db_sync" keystone

初始化Fernet键

keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone

配置apache2.conf

vim /etc/apache2/apache2.conf
# 在文件前面添加该项
ServerName object

新建并配置wsgi-keystone.conf

vim /etc/apache2/sites-available/wsgi-keystone.conf
Listen 5000
Listen 35357

<VirtualHost *:5000>
    WSGIDaemonProcess keystone-public processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP}
    WSGIProcessGroup keystone-public
    WSGIScriptAlias / /usr/bin/keystone-wsgi-public
    WSGIApplicationGroup %{GLOBAL}
    WSGIPassAuthorization On
    ErrorLogFormat "%{cu}t %M"
    ErrorLog /var/log/apache2/keystone.log
    CustomLog /var/log/apache2/keystone_access.log combined

    <Directory /usr/bin>
        Require all granted
    </Directory>
</VirtualHost>

<VirtualHost *:35357>
    WSGIDaemonProcess keystone-admin processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP}
    WSGIProcessGroup keystone-admin
    WSGIScriptAlias / /usr/bin/keystone-wsgi-admin
    WSGIApplicationGroup %{GLOBAL}
    WSGIPassAuthorization On
    ErrorLogFormat "%{cu}t %M"
    ErrorLog /var/log/apache2/keystone.log
    CustomLog /var/log/apache2/keystone_access.log combined

    <Directory /usr/bin>
        Require all granted
    </Directory>
</VirtualHost>

使apache支持虚拟机的身份认证服务

ln -s /etc/apache2/sites-available/wsgi-keystone.conf /etc/apache2/sites-enabled

重启appache服务

service apache2 restart

删除SQLite数据库文件

rm -f /var/lib/keystone/keystone.db

配置身份验证令牌

# token值要与前文统一
export OS_TOKEN=0c7030a400cf77890c75

配置Endpoint的URL

export OS_URL=http://object:35357/v3

配置API版本

export OS_IDENTITY_API_VERSION=3

创建identity服务实体

# 执行结果为表格
openstack service create --name keystone --description "OpenStack Identity" identity

创建identity服务endpoint

# 执行结果为表格
openstack endpoint create --region RegionOne identity public http://object:5000/v3
openstack endpoint create --region RegionOne identity internal http://object:5000/v3
openstack endpoint create --region RegionOne identity admin http://object:35357/v3

创建一个默认的domain

# 执行结果为表格
openstack domain create --description "Default Domain" default

创建一个admin project

# 执行结果为表格
openstack project create --domain default --description "Admin Project" admin

创建一个admin user

# 此处会提示用户设置用户密码
# 执行结果为表格
openstack user create --domain default --password-prompt admin

创建一个admin role

# 执行结果为表格
openstack role create admin

将role添加到admin project和admin user里面去

# 此处无输出则执行正确
openstack role add --project admin --user admin admin

创建一个service project

# 执行结果为表格
openstack project create --domain default --description "Service Project" service

配置keystone-paste.ini

vim /etc/keystone/keystone-paste.ini
# 分别从[pipeline:public_api]、[pipeline:admin_api] and [pipeline:api_v3] 移除 admin_token_auth

移除临时token

unset OS_TOKEN OS_URL

作为admin管理员请求一个身份验证令牌

# 提示输入admin的密码
# 执行结果为表格
openstack --os-auth-url http://object:35357/v3 --os-project-domain-name default --os-user-domain-name default --os-project-name admin --os-username admin token issue

简化操作

# 将环境变量写入配置文件
# 简化每次重启主机后需加载脚本的操作
# 直接在命令行执行以下命令,再遇到需要加载脚本时就不需要执行了
echo "export OS_PROJECT_DOMAIN_NAME=default" >> /etc/profile
echo "export OS_USER_DOMAIN_NAME=default" >> /etc/profile
echo "export OS_PROJECT_NAME=admin" >> /etc/profile
echo "export OS_USERNAME=admin" >> /etc/profile
# 注意修改密码
echo "export OS_PASSWORD=0901" >> /etc/profile
echo "export OS_AUTH_URL=http://object:35357/v3" >> /etc/profile
echo "export OS_IDENTITY_API_VERSION=3" >> /etc/profile
echo "export OS_IMAGE_API_VERSION=2" >> /etc/profile

重新加载配置文件

source /etc/profile

请求获取令牌

openstack token issue

Swift单节点安装

创建swift用户

# 此处会提示用户设置用户密码
# 执行结果为表格
openstack user create --domain default --password-prompt swift

将admin role添加到swift user

# 此处无输出则正确
openstack role add --project service --user swift admin

创建Object Storage服务实体

# 执行结果为表格
openstack service create --name swift --description "OpenStack Object Storage" object-store

创建Object Storage服务endpoint

openstack endpoint create --region RegionOne object-store public http://object:8080/v1/AUTH_%\(tenant_id\)s
openstack endpoint create --region RegionOne object-store internal http://object:8080/v1/AUTH_%\(tenant_id\)s
openstack endpoint create --region RegionOne object-store admin http://object:8080/v1

安装软件包

apt-get install swift swift-proxy python-swiftclient python-keystoneclient python-keystonemiddleware memcached

创建swift目录

mkdir -p /etc/swift

从对象存储源仓库中获取代理服务配置文件

# 耐心等待,可能获取失败
curl -o /etc/swift/proxy-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/proxy-server.conf-sample?h=stable/mitaka

配置proxy-server.conf

vim /etc/swift/proxy-server.conf
[DEFAULT]
bind_port = 8080
user = swift
swift_dir = /etc/swift

# 从[pipeline:main]中移除tempurl和tempauth,添加authtoken和keystoneauth,请不要改变模块的顺序;
[pipeline:main]
pipeline = catch_errors gatekeeper healthcheck proxy-logging cache container_sync bulk ratelimit authtoken keystoneauth container-quotas account-quotas slo dlo versioned_writes proxy-logging proxy-server

[app:proxy-server]
use = egg:swift#proxy
account_autocreate = True

# 配置文件中有,但被注释掉了,直接添加即可
[filter:keystoneauth]
use = egg:swift#keystoneauth
operator_roles = admin,user

# 配置文件中有,但被注释掉了,直接添加即可
[filter:authtoken]
paste.filter_factory = keystonemiddleware.auth_token:filter_factory
auth_uri = http://object:5000
auth_url = http://object:35357
memcached_servers = object:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = swift
password = 0901
delay_auth_decision = True

[filter:cache]
use = egg:swift#memcache
memcache_servers = object:11211

磁盘模拟存储节点

# 模拟两个存储节点,每个节点2个空磁盘
# 关闭虚拟机,为我们的虚拟机添加4个10G的空磁盘;
# 虚拟机磁盘名称:sda(系统区)、sdb、sdc、sdd、sde;
# 验证检查,查看是否有以上磁盘;
ls /dev/sd*

步骤1

步骤2

步骤3

步骤4

步骤5

步骤6

步骤7

安装软件包

apt-get install xfsprogs rsync

格式化空磁盘

mkfs.xfs /dev/sdb
mkfs.xfs /dev/sdc
mkfs.xfs /dev/sdd
mkfs.xfs /dev/sde

创建挂载点目录结构

mkdir -p /srv/node/sdb
mkdir -p /srv/node/sdc
mkdir -p /srv/node/sdd
mkdir -p /srv/node/sde

配置fstab(自动挂载)

vim /etc/fstab
# 以下内容追加到配置文件
/dev/sdb /srv/node/sdb xfs noatime,nodiratime,nobarrier,logbufs=8 0 2
/dev/sdc /srv/node/sdc xfs noatime,nodiratime,nobarrier,logbufs=8 0 2
/dev/sdd /srv/node/sdd xfs noatime,nodiratime,nobarrier,logbufs=8 0 2
/dev/sde /srv/node/sde xfs noatime,nodiratime,nobarrier,logbufs=8 0 2

挂载设备

mount /srv/node/sdb
mount /srv/node/sdc
mount /srv/node/sdd
mount /srv/node/sde

配置rsyncd.conf

vim /etc/rsyncd.conf
uid = swift
gid = swift
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
# 本机 IP 地址
address = 192.168.10.55

[account]
max connections = 2
path = /srv/node/
read only = False
lock file = /var/lock/account.lock

[container]
max connections = 2
path = /srv/node/
read only = False
lock file = /var/lock/container.lock

[object]
max connections = 2
path = /srv/node/
read only = False
lock file = /var/lock/object.lock

配置开启rsync服务

vim /etc/default/rsync
RSYNC_ENABLE=true

启动rsyns服务

service rsync start

安装软件包

apt-get install swift swift-account swift-container swift-object

获取配置文件

# 耐心等待,可能获取失败
curl -o /etc/swift/account-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/account-server.conf-sample?h=stable/mitaka
curl -o /etc/swift/container-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/container-server.conf-sample?h=stable/mitaka
curl -o /etc/swift/object-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/object-server.conf-sample?h=stable/mitaka

配置account-server.conf

vim /etc/swift/account-server.conf
[DEFAULT]
# 本机 IP 地址
bind_ip = 192.168.10.55
bind_port = 6002
user = swift
swift_dir = /etc/swift
devices = /srv/node
mount_check = True

[pipeline:main]
pipeline = healthcheck recon account-server

[filter:recon]
use = egg:swift#recon
recon_cache_path = /var/cache/swift

配置container-server.conf

vim /etc/swift/container-server.conf
[DEFAULT]
# 本机 IP 地址
bind_ip = 192.168.10.55
bind_port = 6001
user = swift
swift_dir = /etc/swift
devices = /srv/node
mount_check = True

[pipeline:main]
pipeline = healthcheck recon container-server

[filter:recon]
use = egg:swift#recon
recon_cache_path = /var/cache/swift

配置object-server.conf

vim /etc/swift/object-server.conf
[DEFAULT]
# 本机 IP 地址
bind_ip = 192.168.10.55
bind_port = 6000
user = swift
swift_dir = /etc/swift
devices = /srv/node
mount_check = True

[pipeline:main]
pipeline = healthcheck recon object-server

[filter:recon]
use = egg:swift#recon
recon_cache_path = /var/cache/swift
recon_lock_path = /var/lock

修改挂载点的权限

chown -R swift:swift /srv/node

创建recon目录并设置权限

mkdir -p /var/cache/swift
chown -R root:swift /var/cache/swift
chmod -R 775 /var/cache/swift

创建并分配初始化环(rings)

切换到swift目录

cd /etc/swift

创建account.builder文件

# 此处无输出则正确
swift-ring-builder account.builder create 10 3 1

将每个存储节点添加到环(ring)中

swift-ring-builder account.builder add --region 1 --zone 1 --ip 192.168.10.55 --port 6002 --device sdb --weight 100
swift-ring-builder account.builder add --region 1 --zone 1 --ip 192.168.10.55 --port 6002 --device sdc --weight 100
swift-ring-builder account.builder add --region 1 --zone 2 --ip 192.168.10.55 --port 6002 --device sdd --weight 100
swift-ring-builder account.builder add --region 1 --zone 2 --ip 192.168.10.55 --port 6002 --device sde --weight 100

验证操作

swift-ring-builder account.builder

平衡环

swift-ring-builder account.builder rebalance

切换到swift目录

cd /etc/swift

创建container.builder文件

# 此处无输出则正确
swift-ring-builder container.builder create 10 3 1

将每个存储节点添加到环(ring)中

swift-ring-builder container.builder add --region 1 --zone 1 --ip 192.168.10.55 --port 6001 --device sdb --weight 100
swift-ring-builder container.builder add --region 1 --zone 1 --ip 192.168.10.55 --port 6001 --device sdc --weight 100
swift-ring-builder container.builder add --region 1 --zone 2 --ip 192.168.10.55 --port 6001 --device sdd --weight 100
swift-ring-builder container.builder add --region 1 --zone 2 --ip 192.168.10.55 --port 6001 --device sde --weight 100

验证操作

swift-ring-builder container.builder

平衡环

swift-ring-builder container.builder rebalance

切换到swift目录

cd /etc/swift

创建object.builder文件

# 此处无输出则正确
swift-ring-builder object.builder create 10 3 1

将每个存储节点添加到环(ring)中

swift-ring-builder object.builder add --region 1 --zone 1 --ip 192.168.10.55 --port 6000 --device sdb --weight 100
swift-ring-builder object.builder add --region 1 --zone 1 --ip 192.168.10.55 --port 6000 --device sdc --weight 100
swift-ring-builder object.builder add --region 1 --zone 2 --ip 192.168.10.55 --port 6000 --device sdd --weight 100
swift-ring-builder object.builder add --region 1 --zone 2 --ip 192.168.10.55 --port 6000 --device sde --weight 100

验证操作

swift-ring-builder object.builder

平衡环

swift-ring-builder object.builder rebalance

从源仓库获取swift.conf

# 耐心等待,可能获取失败
curl -o /etc/swift/swift.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/swift.conf-sample?h=stable/mitaka

配置swift.conf

vim /etc/swift/swift.conf
[swift-hash]
# suffix与prefix自定义
swift_hash_path_suffix = Ben
swift_hash_path_prefix = Ben

[storage-policy:0]
name = Policy-0
default = yes

设置权限

chown -R root:swift /etc/swift

重启服务

service memcached restart
service swift-proxy restart
swift-init all start

查看swift状态

swift stat

创建容器Ben

openstack container create Ben

上传测试文件到容器Ben

# 文件需要我们自行去创建
# 注意 FILENAME 的修改
openstack object create Ben FILENAME

列出容器 Ben 存储的FILES

openstack object list Ben

下载容器Ben存储的FILENAME

# 此处无输出则正确
openstack object save Ben FILENAME
时间: 2024-10-06 19:36:10

swift(Object Storage对象存储服务)(单节点)的相关文章

openstack安装(liberty)--安装对象存储服务(swift)

九.安装对象存储服务(swift),不使用控制節點數據庫服務,而於各存儲節點使用分布式SQLite數據庫. 9.1对象存储服务包括的组件 Proxy servers (swift-proxy-server)代理服務,接收API或HTTP請求,執行上傳文件.修改源數據.WEB瀏覽時列表文件和創建容器等操作.通常使用CACHE技術(memcache)提高性能 Account servers (swift-account-server)賬戶服務,管理對象存儲中的賬戶定義. Container serv

openstack-mitaka之对象存储服务(object安装配置)

在本次环境中,object共使用2台主机,每台主机3个磁盘,其中第一块磁盘用于系统,后面两块,用于对象存储服务使用,前期准备工作,已经准备就绪,接下来,开始安装配置 1.安装软件包(在object1.object2分别执行如下命令) 2.在object1.object2执行XFS格式化/dev/sdb./dev/sdc 3.在object1.object2创建挂载点目录结构 3.在object1.object2分别编辑/etc/fstab 4.在object1.object2挂载设备 5.在ob

openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 三

openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 一 openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 二 openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 三 openstack-r版(rocky)搭建基于centos7.4 的openstack swift对象存储服务 四 以下操作在控制节点执行control

腾讯云cos对象存储服务文件上传api就是一个大坑

一.介绍 对象存储服务(Cloud Object Service)是基于腾讯多年海量服务经验,对外提供的可靠.安全.易用的海量存储服务.提供多样化接入方式,以及全国部署的上传加速集群,可以无缝衔接CDN进行加速下载. 二.cos 文件上传api源码 /** * 单个文件上传,适用于小文件 * * @param bucketName * bucket名称 * @param remotePath * 远程文件路径 * @param localPath * 本地文件路径 * @return 服务器端返

对象存储服务与图片服务器的优缺点对比

今天再次与人探讨到网站图片存放话题,于是乎想起了经典的图片存放的虚拟应用程序.也就是IIS发布时候的"添加虚拟目录"功能.此功能如今在图片共享用途上已经逐步被对象存储服务所替代. 这个功能在传统架构里,虚拟目录功能能够实现多个网站共享同一个"图片读写路径"而大受欢迎,同时也做到了集中存储图片功能.但是随着云架构的发展,目前这种用法已经为数不多见了.取而代之的是使用"对象存储"服务集中共享存储图片等静态文件. 对象存储服务有很多提供方,阿里云提供的

华为云学院干货:对象存储服务:便捷管理存储资源

华为云学院干货:对象存储服务:便捷管理存储资源随着数据规模不断增加,收集和存储大型数据集对于任何规模的企业都让人生畏,而且访问组织和分析非结构化数据给企业制造了大量新的挑战.华为云对象存储服务是基于对象的海量存储服务,能为您提供高可靠高性能高安全的数据存储能力.OBS服务基于策略(时间.名称.标签.版本)配置,实现数据在标准存储低频访问存储和归档存储中按需流动,标准存储持久性99.999999999%.无最低存储时间,毫秒级时延.低频访问存储:持久性99.999999999%,30天最低存储时间

轻量对象存储服务——minio

minio Minio是一个非常轻量的对象存储服务. Github: minio 它本身不支持文件的版本管理.如果有这个需求,可以用 s3git 搭配使用. Github: s3git 安装 minio 文档有列出各平台的安装方式.这里只说 docker 的方式. docker-compose.yml version: "3" services: minio: image: minio/minio volumes: - minio-data:/data ports: - "9

腾讯对象存储服务COS加密签名上传文件与下载文件的剖析,福利提供给所有使用Android的小伙伴们!

在做一些用户需求的时候,公司往往需要工程师采集到更多有用的关于用户的个人信息,然后对用户群进行分析,今天我不是来分析这些的,今天我主要是说 腾讯推出的款云产品,那就是对象存储服务COS,这个产品面向所有开发者,新用户都有免费享有10G的使用权,10G可能对于做方案的工程师来说可能是微不 足道的,比如后视镜和车载方案,会常常需要用到视频的存储与云分享,当然这里不是只本地存储哦,我指的是用户在使用方案商的方案的时候,比如他开车 的时候录了一段视频需要分享到某个域,共享给大家看,比如微信,这时候他肯定

FreeNAS 11.0 正式发布,提供 S3 兼容的对象存储服务

FreeNAS 11.0 正式版已发布,该版本带来了新的虚拟化和对象存储功能.FreeNAS 11.0 将 bhyve 虚拟机添加到其受欢迎的 SAN / NAS.Jail 和插件中,让用户可以在 FreeNAS box 上使用 host web-scale VMs.它提供 S3 兼容的对象存储服务,可将 FreeNAS box 变成 S3 兼容的服务器,不用再依赖云端.点击此处查看 FreeNAS 11.0 的新功能 FreeNAS 11.0 基于 FreeBSD 11-STABLE ,它增加