본문 바로가기
반응형

분류 전체보기319

[Java] 개발환경에서 원격 디버깅 사용하기 - Intelli J, Eclipse Remote Debugger 자바를 이용해 프로그래밍을 할 때 통합 개발환경이 제공하는 디버거(Debugger)는 매우 편리합니다. 특정 코드의 수행을 단계별(Step-by-step)로 확인할 수 있기 때문입니다. 자바 프로그램이 실행되는 JVM은 원격 디버깅(Remote Debugging) 기능을 제공합니다. IntellI J나 Eclipse 같은 통합 개발환경에서 원격 서버에 설치되어 있는 자바 프로그램을 디버깅 할 수 있습니다. 이번 포스트에서는 도커 환경에 자바 프로그램을 구동시켜놓고 통합개발환경(Intelli J, Eclipse)에서 원격으로 디버깅해보겠습니다. 자바 프로그램 다음 자바 프로그램을 작성한 다음 도커에 구동시킨 후 원격 디버깅을 해보겠습니다. public class Test { public static voi.. 2020. 3. 13.
[Linux] 네트워크 도구 ping, ifconfig 설치 도커를 이용해 리눅스 환경을 세팅할 때 네트워크 관련된 유틸리티인 `ping` 명령이나 `ifconfig` 명령을 자주 사용하게 됩니다. 우분투나 CentOS 기본 이미지에는 이런 네트워크 유틸리티들이 설치되어 있지 않은 경우가 있는데요. 이 명령을 쓰기 위해서는 손수 설치해야 합니다. 패키지 관리툴 업데이트 CentOS sudo yum updateUbuntu sudo apt-get updateping 설치 CentOS sudo yum install iputilsUbuntu sudo apt-get install iputils-pingifconfig 설치 CentOS sudo yum install net-toolsUbnutu sudo apt-get install net-tools이제 ping과 ifconf.. 2020. 3. 13.
[Java] OkHttp id-password를 사용한 기본 인증 예제 (Basic Authentication Example) REST API 서버로 요청을 보낼 때 사용자 인증(Authentication)이 요구되는 경우가 있습니다. 가장 기본적인 인증(Basic Authentication)은 아이디와 비밀번호를 통한 인증입니다. 리눅스의 유틸리티 툴인 curl을 이용해 REST 요청을 보내는 경우 -u 옵션으로 아이디와 비밀번호를 입력할 수 있습니다. curl -u ID:PassWord {...}이렇게 기본인증(Basic Authencation)을 요구하는 REST API 서버에 OkHttp 클라이언트를 사용해서 요청을 전송하는 예제를 살펴보겠습니다. OkHttp Basic Authenticatior OkHttp 클라이언트를 사용할 때, OkHttp3.Authenticator라는 인터페이스를 구현한 Authenticator를.. 2020. 3. 13.
[Docker] docker run -p 옵션과 Dockerfile의 EXPOSE 차이점 도커의 네트워크 관련된 설정 중에 포트와 관련된 설정이 있습니다. Docker를 실행할 때 -p 옵션으로 포트 포워딩을 해주는 것과 Dockerfile에서 EXPOSE를 통해 포트를 노출시키는 것이 어떻게 다른지 정리해보겠습니다. docker run -p 명령 도커 컨테이너를 실행 시킬 때, '-p' 옵션으로 호스트 운영체제와 컨테이너 환경의 포트를 매핑 시킬 수 있습니다. 예를 들어 docker run -it -p 5005:5005 centos이렇게 컨테이너를 새로 만들면, 호스트 운영체제의 5005번 포트와 컨테이너의 5005 포트가 매핑됩니다. 호스트 운영체제의 5005 포트로 전달된 정보들이 도커를 통해 컨테이너의 5005 포트로 포워딩된다는 의미입니다. 도커를 실행할 때 -p 옵션.. 2020. 3. 13.
HDR 기술 - HDR 10+(HDR 플러스)와 돌비비전 디스플레이 성능을 말할 때 'HDR'이라는 용어가 많이 사용됩니다. 예전에는 디스플레이의 해상도를 의미하는 HD, FHD, UHD, 4K, 8K가 가장 중요한 성능의 지표였습니다. 하지만 요즘에는 해상도 말고도 다양한 디스플레이 성능을 나타내는 용어들이 사용되고 있습니다. HDR이라는 단어도 그 중 하나입니다. HDR 기술이란 무엇인지 정리해보겠습니다. HDR 기술이란? HDR은 High Dynamic Range의 약자입니다. 다이나믹 레인지(Dynamic Range)가 높다는 뜻인데, 다이나믹 레인지는 화면이 표현할 수 있는 어두운 부분과 밝은 부분의 밝기 차이를 의미합니다. 즉, 화면이 표현할 수 있는 명암의 범위를 다이나믹 레인지라고 하며, HDR은 화면이 더 밝고, 더 어두운 부분도 표현할 수 있.. 2020. 3. 12.
도커(Docker)에 하둡(Hadoop) 클러스터 띄우기 하둡 HDFS 코드리뷰를 진행하면서 테스트용 클러스터를 구축할 필요가 있었습니다. 실제 개발 장비에 설치되어 있는 하둡 클러스터를 이용해 볼 수 있었지만 도커에 하둡을 띄워보면 어떨까 생각이 들어서 관련 자료를 찾아보며 정리를 해봤습니다. Hadoop Docker 이미지 만들기 하둡을 띄울 도커 이미지를 만들어보겠습니다. (Dockerfile이나 docker-compose를 이용한 방법은 추후에 별도의 포스트를 할애해서 다루기로 하겠습니다.) 우선 CentOS 이미지를 이용해 컨테이너를 구동시킵니다. docker run -it --name hadoop-base centos yum 패키지를 업데이트하고 필요한 다양한 라이브러리들을 설치합니다. 이 부분에서 시간이 조금 오래걸릴 수 있습니다. yum upda.. 2020. 3. 12.
[Docker] Host에서 Container로 Ping 날리기 (Docker for mac) 도커 컨테이너를 구동하고 호스트 운영체제에서 컨테이너로 Ping을 날리는 테스트를 해봤습니다. 도커 컨테이너들은 172.17.0.x라는 내부 IP를 할당받게 됩니다. 호스트 운영체제에서 특정 컨테이너로 Ping을 날려보니 다음과 같은 응답이 왔습니다. $ ping 172.17.0.2 PING 172.17.0.2 (172.17.0.2): 56 data bytes Request timeout for icmp_seq 0 Request timeout for icmp_seq 1 Request timeout for icmp_seq 2 Request timeout for icmp_seq 3 Request timeout for icmp_seq 4 Request timeout for icmp_seq 5 ...Ping이 .. 2020. 3. 12.
[Linux] 'nethogs' 명령어 설치 및 사용법 - 네트워크 트래픽 모니터링 서버의 네트워크 상태를 모니터링하기 위한 도구로 iftop 명령과 함께 알게된 것이 nethogs 명령입니다. iftop 명령이 서버의 NIC 레벨에서 트래픽을 모니터링하는 도구인 반면 nethogs 명령은 서버에서 구동중인 데몬이나 프로세스 레벨로 트래픽을 모니터링 할 수 있는 도구입니다. 실제 서버에서 어떤 녀석이 얼마나 사용하는지 모니터링 할 수 있는 도구입니다. nethogs 설치 iftop과 마찬가지로 리눅스 배포판에 기본 포함되지 않은 경우가 많이 있습니다. 수동으로 설치해주면 됩니다. 역시나 패키지 관리 도구를 통해 쉽게 설치할 수 있습니다. CentOS sudo yum install nethogs Ubuntu sudo apt-get install nethogs nethogs 사용법 neth.. 2020. 3. 12.
[Linux] 톰캣(Tomcat) 재시작 명령 톰캣을 운영하다가 시스템 배포에 문제가 생겼습니다. 톰캣을 재시작해야 할 일이 생겼는데요. 톰캣은 어떻게 재시작하는지 찾아봤습니다. 톰캣이 설치된 디렉토리를 $TOMCAT\_HOME이라고 할 때 톰캣과 관련된 바이너리는 $TOMCAT\_HOME/bin 디렉토리에 모여있습니다. 톰캣을 재시작하는 명령은 다음과 같습니다. $TOMCAT_HOME/bin/shutdown.sh $TOMCAT_HOME/bin/start.sh이 두 스크립트를 실행시켜주면 톰캣이 재구동됩니다 ps -aux | grep {user id} | grep tomcat위 명령을 실행하면 현재 머신에서 로그인한 사용자 계정으로 구동시킨 톰캣 서버의 프로세스 정보를 확인할 수 있으며, 재시작된 시간 정보를 확인할 수 있습니다. 2020. 3. 12.
반응형