목록2022/08 (4)
devops
IBFT(이스탄불 비잔티움 결함 허용) 높은 보안과 투명성을 유지하면서, 공개를 통한 합의 신뢰모델을 채택하고 있다. 이는 합의 달성이 가능한 소수의 private 노드와 블록 생성 결과에 접근과 검증이 가능한 노드로 구성된다. 매 라운드마다 Proposer를 뽑고, 나머지 노드는 Validator가 되어 검증을 하게된다. x된 Validator3은 검증자로서 제대로 작동을 못하는 상태로 가정한다. (악의적인 공격도 포함) Proposer는 pre-prepare 단계에서 블록을 만들어서 다른 노드에 제안을 하게된다. prepare 단계에서 validator 1, 2은 자신을 제외한 다른 노드들에게 잘받았다는 메시지를 다시 보낸다. 단, Validator 3은 보내지 못한다. 마지막 commit 단계에서 ..
아래와 같이 외부에서 mysql 서버에 접속하려고 하면 connection refused 에러가 뜬다. 난 pymysql 모듈로 어플리케이션과 mysql을 연결하려는 작업을 하려는 중이었고, mysql은 aws 클라우드에 설치되어 있다. 간략히 크게 2가지 원인으로 볼 수 있다. 1. AWS 보안그룹의 인바운드 설정 EC2의 보안그룹에서 mysql의 기본 port인 3306 인바운드를 열어준다. 2. mysqld.cnf 외부 허용 설정 mysqld.cnf 파일에서 bind-address 를 수정하여 외부 접속을 허용한다. 먼저, 외부 접속이 허용되는지 확인하려면 sudo netstat -ntlp | grep mysqld 명령어를 사용하여 확인한다.(수정 전) mysql 5.7 버전 이상인 경우, /etc..
Kinesis는 데이터를 실시간으로 수집하고 ETL과 전송까지 담당하는 AWS의 서비스다. Data Stream을 실시간으로 수집하는 Kinesis Data Stream은 레코드를 직접 수집하는 것도 가능하지만, API Gateway가 프록시하는 것도 가능하다. 단순히 PutRecord하는 것 뿐만아니라, API Gateway에서 요청에따라 Stream 생성과 삭제, ListRecord도 가능하다. 콘솔 상에서 설정하는 방법과 Terraform에서 어떻게 설정하는지도 정리해보려고 한다. Kinesis 데이터 스트림의 API Gateway 프록시를 생성해보자 1) REST API 생성 2) streams 리소스 생성후, 하위 리소스로 다음과 같이 Stream-name 리소스 생성 3) PutRecord를 ..
https://exerror.com/importerror-cannot-import-name-docevents-from-botocore-docs-bcdoc/ [Solved] ImportError: cannot import name 'docevents' from 'botocore.docs.bcdoc' - Exception Error To Solve ImportError: cannot import name 'docevents' from 'botocore.docs.bcdoc' Error You need to reinstall awscli. First of all, update your exerror.com 위 링크의 해결책들을 수행하면됨. 주로 aws-cli와 pip를 업데이트 문제인 것으로 보임.