관련 포스팅 목록

Ceph, RADOS - pool list, create, delete - http://ngee.tistory.com/758

Ceph, RADOS - object list, put, and get - http://ngee.tistory.com/781

Librados Python - Pool List, Create, Delete -  http://ngee.tistory.com/759

Librados Python - Object Input, Output  - http://ngee.tistory.com/760


일단 참고 URL 부터 

architecture - http://docs.ceph.com/docs/master/architecture/

rados object storage utility - http://ceph.com/docs/master/man/8/rados/



이번 포스팅에 사용할 pool의 이름은 testpool입니다. 

아래에서 testpool을 계속 사용합니다. 


이번에 포스팅하는 내용은 rados 명령어를 통해서 object에 attribute 값을 입력하고, 가져오는 테스트입니다 ^^


1. setxattr 

  - 특정 풀(pool)의 오브젝트(object)에 속성 값을 입력하는 명령어는 아래와 같아요.


    command example : rados -p testpool setxattr obj1 at1 testAttribute


    -p 옵션으로 pool name을 입력합니다. 여기서는 testpool 이죠.

    다음은 setxattr 이라는 오브젝트 커맨드를 입력합니다. 이 setxattr는 인자 값이 필요합니다.

    object_name이 첫 번째 인자입니다. 위 예제에서는 obj1을 사용했구요.

    attribute_name이 두 번째 인자입니다. 위 예제에서는 at1을 사용했구요.

    attribute_value가 세 번째 인자입니다. 위 예제에서는 testAttribute을 사용했구요. 


2. getxattr 

  - 이건 딱 봐도 attribute 값을 가져오는 거죠. 아래와 같은 예제로 가능합니다. 


    command example : rados -p testpool getxattr obj1 at1


    -p는 위에서 사용했으니깐 넘어가구요.

    getxattr도 역시 인자 값이 필요합니다.

    object_name이 첫 번째 인자입니다. 

    attribute_name이 두 번째 인자이구요.


    실행해보면 testAttribute가 나오면 잘 입력되고, 잘 검색되는 것이죠.

   


    그나저나 rados를 사용하면 왜 주면에 로그가 왜케 나오는지 모르겠네요.

    제가 어디서 설정을 해뒀으니깐 일케 나오겠지만요. 전혀 생각이 나질 않습니다.

    혹시 주면에 나오는 로그 같은 거 안보이게 하는 방법 알고 계시다면 말씀해주세요 ㅠㅠ 


+ Recent posts