Swift并不是文件系统或者实时的数据存储系统,它是对象存储,用于永久类型的静态数据的长期存储,这些数据可以检索、调整,必要时进行更新。最适合存储的数据类型的例子是虚拟机镜像、图片存储、邮件存储和存档备份
存储桶的基本使用
查看容器列表和详细信息
[root@controller ~]# swift list
[root@controller ~]# openstack container list
查看对象存储的状态
[root@controller ~]# swift stat Account: AUTH_246ec13db06d40519a1815067897ced2 Containers: 0 Objects: 0 Bytes: 0 X-Put-Timestamp: 1633161683.88879 X-Timestamp: 1633161683.88879 X-Trans-Id: txec40b1bde6bd494dac38d-00615811d3 Content-Type: text/plain; charset=utf-8 X-Openstack-Request-Id: txec40b1bde6bd494dac38d-00615811d3
创建对象存储的桶
[root@controller ~]# openstack contianer create test
[root@controller ~]# swift post test
删除一个对象存储的桶
[root@controller ~]# openstack container delete test
[root@controller ~]# swift delete test
对象管理
查看对象列表信息
[root@controller ~]# openstack object list test +-------+ | Name | +-------+ | file/ | +-------+
创建对象
[root@controller ~]# mkdir file [root@controller ~]# openstack object create test file/ file/ [root@controller ~]# mkdir file [root@controller ~]# swift upload test file/
上传文件
[root@controller ~]# swift upload test file/ a.txt file/ a.txt [root@controller ~]# swift upload test file/ b.txt file/ b.txt [root@controller ~]# openstack object list test +-------+ | Name | +-------+ | a.txt | | b.txt | | file | | file/ | +-------+
下载文件
[root@controller ~]# swift download test file/ a.txt file/ [auth 6.255s, headers 7.499s, total 7.500s, 0.000 MB/s] a.txt [auth 6.187s, headers 7.489s, total 7.489s, 0.000 MB/s]
swift分片存储
# cd /etc/swift # swift-ring-builder object.builder # swift post chinaskill # swift upload chinaskill -S 10000000 cirros-0.3.4-x86_64-disk.img
查看
查看cirros镜像存储路径 # swift start chinaskill cirros-0.3.4-x86_64-disk.img 查看存储路径中的数据片 # swift list chinaskill_segments