대구여행 1일차 START
​​​​​​​

첫째 날 점심은 닭곱새(with 막걸리)

친절한 사장님과 깨끗한 화장실이 인상깊었던 곳~

배부르니 걸으러 김광석 길로 이동​


​LP카페가 있어서 노래도 듣고 시원한 아이스티 한모금

​이제 앞산전망대로 이동

케이블카 타러가는 것 만으로도 힘들어 우유빙수 한모금

​해가 지기를 기다리며 사진 찰칵찰칵

오오 해가 진다​

​야경 

너무 멋있잔아..


​대구오면 막창은 먹어줘야지

염통, 막창, 곱창 반바가지

너무 맛있!


대구여행 1일차 END

'* 소소한 일상 > 여행일기' 카테고리의 다른 글

대구 20190831-20190901 :2일차  (0) 2019.10.15
보라카이 20180201-20180204  (0) 2018.05.15
제주도 20170603-20170606  (0) 2018.05.15



코스모스의 계절
대구 에서 😁

'* 소소한 일상 > 오늘의 한 컷' 카테고리의 다른 글

20.03.31 반짝반짝  (0) 2020.03.31
19.10.24 이른아침  (0) 2019.10.24
19.10.19 방울토마토  (0) 2019.10.19

● 카프카매니저 설치

 - 적당한 곳에 다운로드 후, 압축 해제(/opt)

wget https://github.com/yahoo/kafka-manager/archive/kafka-manager-2.0.0.2.tar.gz

tar -zxvf kafka-manager-2.0.0.2.tar.gzcd kafka-manager-2.0.0.2/

 - sbt이용하여 빌드 진행

./sbt clean dist

 - 빌드가 완료되면 zip으로 압축된 output파일 생성

unzip -d /opt/kafka-manager-2.0.0.2.zip

ln -s kafka-manager-2.0.0.2/ kafka-manager

 - 주키퍼 호스트 설정(kafka-manager.zkhosts)

vi conf/application.conf

kafka-manager.zkhosts="127.0.0.1:2181"

 - 실행

./bin/kafka-manager

 

카프카 매니저 접속 및 연동

 -  http://localhost:9000/ 접속

 - 클러스터 생성

 

 

'* KAFKA > KAFKA 설치' 카테고리의 다른 글

KAFKA 테스트  (0) 2019.07.22
KAFKA 설치  (0) 2019.07.22
KAFKA(카프카) & ZOOKEEPER(주키퍼)  (0) 2019.07.22

 주키퍼와 카프카 실행

 테스트

 - 주기퍼와 카프카가 정상적으로 포트가 오픈 되어 있는지 확인

### 주키퍼 포트확인

netstat –an | grep 2181

### 카프카 포트확인

Netstat -an | grep 9092

 - 포트가 정상적으로 LISTEN 상태이면 주기퍼 지노드를 이용해서 카프카 정보를 확인

./zookeeper/bin/zkCli.sh

 - 주키퍼로 접속한 다음  ls / 를 치면 기본 노드와 추가한 노드 확인

[incon-kafka, zookeeper]

 - 카프카 클러스터 노드들이 잘 연결되었는지 확인

ls /incon-kafka/brokers/ids

##출력결과

[1, 2, 3]

 - 잘되었으면 quit 로 종료

 

 - 토픽 생성

 

kafka-topics.sh --zookeeper kafka1:2181,kafka2:2181,kafka3:2181/incon-kafka --replication-factor 3 --partitions 1 --topic new-topic --create

 - 토픽 LIST 확인(둘 중 하나실행)

bin/kafka-topics.sh --list --zookeeper localhost:2181

bin/kafka-topics.sh --list --bootstrap-server localhost:9092

 - 토픽 환경설정 확인

bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test

 - 프로듀서

kafka-console-producer.sh --broker-list kafka1:9092,kafka2:9092,kafka3:9092 --topic new-topic

 - 엔터를 치고 기다려면 > 프롬포트가 깜빡이면 메시지 입력

## 입력

> Hello Kafka1

> Hello Kafka2

 - 컨슈머

kafka-console-consumer.sh --bootstrap-server kafka1:9092,kafka2:9092,kafka3:9092 --topic new-topic --from-beginning

 - 확인

## 출력

> Hello Kafka1

> Hello Kafka2

 

* PATH 설정

  -/home 디렉토리의 vi .bash_profile 에 추가

:/opt/kafka/bin:/opt/zookeeper/bin

이후 

주키퍼 실행 : zkServer.sh start

카프카 실행 : kafka-start.sh

'* KAFKA > KAFKA 설치' 카테고리의 다른 글

KAFKA Manager 설치  (0) 2019.07.22
KAFKA 설치  (0) 2019.07.22
KAFKA(카프카) & ZOOKEEPER(주키퍼)  (0) 2019.07.22

● 준비 환경

 - Virtualbox를 통해 Centos7에 설치

 - 기본적으로 클러스트를 구성하기 위해서 3대 설치

 - 보통 주키퍼3, 카프카3대로 별도로 구성하는데 여기서는 그냥 테스트용도이므로 가상머신 3대에 주키퍼랑 카프카를 같이 설치 진행

 - Centos7OpenJDK8 혹은 Oracle JDK8 Java8 버전 설치

 

● 설치 전 작업(ROOT)

 - 각 서버의 호스트 명 지정(필수조건은 아닌데, 설정해두면 편리)

hostnamectl set-hostname kafka1(호스트명)

hostnamectl set-hostname kafka2

hostnamectl set-hostname kafka3

자기 자신은 0.0.0.0 으로 호스트명과 세팅하고 다른 서버는 각각 아이피를 등록

vi /etc/hosts

0.0.0.0 kafka1

10.0.2.102 kafka2

