티스토리 뷰
[Hyperledger Fabric v1.0] 4. OPREATION GUIDE(운영가이드): Channel Configuration(configtxgen)(채널 구성)
miiingo 2018. 1. 19. 14:36해당 글은 Hyperledger Fabric 페이지의 게시글을 번역 및 정리한 자료입니다.
원본 사이트 : http://hyperledger-fabric.readthedocs.io/en/release/configtxgen.html
Channel Configuration(configtxgen)(채널 구성)
이 문서는 fabric 채널 구성을 조작하기위한 configtxgen 유틸리티의 사용법을 설명합니다.
현재, 이 도구는 Orderer를 부트 스트랩하기위한 기원 블록을 생성하는 데 주력하지만, 기존 채널을 다시 구성하는 것뿐만 아니라 새로운 채널 구성을 생성하기 위해 향후 향상 될 예정입니다.
Configuration Profiles(구성 프로파일)
configtxgen
도구에 제공된 구성 매개 변수는 주로 configtx.yaml
파일에서 제공합니다. 이 파일은 fabric.git 저장소의 fabric/sampleconfig/configtx.yaml
에 있습니다.
이 구성 파일은 주로 세 부분으로 나뉩니다.
-
Profiles
섹션. 기본적으로 이 섹션에는 시나리오 개발 또는 테스트에 사용할 수있는 샘플 구성이 포함되어 있으며 fabric.git 트리에있는 암호화 자료를 참조하십시오. 이 프로파일은 실제 전개 프로파일을 구성하기위한 좋은 시작점이 될 수 있습니다.configtxgen
도구를 사용하면-profile
플래그를 전달하여 작동중인 프로필을 지정할 수 있습니다. 프로필은 모든 구성을 명시적으로 선언 할 수 있지만 일반적으로 아래 (3)의 기본값에서 구성을 상속받습니다. -
Organizations
섹션. 기본적으로이 섹션에는 sampleconfig MSP 정의에 대한 단일 참조가 포함됩니다. 프로덕션 배포의 경우 샘플 조직을 제거해야하며 네트워크 구성원의 MSP 정의를 대신 참조하고 정의해야합니다.Organizations
섹션의 각 요소는Profiles
섹션에서 정의를 참조 할 수 있도록&orgName
과 같은 앵커 레이블로 태그를 지정해야합니다. - 기본 섹션.
Orderer
및Application
구성에 대한 기본 섹션이 있으며BatchTimeout
과 같은 속성을 포함하며 일반적으로 프로파일의 기본 상속 값으로 사용됩니다.
이 구성 파일을 편집하거나 CONFIGTX_ORDERER_ORDERERTYPE=kafka
와 같은 환경 변수를 설정하여 개별 등록 정보를 무시할 수 있습니다. Profiles
요소 및 프로필 이름은 지정하지 않아도 됩니다.
Bootstrapping the orderer(Orderer를 부트스트랩하기)
원하는대로 구성 프로파일을 작성한 후, 간단히 호출하십시오
configtxgen -profile <profile_name>
그러면 현재 디렉토리에 genesis.block
파일이 생성됩니다. 선택적으로 -path
매개 변수를 전달하여 다른 파일 이름을 지정하거나 단순히 파일 구문 분석을 테스트하려는 경우 dryRun
매개 변수를 전달하여 파일 쓰기를 건너 뛸 수 있습니다.
그런 다음이 시작 블록을 사용하려면 순서 지정자를 시작하기 전에 ORDERER_GENERAL_GENESISMETHOD=file
및 ORDERER_GENERAL_GENESISFILE=$PWD/genesis.block
을 지정하거나이 값을 코드화하도록 orderer.yaml
파일을 수정하십시오.
Creating a channel(채널 만들기)
이 도구는 또한 실행을 통해 채널 생성 tx를 출력 할 수 있습니다.
configtxgen -profile <profile_name> -channelID <channel_name> -outputCreateChannelTx <tx_filename>
이렇게하면 채널을 만들기 위해 브로드 캐스트로 보내질 수있는 마샬링 된 봉투 메시지가 출력됩니다.
Reviewing a configuration(구성 검토)
구성을 만드는 것 외에도 configtxgen
도구는 구성을 검사 할 수도 있습니다.
구성 블록 및 구성 트랜잭션을 모두 검사 할 수 있습니다. inspect 플래그 -inspectBlock
및 -inspectChannelCreateTx
를 파일 경로로 사용하여 검사하여 구성의 사람이 읽을 수있는 (JSON) 표현을 출력할 수 있습니다.
아래의 예처럼 검사를 생성과 결합하고자 할 수도 있습니다.
$ build/bin/configtxgen -channelID foo -outputBlock foo.block -inspectBlock foo.block
2017/03/01 21:24:24 Loading configuration
2017/03/01 21:24:24 Checking for configtx.yaml at:
2017/03/01 21:24:24 Checking for configtx.yaml at:
2017/03/01 21:24:24 Checking for configtx.yaml at: /home/yellickj/go/src/github.com/hyperledger/fabric/common/configtx/tool
2017/03/01 21:24:24 map[orderer:map[BatchSize:map[MaxMessageCount:10 AbsoluteMaxBytes:99 MB PreferredMaxBytes:512 KB] Kafka:map[Brokers:[127.0.0.1:9092]] Organizations:<nil> OrdererType:solo Addresses:[127.0.0.1:7050] BatchTimeout:10s] application:map[Organizations:<nil>] profiles:map[SampleInsecureSolo:map[Orderer:map[BatchTimeout:10s BatchSize:map[MaxMessageCount:10 AbsoluteMaxBytes:99 MB PreferredMaxBytes:512 KB] Kafka:map[Brokers:[127.0.0.1:9092]] Organizations:<nil> OrdererType:solo Addresses:[127.0.0.1:7050]] Application:map[Organizations:<nil>]] SampleInsecureKafka:map[Orderer:map[Addresses:[127.0.0.1:7050] BatchTimeout:10s BatchSize:map[AbsoluteMaxBytes:99 MB PreferredMaxBytes:512 KB MaxMessageCount:10] Kafka:map[Brokers:[127.0.0.1:9092]] Organizations:<nil> OrdererType:kafka] Application:map[Organizations:<nil>]] SampleSingleMSPSolo:map[Orderer:map[OrdererType:solo Addresses:[127.0.0.1:7050] BatchTimeout:10s BatchSize:map[MaxMessageCount:10 AbsoluteMaxBytes:99 MB PreferredMaxBytes:512 KB] Kafka:map[Brokers:[127.0.0.1:9092]] Organizations:[map[Name:SampleOrg ID:DEFAULT MSPDir:msp BCCSP:map[Default:SW SW:map[Hash:SHA3 Security:256 FileKeyStore:map[KeyStore:<nil>]]] AnchorPeers:[map[Host:127.0.0.1 Port:7051]]]]] Application:map[Organizations:[map[Name:SampleOrg ID:DEFAULT MSPDir:msp BCCSP:map[Default:SW SW:map[Hash:SHA3 Security:256 FileKeyStore:map[KeyStore:<nil>]]] AnchorPeers:[map[Port:7051 Host:127.0.0.1]]]]]]] organizations:[map[Name:SampleOrg ID:DEFAULT MSPDir:msp BCCSP:map[Default:SW SW:map[Hash:SHA3 Security:256 FileKeyStore:map[KeyStore:<nil>]]] AnchorPeers:[map[Host:127.0.0.1 Port:7051]]]]]
2017/03/01 21:24:24 Generating genesis block
2017/03/01 21:24:24 Writing genesis block
2017/03/01 21:24:24 Inspecting block
2017/03/01 21:24:24 Parsing genesis block
Config for channel: foo
{
"": {
"Values": {},
"Groups": {
"/Channel": {
"Values": {
"HashingAlgorithm": {
"Version": "0",
"ModPolicy": "",
"Value": {
"name": "SHA256"
}
},
"BlockDataHashingStructure": {
"Version": "0",
"ModPolicy": "",
"Value": {
"width": 4294967295
}
},
"OrdererAddresses": {
"Version": "0",
"ModPolicy": "",
"Value": {
"addresses": [
"127.0.0.1:7050"
]
}
}
},
"Groups": {
"/Channel/Orderer": {
"Values": {
"ChainCreationPolicyNames": {
"Version": "0",
"ModPolicy": "",
"Value": {
"names": [
"AcceptAllPolicy"
]
}
},
"ConsensusType": {
"Version": "0",
"ModPolicy": "",
"Value": {
"type": "solo"
}
},
"BatchSize": {
"Version": "0",
"ModPolicy": "",
"Value": {
"maxMessageCount": 10,
"absoluteMaxBytes": 103809024,
"preferredMaxBytes": 524288
}
},
"BatchTimeout": {
"Version": "0",
"ModPolicy": "",
"Value": {
"timeout": "10s"
}
},
"IngressPolicyNames": {
"Version": "0",
"ModPolicy": "",
"Value": {
"names": [
"AcceptAllPolicy"
]
}
},
"EgressPolicyNames": {
"Version": "0",
"ModPolicy": "",
"Value": {
"names": [
"AcceptAllPolicy"
]
}
}
},
"Groups": {}
},
"/Channel/Application": {
"Values": {},
"Groups": {}
}
}
}
}
}
}
'Blockchain > Hyperledger Fabric' 카테고리의 다른 글
- Total
- Today
- Yesterday
- 빅데이터 기초
- ubuntu
- 알고리즘
- 어서와 데이터는 처음이지
- Hyperledger Indy
- Private Data
- DOCs
- 코딜리티
- 블록체인
- 코테
- Blockchain
- 빅데이터 강의
- ambrosus
- 직딩잇템
- 암브로셔스
- Hyperledger Fabric
- 빅데이터
- Hyperledger Fabric v1.1
- 하이퍼레저 패브릭
- 코딩테스트
- 빅데이터 교육
- 블록 체인
- Hyperledger Fabric v1.2
- 문제풀이
- docker
- javascript
- 하이퍼레저 페브릭
- 하이퍼레저 인디
- codility
- 기초 of 기초 데이터 개념
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |