원서 : https://hyperledger-fabric.readthedocs.io/en/release-1.4/config_update.html

  • What is a Channel Configuration?
    • channel-configuration에는 channel 관리와 관련된 필요한 정보가 있습니다.
    • 가장 중요한 점은 channel-configuration으로 organizations를 지정뿐만아니라, 'channel 접근정책' 이나 'block 사이즈' 등도 합니다.
    • channel-configuration의 ledger의 한 block으로 저장이 되는데, 이를 config-block 이라고 합니다.
    • 단 하나의 config-block에 모든 설정을 다 가지고 있어야 합니다.
    • (genesis-block이 초창기 설정을 가지고 시작) -> ('설정변경'시, 새로운 config-block으로 완전대체)
    • orderer 와 peer 는 현재 channel 설정정보를 메모리에 들고 있습니다.
    • '설정변경'은 configuration-transaction 이라는 과정으로 처리됩니다. (일발 transaction 과 약간다름)
    • 즉, configuration을 가지고 와서 -> 사람이 읽을 수 있게 바꾸고 -> 수정한뒤 -> 제출하고 승인받는 과정 입니다.
  • Editing a Config
    • channel-configuration은 다양한 수정정책이 있습니다.
    • "Adding an Org to a Channel" 튜토리얼에서 봤던것 처럼, JSON 형식의 설정으로 파악하면 됩니다.
    • 다양한 잡소리가 많지만... 그냥 아래와 같은 설정값을 보는게 최고입니다.
      • Batch Size : block 속의 transaction 크기와 갯수.
      • Batch Timeout : (첫 transaction 이후) block으로 짜를 대기시간.
      • Channel Restrictions : orderer가 할당되는 총 channel 수.
      • Channel Creation Policy : ...
      • Kafka brokers : ...
      • Anchor Peers Definition : 각 organization의 anchor-peer 정의.
      • Hashing Structure : block 데이터의 해시는 Markle-Tree으로 계산되는데, 이 트리의 넓이.
      • Hashing Algorithm : 해시값에 사용되는 알고리즘
      • Block Validation : block이 유효할때, 요구되는 서명관련 정책. (디폴트 orderer organization의 member가 서명)
      • Orderer Address : 클라이언트가 orderer 호출에 사용 할 수 있는 주소.
      • (참고적으로 consensus type은 한번 정하고, 네트워크가 부트스트랩되면~ 수정 할 수 없습니다.)
    • "Adding an Org to a Channel튜토리얼에서 했던것 처럼, 노다가 뛰면... 위 설정값 수정할수있겠죠.
  • Get the Necessary Signatures
    • 최종적인 '설정변경'을 마무리 하려면, 서명을 해야하는데~ 각에 설정값 마다의 서명정책을 알아둘 필요가 있습니다.
      • organization 관련 : 'anchor-peer 설정'같이... 해당 organization의 '관리자 서명'이 필요합니다.
      • application 관련 : 'organization 설정'같이... 대다수의 application organization에 '관리자 서명'이 필요합니다.
      • orderer 관련 : 대다수의 orderer organization에 '관리자 서명'이 필요합니다.
      • 최상위 channel 그룹 관련 : application organization 및 orderer organization 둘다에 '관리자 서명'이 필요합니다.
    • ...
    • ...
    • 이렇게... 아무튼... 서명을 잘... 다 받아서, 하는식의 처리를~ Fabric 차원에서 적절히 제공한다고 하니 ㅎ
    • ...
    • ...
    • 아무튼 결과적으로 ledger에 새로운 config-block이 추가되면, 꼭! 받아서 -> JSON변환해서 -> 꼼꼼히 재확인 하세요.
    • (최신설정의 사본으로써도 유용합니다.)

-끝-

'hyperledger > fabDoc.Ops-Guides' 카테고리의 다른 글

Endorsement policies  (0) 2019.08.03
Channel Configuration (configtx)  (0) 2019.08.03
Membership Service Providers (MSP)  (0) 2019.08.03
Setting up an ordering node  (0) 2019.08.03
Upgrading to the Newest Version of Fabric  (0) 2019.08.03

+ Recent posts