티스토리 뷰
zookeeper와 kafka를 windows에서 실행하는데 하나하나 properties를 추가해서 실행하는게 귀찮았다....
그래서 한번에 실행시키고픈 생각에 batch 파일을 만들었다 !
1. echo off 하기
2. 실행할 순서 작성하기
3. pause 넣기
4. 작성한 파일 확장자 bat로 설정하기
5. 실행하기
[ 작성한 batch 파일 ]
1. echo off 하기
echo는 프롬프트 창에 명령문이 표시되는 것을 의미한다. 따라서 echo를 off 하게 되면 프롬프트 창에 명령문이 출력되지 않는다.
※ 작성한 모든 명령문에 echo off 하기 위해서는 @ 기호를 이용하여 @echo off 를 넣는다. 그러면 작성한 모든 명령문에 대한 echo off 가 진행된다.
2. 실행할 순서 작성하기
zookeeper-server-start.bat 실행 명령문을 작성한다.
kafka-server-start.bat 실행 명령문을 작성한다.
여기서 중요한건! zookeeper를 실행하면 해당 프롬프트 창은 zookeeper 를 실행하는데 사용되므로 kafka를 실행하는 명령문을 수행하지 못한다.
따라서 cmd 창을 더 띄워서 kafka를 실행할 수 있도록 작성해야 한다.
- cmd 창 새로 띄우는 명령어
: 실행한 프롬프트 창 종료 시, 새 프롬프트 창도 같이 종료
start cmd /c [명령문 작성란]
: 실행한 프롬프트 창 종료와 무관하게 별도로 새 프롬프트 창 종료
start cmd /k [명령문 작성란]
3. pause 넣기
작성한 bat파일을 실행하게 되면, 프롬프트 창이 실행되었다가 바로 종료된다. 이를 방지하기 위해 pause를 마지막에 추가해준다.
4. 작성한 파일 확장자 bat로 설정하기
말 그대로 명령문을 작성한 텍스트 파일을 저장할 때, 뒤에 확장자를 .txt -> .bat로 변경하여 저장한다.
5. 실행하기
생성된 프롬프트 창에서 작성한 bat 파일을 실행한다.
추가 내용
zookeeper가 실행된 후 kafka가 실행되는 의존관계를 맺고 있는데, 동시에 실행되면서 한 번씩 kafka-server-start.bat가 자동 shutdown 되는 경우가 있다. 그래서 중간 명령을 delay 시키는 방법으로 zookeeper를 먼저 실행하도록 변경하였다.
지연시키는 명령어
timeout 지연시키고자 하는 초 입력
아래는 1초 지연시키도록 하였다.
'etc' 카테고리의 다른 글
[JAVA] 동작 파라미터화 코드 전달 (0) | 2022.01.17 |
---|---|
[wsl2] 파일 공유 ( Windows 10 <-> Ubuntu 20.04) (0) | 2022.01.17 |
[JUnit5] 단위테스트 - private method/field + exception 테스트 방법 (0) | 2021.12.22 |
[ junit ] 단위테스트 - @Mock, @InjectMocks (0) | 2021.12.22 |
[ 보안이슈 ] Apache Log4j 취약점 및 해결 방법 (0) | 2021.12.13 |