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