LoginSignup
1
3

More than 3 years have passed since last update.

ShinobiLayer: SoftLayer Object Storageの制約

Last updated at Posted at 2015-03-16

はじめに

SoftLayer object storageはOpenStack Swiftベースで構成されているのですが、現在色々な制約があります。簡単にまとめてみましょう、というのがこの記事の目的です。

20MB問題(SoftLayerのCustomer Portalの制約)

SoftLayerのCustomer Portal経由では、実は20MB以上のファイルをupload/downloadできません。この制約はKnowledgeLayerにも記載があります。
http://knowledgelayer.softlayer.com/procedure/add-object-file
http://knowledgelayer.softlayer.com/procedure/add-file-folder-or-container
objectstorage03.jpg

5GB問題(OpenStack Swiftの制約)

REST APIを使えば20MB以上のファイルを送ることはできるのですが、OpenStack Swiftは5GB以上のファイルを扱えないため、5GB以下に分割して送付するなどの仕組みが別途必要になります。一番簡単なのは、python-swiftやCyberduckのような専用ツールを使用することです。

その他の制約

以下は、python-swiftを使って取得した東京DCのSoftLayer OpenStack swiftの設定情報になります。
例えば、

  • OpenStack swiftのバージョンが2.7.0.post10. https://github.com/openstack/swift/blob/master/CHANGELOG によると、Mitakaのようです。
  • max_file_sizeで上記の1ファイルサイズあたり5GBの制約が設定されている。
  • SLO(Static Large Object)使用時に、max_manifest_segmentsで1000分割までに制限されている。

などを確認することができます。

2016/07/12更新
# swift capabilities
Core: swift
 Options:
  account_autocreate: True
  account_listing_limit: 10000
  allow_account_management: True
  container_listing_limit: 10000
  extra_header_count: 0
  max_account_name_length: 256
  max_container_name_length: 256
  max_file_size: 5368709122
  max_header_size: 8192
  max_meta_count: 90
  max_meta_name_length: 128
  max_meta_overall_size: 4096
  max_meta_value_length: 256
  max_object_name_length: 1024
  policies: [{'default': True, 'name': 'standard', 'aliases': 'standard'}]
  strict_cors_mode: True
  valid_api_versions: ['v1', 'v1.0']
  version: 2.7.0.post10
Additional middleware: account_quotas
Additional middleware: bulk_delete
 Options:
  max_deletes_per_request: 10000
  max_failed_deletes: 1000
Additional middleware: bulk_upload
 Options:
  max_containers_per_extraction: 10000
  max_failed_extractions: 1000
Additional middleware: container_quotas
Additional middleware: formpost
Additional middleware: slo
 Options:
  max_manifest_segments: 1000
  max_manifest_size: 2097152
  min_segment_size: 1
Additional middleware: staticweb
Additional middleware: tempurl
 Options:
  incoming_allow_headers: []
  incoming_remove_headers: ['x-timestamp']
  methods: ['GET', 'HEAD', 'PUT', 'POST', 'DELETE']
  outgoing_allow_headers: ['x-object-meta-public-*']
  outgoing_remove_headers: ['x-object-meta-*']
Additional middleware: versioned_writes
1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3