목록2023/01 (8)
devops
테세라(Tessera) 테세라는 프라이빗 트랜잭션을 암호화, 복호화하는 자바 프로그램으로, 무상태성이며 JDBC 클라이언트와 연결될 수 있다. 테세라는 아래 4개의 서비스로 구성될 수 있다. Tessera Peer to Peer Tessera Third Party Tessera Admin Tessera Quorum to Tessera Tessera Peer to Peer 이 서비스는 Tessera node간 통신을 위해 사용된다. 이 서비스를 활성화하기 위해서 tessera config 파일에 아래 section을 넣어야 한다. CommunicationType의 REST와 app의 P2P는 P2P 서비스를 위한 설정이다. auto-discovery를 true로 설정하면 하나의 노드만 연결해도 다른 노드들..
쿼럼(quorum)은 JP모건에서 높은 확장성 구현을 위해 이더리움을 하드포크하여 개발한 엔터프라이즈 블록체인이다. 각 노드는 전체 네트워크 합의를 기다리지 않고, 신뢰할 수 있는 특정 노드만이 합의하여 확장성을 크게 개선할 수 있다. 오픈소스기 때문에 많은 기업과 서비스들이 쿼럼을 활용해서 프라이빗 체인을 운용하고 테스트 중에 있는 것으로 보인다.쿼럼같은 엔터프라이즈 체인은 프라이버시가 중요한데, 이를 Tessera 라는 Private Transaction Manager가 역할을 해주고 있다. Tessera 테세라는 Consensys가 개발하고 있으며 Goquorum과 Hyperledger Besu에 사용되는 트랜잭션 매니저다. 주요 역할은 아래와 같다. 다른 트랜잭션 매니저와 함께 P2P 네트워크 구..
위메이드의 메인넷, 위믹스 3.0를 올려보려고 한다. requirements - Golang $ git clone https://github.com/wemixarchive/go-wemix.git $ cd go-wemix && make 빌드가 완료되면 아래와 gwemix.tar.gz 파일이 build 디렉토리에 생성된다. $ tar xvfz gwemix.tar.gz 압축을 풀면 아래와 같은 파일들이 생성되는데, gwemix.sh는 기본 디렉토리 경로가 /opt/ 기 때문에 /opt/wemix 디렉토리를 생성하고 아래 파일들을 옮긴다. bin/gwemix bin/gwemix.sh bin/solc.sh bin/logrot conf/WemixGovernance.js conf/genesis-template.jso..
Cosmos 체인의 아키텍처를 이해하기 위해선 상태머신과 텐더민트 그리고 인터페이스인 ABCI를 알아야한다. 하나씩 짚어보자 State Machine 블록체인은 'replicated deterministic state machine'이라고 부른다. 즉, 복제되는 결정론적인 상태머신이다. 상태머신은 컴퓨터 사이언스의 개념으로 머신이 다양한 상태를 가질 수 있으나, 특정 시점엔 하나의 상태만 가진다. 여기서 현재 시스템의 상태를 말하는 'state'와 상태를 변화시키는 트리거 역할을 하는 'transaction'이 있다. +--------+ +--------+ | | | | | S +---------------->+ S' | | | apply(T) | | +--------+ +--------+ 위를 보면 상..
Application Specific blockchain을 앱체인(App-chain)이라고 부르기도 한다. 즉 특정 어플리케이션만을 위해서 구축된 블록체인이다. 그래서 어플리케이션의 최적화를 위해서 코어부터 커스터마이징을 통해 원하는 체인 스펙을 설정한다. Cosmos SDK는 이런 앱체인에 특화된 프레임워크로 많은 블록체인 프로젝트에서 사용하고 있다. 아마 우리가 들어본 웬만한 프로젝트는 Cosmos SDK를 썼다고봐도 무방하다. 아래 레포는 cosmos sdk 기반의 체인들 리스트다. akash, cronos, evmos, ehos, kava, osmosis, terra, terra2 등 아주 유명한 프로젝트들이 cosmos sdk를 통해서 탄생했다. https://github.com/cosmos/c..
Cosmos SDK Cosmos는 흔히아는 ATOM 코인의 블록체인이다. 생각보다 높은 시총을 유지하고 있고, 매스컴에서도 많이 회자되는 체인인데, 그 이유는 이 SDK를 통해 생성된 체인들이 모두 연결되는 Cosmos IBC 덕분이라고 생각한다. 이 Cosmos SDK는 PoS 기반의 퍼블릭 블록체인을 쉽게 구축할 수 있는 오픈소스 프레임 워크로, 구축된 체인을 Application-specific blockchain이라 부르기도 한다. Cosmos SDK의 목표는 개발자가 쉽게 커스터마이징한 블록체인을 구축하고 Cosmos 기반 체인들과 연결하는 것에 있다. 최근들어 모듈식 블록체인이 뜨고 있는데, Cosmos SDK 또한 모듈들의 조합으로 구성된다. 그래서 누구나 모듈을 만들 수 있고, 이미 만들어..
리눅스의 기본 에디터인 vim을 다루기 위해선 단축키를 숙지하는 것이 아주 중요하다. 워낙 많아서 다 외우는 것은 거의 불가능하고, 주로 사용할 단축키만 간단히 정리해보려 한다.기본 이동h, j, k, l : 상하 좌우 이동gg : 줄 맨 위로 이동shift + g : 줄 맨 아래로 이동단어, 문장 이동b : 단어의 시작위치로 이동(backward)e : 단어의 마지막 위치로 이동(forward)^ : 문장 맨 앞으로 이동$ : 문장 맨 뒤로 이동줄번호 이동[: + set number] : 줄번호 설정[esc] + [:] + [줄번호] : 원하는 줄번호로 이동편집i : 현재 커서가 위치한 문자 앞에 insertdd : 커서가 위치한 줄 삭제dw : 커서의 위치부터 단어의 마지막까지 삭제x : 커서가 위치..
Application ## 먼저 엔드포인트 확인 $ curl endpoint ## 서비스 상태 확인 (Selector와 Endpoint 체크) $ kubectl describe service web-service ## 파드 확인 $ kubectl get pod $ kubectl describe pod web $ kubectl logs web -f --previous Control Plane ## Node & Pod 확인 $ kubectl get nodes $ kubectl get pods ## Controlplane Pod & Service 확인 $ kubectl get pods -n kube-system ## Controlplane Service 확인 $ service kube-apiserver sta..