2016-11-29 3 views
3

은 내가 Riak 서버가 최근에 생성 된 새로운 버킷 타입 활성화 한 : 내 기본 구성에 따라Riak에서 기존 버킷 유형의 저장소 백엔드를 변경하는 방법은 무엇입니까?

$ riak-admin bucket-type create sso_tokens 
$ riak-admin bucket-type activate sso_tokens 

가 스토리지 백엔드가 leveldb로 설정되었다.

그런 다음 이전 키를 만료시키기 위해 버킷이 필요하다는 것을 깨달았습니다. 다시 말해 저장소 백엔드를 bitcask 또는 memory으로 변경해야했습니다. 나는 그 bitcask 나를 잘 맞는 것이라고 결정했다.

이제 제 질문은 : 기존 sso_tokens 버킷 유형의 저장소 백엔드를 어떻게 변경할 수 있습니까? 문서를 읽은 후에는 내가 할 수 있을지 확실하지 않습니다. 그래도 버켓 유형 (아래 명령 참조)을 만들 때 스토리지 백엔드를 설정하는 방법을 찾았습니다.

$ riak-admin bucket-type create new_sso_tokens '{"props":{"backend":"bitcask"}}' 

감사합니다.

답변

1

현재 단일 버킷 유형에서만 백엔드를 변경할 수 없습니다. 원하는 경우 전체 클러스터의 백엔드를 모 놀리 식 (예 : 모든 Bitcask 또는 모든 LevelDB)으로 변경할 수 있습니다. 당신은 그러나 당신이있는 경우에만 버킷 타입의 백엔드를 설정할 수 있습니다

https://github.com/basho/basho_docs/issues/1605

: 그것은 문서에 대해 다음과 Github에서 문제가 백엔드를 변경하기위한 하나의 방법을 설명하지만 http://docs.basho.com/riak/kv/에 설명되어 현재 일이 아니다 멀티 백엔드 기능 (여기에 설명 된대로 : http://docs.basho.com/riak/kv/2.2.0/setup/planning/backend/multi/)을 사용하면 버킷 유형을 일단 설정하면 변경할 수 없습니다.

Riak 2.2에 Level32의 전체 만료에 대한 지원이 추가 된 것을 알고 싶으 시다면 여기를 참고하십시오 : http://docs.basho.com/riak/kv/latest/configuring/global-object-expiration/.

+0

감사합니다. Craig, 재미 있습니다. 버켓 유형'sso_tokens'을 삭제하고 다시 만들 수있는 방법이 있는지 알고 계시겠습니까? 이번에는 올바른 백엔드를 설정하십시오. –

+0

불행히도 버킷이나 버킷 유형을 삭제할 수는 없습니다. 참조 : http://stackoverflow.com/questions/27567451/how-to-deactivate-or-delete-a-bucket-type-in-riak – Craig

+0

오! 그건 정말 불행한 일입니다. 그럴만한 이유가 있다고 생각하지만, 버킷 유형을 만드는 데 실수를하면 영원히 같이 살아야합니다. 다행히도 가상 머신으로 작업하고 있으므로 항상 시간을 거슬러 올라가 스냅 샷을 복구 할 수 있습니다. –