백업 사용자를 위한 Rackspace 스토리지 할당량을 설정하는 방법은 무엇입니까?

소개:

이 장에서는 백업 사용자가 Rackspace 스토리지 컨테이너에 백업할 수 있도록 Rackspace에서 컨테이너 할당량을 설정하는 방법을 보여줍니다.

Rackspace를 처음 사용하는 경우 http://support.rackspace.com/에서 제공되는 일반 설정에 대한 설명서를 확인해야 합니다.

이전에 Rackspace를 사용해 본 적이 있다면 백업 사용자를 위한 스토리지 설정 단계를 따를 수 있습니다. 다음 단계를 완료하도록 안내해 드립니다:

이 단계를 완료하면 컨테이너 할당량을 설정할 수 있습니다.



가정:

아래 단계에서 스토리지 할당량을 설정하기 전에 백업 클라이언트가 Rackspace에 스토리지를 이미 생성했다고 가정했습니다. 컨테이너의 이름은 "mybackup-"과 같은 구문으로 지정됩니다.



설정:

1단계: Rackspace 클라우드 제어판에 로그인합니다.

"사용자 관리" > "사용자 이름"(API 키를 받으려면 사용자 이름을 클릭하십시오.) > "로그인 정보" > "API 키"에서 사용자의 API 키를 수집하십시오.

마스킹된 키를 표시하려면 "표시"를 클릭하십시오.





2단계: 액세스 토큰을 얻습니다.

curl 패키지를 사용하여 Linux 시스템에 연결합니다. 액세스 토큰을 얻으려면 curl 명령을 사용하여 요청을 Rackspace 서버에 게시해야 합니다.

사용법: curl -v -k -s https://identity.api.rackspacecloud.com/v2.0/tokens -X "POST" -d "{\"auth\":{\"RAX-KSKEY:apiKeyCredentials\":{\"username\":\"<user name>\", \"apiKey\":\"<API Key>\"}}}" -H "Content-Type: application/json"

참고: 이전 단계에서 API 키를 수집할 수 있습니다..


