[IT] 공부하는 개발자/Open Source
-
[Kafka] 터미널에서 카프카 토픽 생성, 발행, 컨슘하기[IT] 공부하는 개발자/Open Source 2020. 5. 7. 20:45
목차 1. 카프카 설치 2. 토픽 생성 3. 프로듀서 실행 / 메시지 발행 4. 컨슈머 실행 / 메시지 컨슘 1. 카프카 설치 준비물 // Git, Docker 가 PC에 설치되어 있어야 한다. 먼저 깃으로 kafaka-docker를 설치한다. $ git clone https://github.com/wurstmeister/kafka-docker 설치 후, config 파일을 연다. 로컬 PC를 카프카 브로커로 사용할 것이므로 environment 하위의 KAFKA_ADVERTISED_HOST_NAME 환경변수의 값을 아래처럼 바꾸어 주고, 토픽은 지운다. (토픽은 다음 단계에서 직접 생성할 것이다.) vi kafka-docker/docker-compose-single-broker.yml docker로 k..
-
[Kafka] 카프카란? 개념과 디자인[IT] 공부하는 개발자/Open Source 2020. 4. 11. 11:16
차례 카프카란 카프카의 특징 카프카 데이터 모델 카프카 리플리케이션 카프카란 카프카는 서비스간에 메시지 통신을 제공하는, 메시지 큐 서비스이다. 실 서비스에서 언제 메시지 통신이 요구될까? 하나의 프로젝트로 기능하던 것을 여러개의 프로젝트로 쪼개서 배치되어있는 상황을 생각해보자. 이 때 각각의 도메인들은 내부에서 동적으로 요청을 처리한 후 다른 도메인에 그 결과를 전달해주어야 할 상황들이 있을 것이다. 즉 카프카와 같은 메시지 큐는 마이크로 서비스 아키텍쳐(MSA)를 구현하는 아키텍쳐와 잘 어울린다. 카프카의 특징 분산 시스템 같은 역할을 하는 여러 대의 서버로 분산 처리 기능을 제공한다. 분산 시스템을 구현하면 하나의 서버에 장애가 발생해도 다른 서버가 장애 서버의 역할을 대신함으로써 장애상황에 대응할..
-
[엘라스틱서치] ElasticSearch & 키바나 시큐리티 기능 구현[IT] 공부하는 개발자/Open Source 2019. 9. 8. 01:48
개요 엘라스틱서치는 6.8 버전부터 시큐리티 기능을 지원한다. 그 전 버전까지는 별도의 인증과정 없이, 리퀘스트를 보내면 바로 리스폰스가 돌아왔는데, 시큐리티 기능을 활성화시키면 리퀘스트에 아이디와 패스워드를 파라미터로 담아 넘겨주어야만 리스폰스가 돌아온다. (혹은 토큰) 엘라스틱서치 시큐리티 인증 설정 1) ElasticSearch 가 설치된 경로 하위의 config 폴더에서 yml 파일을 열고, xpack.security.enabled: true 를 넣어준다. $ vi config/elasticsearch.yml #---------------------------# cluster.name: "docker-cluster" network.host: 0.0.0.0 xpack.security.enabled:..
-
[도커 + 엘라스틱서치] Docker로 ElasticSearch ELK 스택 디플로이[IT] 공부하는 개발자/Open Source 2019. 8. 26. 00:54
도커를 사용하는 이유 다른 OS 플랫폼을 사용하는 유저들도 동일한 로컬 개발환경을 구성할 수 있다. 쉽고 간단한 버전 매니지먼트가 가능하다. 도커로 ELK 스택 디플로이 도커(Docker)를 이용하여 엘라스틱서치 + 키바나 + 로그스태쉬, 일명 ELK스택을 기동한다. 오리지널 빌드 별도 플러그인이나 config 수정이 필요하지 않으면 깃허브에서 공식 이미지를 그대로 pull해와서 그대로 빌드할수 있다. 키바나, 로그스태쉬 이미지를 pull한다. 버전명은 물론 편의에 따라 수정할 수 있다. # docker pull docker.elastic.co/elasticsearch/elasticsearch:7.3.1 $ docker pull docker.elastic.co/kibana/kibana:7.3.1 $ do..
-
[ElasticSearch 엘라스틱서치] 멀티 필드 맵핑, 정렬과 검색을 동시에[IT] 공부하는 개발자/Open Source 2019. 8. 21. 00:45
엘라스틱서치, Mapping? 엘라스틱서치 안에서 맵핑이란, 사용될 필드들의 타입(자료형)을 사전에 정의해주는 것이다. 관계형 데이터베이스로 비유하자면 스키마 정의와 같다. 텍스트 타입 이외에도 다양한 숫자 타입, 날짜 타입, 위치 데이터 등으로 정의할 수 있으며 디테일한 커스텀 설정이 가능하다. 이 포스팅은 맵핑안에서 "fields" 파라미터를 이용하여, 한 필드가 다양한 특성을 동시에 가질 수 있도록 커스텀 맵핑하는 법에 대해 설명한다. 1. 맵핑 기본문법 SYNTAX # MAPPING PUT /my-index { "mappings": { "properties": { "age": { "type": "integer" }, "email": { "type": "keyword" }, "name": { "ty..
-
NOOK Glowlight plus 누크뿔 크레마 설치하기 [2019년판] (윈도우/맥OS)[IT] 공부하는 개발자/Open Source 2019. 8. 12. 10:28
누크뿔 루팅 매뉴얼 - MAC OS & 윈도우 유저 모두 적용 가능 - 크레마 최신 APK 포함 (누크쁠에서 사용가능한 가장 최신 버전이다. 버전에 따라 재생이 불가한 책들도 있으므로 최신판을 사용하는 게 좋다. 로그인 문제가 발생시 보유기계수 문제일 가능성이 높으므로 체크할 것.) - 교보문고 공공도서관 APK 포함 - 최신형 USB 케이블을 사용할 것. NOOK 기계는 구형 케이블을 인식하지 못한다. 1. NOOK 디바이스 USB 디버깅 모드 설정 1.1 반스 앤 노블 서점에 로그인 한 후, 본인의 닉네임을 클릭하면 여러 메뉴가 나오는데, SETTINGS > ABOUT 을 선택한다. 1.2 개발자 모드로 들어가기 위해서, 상단의 누크 로고를 세번 정도 빠르게 터치한다. 1.3 그러면 시크릿 개발자 모..