Old Posts226 [Linux] 리눅스 서버 재부팅, 셧다운 시간 확인하기 리눅스 서버가 재부팅되거나 셧다운된 시간을 사후에 조회하고 싶은 경우 last 명령어와 who 명령어를 이용할 수 있다. last reboot 명령 $ last reboot reboot system boot 3.10.0-431.el6.i Sun Nov 12 13:15 - 13:51 (00:36) reboot system boot 3.10.0-431.el6.i Sun Nov 12 10:17 - 11:58 (01:40) reboot system boot 3.10.0-431.el6.i Sat Nov 11 14:54 - 16:17 (01:23) last reboot 명령어는 마지막으로 시스템을 재부팅한 시간이 언제인지 최신순으로 정렬해서 출력해준다. 제일 위에 출력되는 것이 가장 최근에 재부팅한 시간이다. 비슷.. 2021. 11. 27. [Linux] 특정 포트를 사용하는 프로세스 확인 리눅스에서 데몬을 띄우다보면 "BindException : Address already in used : bind" 같은 예외를 발생시키면서 구동되지 않는 경우가 있다. 데몬이 사용하려고하는 포트를 이미 시스템에서 다른 프로세스가 사용하고 있기 때문에 바인딩을 할 수 없어 발생하는 예외다. 대부분 포트 번호를 랜덤으로 사용하는 프로세스가 먼저 포트를 선점해서 발생하는 것이 원인이므로 그 프로세스를 찾아서 재시작해주면 해결된다. 현재 로컬서버에서 열림 포트를 확인하기 위해서 netstat 명령을 사용하면 된다. $ sudo netstat -tnlp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Addr.. 2021. 11. 20. [Maven] 메이븐 오프라인 모드 메이븐에는 '오프라인 모드(Offline mode)'라는 것이 있다. 금융망 같이 보안이 철저해야하는 곳은 오픈되어 있는 인터넷을 사용할 수 없는 경우가 많다. 프로젝트를 진행하면서 필요한 라이브러리를 빌드하는 그때그때 인터넷을 통해 다운로드하는게 제일 편하지만 인터넷을 사용할 수 없는 환경에서는 불가능하다. 이럴 때를 위해서 메이븐은 오프라인 모드라는 것을 제공한다. 필요한 라이브러리들을 미리 로컬에 다운로드해뒀다가 빌드할 때 오프라인 모드를 켜면 인터넷이 아닌 로컬에 있는 저장소에서 라이브러리들을 찾아쓰게 된다. 메이븐 오프라인 모드 준비 메이븐의 오프라인 모드를 사용하기 전에 필요한 라이브러리들을 미리 다운로드해야한다. $ mvn dependency:go-offline 메이븐의 'go-offline.. 2021. 11. 16. [Linux] curl 명령어 사용법 및 옵션 정리 - http/https 관련 curl은 커맨드 라인용 데이터 전송 도구다. HTTP, HTTPS, FTP, LDAP, SCP, TELNET, SMTP, POP3 등 주요 프로토콜을 지원하고 유닉스와 리눅스, 윈도우 등 주요 운영체제에서 기본 설치되어 사용되고 있다. REST API를 제공하는 서비스와 연계되는 클라이언트를 개발할 때 서버의 동작을 터미널에서 확인해볼 수 있다. cURL 주요 옵션 (http/https 관련) curl 명령의 사용법은 다음과 같다. $ curl [options...] 특정 URL을 대상으로 동작하며 URL 앞에는 curl의 옵션을 사용하면 된다. curl 명령의 옵션은 GNU getopt를 사용하고 있다. curl 명령의 옵션은 하이픈 하나로 시작하는 short 형식과 하이픈 두개로 시작하는 long .. 2021. 11. 15. [Zookeeper] 4 letter words 명령어 사용법 주키퍼는 주키퍼 클러스터와 관련된 정보들을 조회할 수 있도록 몇 가지 유용한 명령어들을 제공한다. 이 명령어들은 알파벳 4글자로 구성되어 있어 '4 letter words' 명령어라고 부른다. 4 letter words 명령어 사용법 주키퍼의 '4 letter word' 명령어는 telnet이나 nc 명령을 주키퍼의 클라이언트 포트로 전송해서 사용할 수 있다. $ echo srvr | nc localhost 2181 Zookeeper version: 3.7.0-e3704b390a6697bfdf4b0bef79e3da7a4f6bac4b, built on 2021-03-17 09:46 UTC Latency min/avg/max: 0/0.0/0 Received: 1 Sent: 0 Connections: 1 Ou.. 2021. 10. 31. [Zookeeper] 도커로 주키퍼 띄우기 테스트 용으로 잠깐 주키퍼가 필요할 때 도커로 띄워보자. docker image 도커에서 사용할 수 있는 주키퍼 이미지를 찾아보자. $ docker search zookeeper NAME DESCRIPTION STARS OFFICIAL AUTOMATED zookeeper Apache ZooKeeper is an open-source server wh… 1154 [OK] jplock/zookeeper Builds a docker image for Zookeeper version … 165 [OK] wurstmeister/zookeeper 157 [OK] mesoscloud/zookeeper ZooKeeper 73 [OK] digitalwonderland/zookeeper Latest Zookeeper - .. 2021. 10. 30. [Kafka] 토픽의 Replication Factor 변경 카프카 토픽에 전송된 메시지는 가용성을 위해서 여러 브로커에 복제되어 저장된다. 브로커 노드에 장애가 생긴 상황에서도 메시지 서비스가 가능하도록 하기 위함이다. 카프카는 이렇게 복제된 메시지를 Replica라고 부르며 몇 개의 Replica로 복제 할 것인지를 Replication Factor(RF)라고 한다. 수동으로 토픽을 생성할 때 옵션으로 RF 값을 명시할 수 있다. $ kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 2 --partitions 10 --topic MyTopic --replication-factor 옵션으로 몇 개의 Replica로 저장할지 지정할 수 있다. 만약 auto.create.t.. 2021. 10. 21. [Kafka] 카프카 자주 사용하는 명령어 카프카 클러스터를 운영하다보면 몇 가지 자주 사용하는 명령어들이 있다. 대부분 kafka-topic.sh 같은 스크립트를 이용한 쉘 명령어다. 토픽 생성 카프카 토픽은 kafka-topics.sh 스크립트를 이용해서 생성할 수 있다. $ kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 2 --partitions 10 --topic MyTopic 사용된 옵션은 다음과 같다. --create : 토픽 생성을 하겠다 --bootstrap-server : 토픽 생성을 위해 붙을 브로커 주소 --replication-facotr : 리플리케이션 팩터, 데이터를 몇 카피나 저장할지 --partitions : 토픽의 파티션.. 2021. 10. 6. [Java] Optional 사용법 및 예제 자바 8부터 Optional이라는 클래스가 지원되기 시작했다. Optional 클래스란 어떤 목적으로 사용되는지 알아보자. Java NPE 예방 자바 프로그램 코드를 작성하다보면 null 값에 대해 고려해야하는 경우가 많다. null 값을 제대로 처리하지 않으면 NPE(NullPointerException)을 만나게된다. 안정적인 실행을 위해 NPE가 발생하지 않도록 중간중간 null 체크를 해줘야하는데, 이게 코드를 여간 더럽히는게 아니다. 예를 들어보자. List items = getItems(); System.out.println(items.size()); getItems() 메소드를 통해 문자열 리스트 객체를 얻어온 다음 엘리먼트 개수를 출력하는 간단한 코드다. getItems() 메소드가 nul.. 2021. 8. 19. 이전 1 ··· 9 10 11 12 13 14 15 ··· 26 다음