예시
----------------------------------------------------------------------------------------------------
[root@os ~]# curl -v -k -s https://identity.api.rackspacecloud.com/v2.0/tokens -
X "POST" -d "{\"auth\":{\"RAX-KSKEY:apiKeyCredentials\":{\"username\":\"DavidCha
n\", \"apiKey\":\"778b2d84b63334e36a2d841339663446\"}}}" -H "Content-Type: appli
cation/json"
* About to connect() to identity.api.rackspacecloud.com port 443 (#0)
*   Trying 72.3.138.129... connected
* Connected to identity.api.rackspacecloud.com (72.3.138.129) port 443 (#0)
    :
    :
    :
  Trimmed
    :
    :
    :
{"access":{"token":{"id":"e85127fa63824a9f85ba437d1061b5c0","expires":"2014-11-1
8T07:26:16.071Z","tenant":{"id":"926819","name":"926819"},"RAX-AUTH:authenticate
dBy":["APIKEY"]},"serviceCatalog":[{"name":"cloudFilesCDN","endpoints":{"region"
:"HKG","tenantId":"MossoCloudFS_926819","publicURL":"https:\/\/cdn6.clouddrive.c
om\/v1\/MossoCloudFS_926819"},{"region":"SYD","tenantId":"MossoCloudFS_926819","
publicURL":"https:\/\/cdn4.clouddrive.com\/v1\/MossoCloudFS_926819"},{"region":"
DFW","tenantId":"MossoCloudFS_926819","publicURL":"https:\/\/cdn1.clouddrive.com
\/v1\/MossoCloudFS_926819"},{"region":"IAD","tenantId":"MossoCloudFS_926819","pu
blicURL":"https:\/\/cdn5.clouddrive.com\/v1\/MossoCloudFS_926819"},{"region":"OR
D","tenantId":"MossoCloudFS_926819","publicURL":"https:\/\/cdn2.clouddrive.com\/
v1\/MossoCloudFS_926819"}],"type":"rax:object-cdn"},{"name":"cloudFiles","endpoi
nts":[{"region":"HKG","tenantId":"MossoCloudFS_926819","publicURL":"https:\/\/st
orage101.hkg1.clouddrive.com\/v1\/MossoCloudFS_926819","internalURL":"https:\/\/
snet-storage101.hkg1.clouddrive.com\/v1\/MossoCloudFS_926819"},
    :
    :
    :
  Trimmed
    :
    :
    :
"user":{"id":"0c3001f01cb94856a87f8653ab875117","roles":[{"id":"10000256","descr
iption":"Object Store Admin Role for Account User","name":"object-store:admin"},
{"tenant* Connection #0 to host identity.api.rackspacecloud.com left intact * Cl
osing connection #0 Id":"926819","id":"6","description":"A Role that allows a us
er access to keystone Service methods","name":"compute:default"},{"tenantId":"Mo
ssoCloudFS_926819","id":"5","description":"A Role that allows a user access to k
eystone Service methods","name":"object-store:default"},{"id":"2","description":
"Default Role.","name":"identity:default"}],"name":"DavidChan","RAX-AUTH:default
Region":"HKG"}}}[root@os ~]#
[root@os ~]#
----------------------------------------------------------------------------------------------------

위의 강조 표시된 값은 할당량을 설정하기 위해 다른 curl 명령을 제출하기 전에 수집하는 데 필요합니다. 반환된 문자열이 정보가 분산되어 길기 때문에 JSON 뷰어와 같은 타사 파서를 사용하여 위 문자열을 해석할 수도 있습니다.

참고:
위의 예는 이 문서에 맞게 잘립니다.
JSON 뷰어를 사용하는 경우 다음 문자열을 복사해야 합니다

{"access":{"token  ......Trimmed...... defaultRegion":"HKG"}}}
, 그리고 JSON 뷰어에 표시합니다.





3단계: 할당량을 설정하기 전에 필요한 정보를 수집합니다.

할당량을 구성하려면 이전 단계에서 반환된 문자열에서 다음 3가지 정보를 추출해야 합니다.

Rackspace Cloud Control Panel에서 컨테이너 이름을 수집합니다.


3.1 토큰 ID

토큰 ID는 토큰 개체에서 수집할 수 있습니다.
e.g. e85127fa63824a9f85ba437d1051b5c0



예시
----------------------------------------------------------------------------------------------------
    :
    :
    :
{"access":{"token":{"id":"e85127fa63824a9f85ba437d1061b5c0","expires":"2014-11-1
8T07:26:16.071Z","tenant":{"id":"926819","name":"926819"},"RAX-AUTH:authenticate
dBy":["APIKEY"]}
    :
    :
    :
----------------------------------------------------------------------------------------------------

JSON 뷰어로부터:





3.2 RAX-AUTH:defaultRegion

기본 지역은 사용자 개체에서 수집할 수 있습니다.
e.g. 홍콩



예시
----------------------------------------------------------------------------------------------------
    :
    :
    :
"user":{"id":"0c3001f01cb94856a87f8653ab875117","roles":[{"id":"10000256","descr
iption":"Object Store Admin Role for Account User","name":"object-store:admin"},
{"tenant* Connection #0 to host identity.api.rackspacecloud.com left intact * Cl
osing connection #0 Id":"926819","id":"6","description":"A Role that allows a us
er access to keystone Service methods","name":"compute:default"},"tenantId":"Mos
soCloudFS_926819","id":"5","description":"A Role that allows a user access to ke
ystone Service methods","name":"object-store:default"},{"id":"2","description":"
Default Role.","name":"identity:default"}],"name":"DavidChan","RAX-AUTH:defaultR
egion":"HKG"}}
    :
    :
    :
----------------------------------------------------------------------------------------------------

JSON 뷰어로부터:





3.3 엔드포인트 공개 URL

"cloudFiles"라는 하위 개체 이름이 있는 serviceCatalog 개체에서 엔드포인트 공용 URL을 찾고 기본 지역(예: HKG)이 있는 엔드포인트 내부를 검색하면 공용 URL 경로를 찾을 수 있습니다.
예. https://storage101.hkg1.clouddrive.com/v1/MossoCloudFS_926819



예시
----------------------------------------------------------------------------------------------------
    :
    :
    :
"serviceCatalog":[{"name":"cloudFilesCDN","endpoints":[{"region":"HKG","tenantId
":"MossoCloudFS_926819","publicURL":"https:\/\/cdn6.clouddrive.com\/v1\/MossoClo
udFS_926819"},{"region":"SYD","tenantId":"MossoCloudFS_926819","publicURL":"http
s:\/\/cdn4.clouddrive.com\/v1\/MossoCloudFS_926819"},{"region":"DFW","tenantId":
"MossoCloudFS_926819","publicURL":"https:\/\/cdn1.clouddrive.com\/v1\/MossoCloud
FS_926819"},{"region":"IAD","tenantId":"MossoCloudFS_926819","publicURL":"https:
\/\/cdn5.clouddrive.com\/v1\/MossoCloudFS_926819"},{"region":"ORD","tenantId":"M
ossoCloudFS_926819","publicURL":"https:\/\/cdn2.clouddrive.com\/v1\/MossoCloudFS
_926819"}],"type":"rax:object-cdn"},{"name":"cloudFiles","endpoints":[{"region":
"HKG","tenantId":"MossoCloudFS_926819","publicURL":"https:\/\/storage101.hkg1.cl
ouddrive.com\/v1\/MossoCloudFS_926819","internalURL":"https:\/\/snet-storage101.
hkg1.clouddrive.com\/v1\/MossoCloudFS_926819"},    
    :
    :
    :
----------------------------------------------------------------------------------------------------

JSON 뷰어로부터:





3.4 컨테이너 이름

백업 클라이언트에서 백업 세트가 생성된 후 컨테이너 이름은 Rackspace Cloud Control Panel의 "Files" 태그에서 찾을 수 있습니다.
예: mybackup-davidchan





4단계: 테넌트에서 컨테이너 할당량을 설정합니다.

이 예에서는 컨테이너의 할당량을 2MB(2097152바이트)로 설정합니다.

사용법: curl -v -k -X PUT -H "X-Container-Meta-Quota-Bytes: <quota>" -H "X-Auth-Token: <token id>" <endpoints public URL>/<container name>


참고:
Rackspace 컨테이너 URL은 엔드포인트 공개 URL 및 사용자를 위해 생성된 컨테이너 이름입니다. 이것은

https://storage101.hkg1.clouddrive.com/v1/MossoCloudFS_926819mybackup-davidchan

두 값 사이에 슬래시 "/"를 넣어야 합니다.

예: https://storage101.hkg1.clouddrive.com/v1/MossoCloudFS_926819/mybackup-davidchan



예시
----------------------------------------------------------------------------------------------------
[root@os ~]# curl -v -k -X PUT -H "X-Container-Meta-Quota-Bytes: 2097152" -H "X-
Auth-Token: e85127fa63824a9f85ba437d1061b5c0" https://storage101.hkg1.clouddrive
.com/v1/MossoCloudFS_926819/mybackup-davidchan
* About to connect() to storage101.hkg1.clouddrive.com port 443 (#0)
*   Trying 119.9.64.232... connected
* Connected to storage101.hkg1.clouddrive.com (119.9.64.232) port 443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
* warning: ignoring value of ssl.verifyhost
* skipping SSL peer certificate verification
* SSL connection using TLS_DHE_RSA_WITH_AES_256_CBC_SHA
* Server certificate:
*       subject: CN=storage101.hkg1.clouddrive.com,OU=Domain Validated,OU=Thawte
 SSL123 certificate,OU=Go to https://www.thawte.com/repository/index.html
*       start date: Aug 15 00:00:00 2013 GMT
*       expire date: Aug 15 23:59:59 2015 GMT
*       common name: storage101.hkg1.clouddrive.com
*       issuer: CN=Thawte DV SSL CA,OU=Domain Validated SSL,O="Thawte, Inc.",C=U
S
> PUT /v1/MossoCloudFS_926819/mybackup-davidchan HTTP/1.1
> User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.15.3 zl
ib/1.2.3 libidn/1.18 libssh2/1.4.2
> Host: storage101.hkg1.clouddrive.com
> Accept: */*
> X-Container-Meta-Quota-Bytes: 2097152
> X-Auth-Token: e85127fa63824a9f85ba437d1061b5c0
>
< HTTP/1.1 202 Accepted
< Content-Length: 76
< Content-Type: text/html; charset=UTF-8
< X-Trans-Id: tx682827faeba84b3bba3ee-005469b15ahkg1
< Date: Mon, 17 Nov 2014 08:27:06 GMT
<
* Connection #0 to host storage101.hkg1.clouddrive.com left intact
* Closing connection #0
<html><h1>Accepted</h1><p>The request is accepted for processing.</p></html>[roo
t@os ~]#
[root@os ~]#
----------------------------------------------------------------------------------------------------

"수락됨" 메시지가 반환되면 2MB 할당량이 성공적으로 설정된 것입니다.