10.0.2.103 kafka3

 - 주키퍼와 카프카를 위한 방화벽 설정

## 주키퍼 포트

firewall-cmd --permanent --zone=public --add-port=2181/tcp

firewall-cmd --permanent --zone=public --add-port=2888/tcp

firewall-cmd --permanent --zone=public --add-port=3888/tcp

## 카프카 포트

firewall-cmd --permanent --zone=public --add-port=9092/tcp

## 방화벽 재시작

firewall-cmd --reload

 

● 주키퍼(ZOOKEEPER) 설치

 - 적당한 곳에 Zookeeper를 다운로드 후, 압축 해제(/opt)

wget http://apache.tt.co.kr/zookeeper/stable/apache-zookeeper-3.5.5-bin.tar.gz

tar zxf apache-zookeeper-3.5.5-bin.tar.gz

ln -s apache-zookeeper-3.5.5-bin zookeeper

 - 각각의 서버에 주기퍼 노드를 구분하기 위한 id필요 (루트 계정일 경우에는 mkdir -p /data)

#(1: kafka1, 2: kafka2, 3: kafka3)

echo 1 > /tmp/zookeeper/myid

 - 설정파일

 - zookeeper/conf 안에 zoo_sample.cfg가 있으니 zoo.cfg로 복사해서 사용

cd zookeeper/conf

cp zoo_sample.cfg zoo.cfg

vi zoo.cfg

 - 아래처럼 주석을 풀고 추가작성을 하도록 한다. 3개의 서버에 모두 같은 설정

# The number of milliseconds of each tick

tickTime=2000

# The number of ticks that the initial

# synchronization phase can take

initLimit=10

# The number of ticks that can pass between

# sending a request and getting an acknowledgement

syncLimit=5

# the directory where the snapshot is stored.

# do not use /tmp for storage, /tmp here is just

# example sakes.

dataDir=/ tmp/zookeeper

# the port at which the clients will connect

clientPort=2181

# the maximum number of client connections.

# increase this if you need to handle more clients

maxClientCnxns=60

#

# Be sure to read the maintenance section of the

# administrator guide before turning on autopurge.

#

# http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance

#

# The number of snapshots to retain in dataDir

#autopurge.snapRetainCount=3

# Purge task interval in hours

# Set to "0" to disable auto purge feature

#autopurge.purgeInterval=1

server.1=kafka1:2888:3888

server.2=kafka2:2888:3888

server.3=kafka3:2888:3888

● 주키퍼 실행

 - 실행

./zookeeper/bin/zkServer.sh start

 - 정상 START

ZooKeeper JMX enabled by default

Using config: /opt/zookeeper/bin/../conf/zoo.cfg

Starting zookeeper ... STARTED

 - 서비스등록을 위해 종료

./zookeeper/bin/zkServer.sh stop

 

 설정파일

vi /etc/systemd/system/zookeeper.service

[Unit]

Description=zookeeper

After=network.target

[Service]

Type=forking

User=incon

Group=incon

SyslogIdentifier=zookeeper

WorkingDirectory=/tmp/zookeeper

Restart=always

RestartSec=0s

ExecStart=/opt/zookeeper/bin/zkServer.sh start

ExecStop=/opt/zookeeper/bin/zkServer.sh stop

[Install]

WantedBy=multi-user.target

 - 시스템부팅 시 자동실행 설정

# 서비스 데몬 재시작

systemctl daemon-reload

# 주키퍼 실행 (종료는 stop, 재시작은 restart)

systemctl start zookeeper.service

# 실행상태 확인

systemctl status zookeeper.service

# 시스템 부팅할 때 자동실행 설정

systemctl enable zookeeper.service

 

● 카프카(KAFKA) 설치

 - 적당한 곳에 kafka를 다운로드 후, 압축 해제(/opt)

wget http://mirror.apache-kr.org/kafka/2.2.0/kafka_2.11-2.2.0.tgz

tar xvf kafka_2.11-2.2.0.tgz

ln –s kafka_2.11-2.2.0.tgz kafka

 - /opt/data 디렉토리 생성(카프카에 메시지가 저장되는 장소)

mkdir data

 - 카프카도 별도서버에 설치하면 /myid 파일을 만들고 그 안에 숫자를 넣으면 되는데 여기선 주키퍼랑 같이 쓰니까 로 사용

 - 카프카 설정 파일 수정

vi kafka/config/server.properties

############################# Server Basics ############################

#서버 /myid에 값으로 각각 세팅

broker.id=1

############################# Logs Basics #############################

## 카프카 메시지저장분산디렉토리

log.dirs=/opt/data

############################# Zookeeper #############################

## 주기퍼 연결설정

## 서버1호스트명:서버1포트,서버2호스트명:서버2포트,서버3호스트명:서버2포트/주기퍼노드명

zookeeper.connect=kafka1:2181,kafka2:2181,kafka3:2181/incon-kafka

 - zookeeper.connect 에서 마지막 /incon-kafka주기퍼 노드명이다. 작성하지 않으면 주기퍼 루트 노드에 저장된다. 그렇게 되면 관리하기가 어려우므로 이렇게 별도로 노드명을 기재

 카프카 실행

 - 실행 (실행 전에 주키퍼 먼저 실행)

bin/kafka-server-start.sh config/server.properties &

(& 를 붙일 시 백그라운드에서 실행)

 - 정상 START

....중략....

[KafkaServer id=1] started (kafka.server.KafkaServer)

* 주키퍼 및 카프카 실행확인 : jps

'* KAFKA > KAFKA 설치' 카테고리의 다른 글

KAFKA Manager 설치  (0) 2019.07.22
KAFKA 테스트  (0) 2019.07.22
KAFKA(카프카) & ZOOKEEPER(주키퍼)  (0) 2019.07.22

+ Recent posts