본문 바로가기
반응형

분류 전체보기319

하둡(Hadoop)에서 커버로스(Kerberos) 인증 사용하기 - 여러개 인증 동시 사용 하둡(Hadoop)에 보안을 강화하기 위해 '커버로스(Kerberos)' 프로토콜을 사용할 수 있습니다. Principal과 Keytab 혹은 패스워드를 이용해 계정을 인증 받은 후 커버로스 티켓을 이용해 하둡의 서비스를 사용할 수 있게해서 클러스터의 보안을 강화할 수 있습니다. HDFS 클라이언트가 네임노드와 데이터 노드와 통신을 하면서 데이터를 받아오는 과정에서도 커버로스 인증을 구현할 수 있습니다. 하둡은 UserGroupInformation이라는 클래스를 이용해 커버로스 프로토콜을 사용할 수 있도록 프로그래머에게 편의를 제공합니다. Maven Dependency 하둡 클라이언트를 작성할 때 커버로스 인증을 받으려면 UserGroupInformation 클래스를 이용하면 됩니다. Us.. 2020. 3. 8.
깃허브(Github) 릴리즈 간편하게 하기 'aktau/github-release' 사용 깃허브(Github)에는 릴리즈 기능이 있습니다. 깃허브를 통해 협업을 하는 소스코드의 결과물을 공유할 수 있는 기능입니다. 깃허브 웹 페이지에 가보면 릴리즈를 위한 페이지를 찾아 볼 수 있습니다. 이 곳에서 'Create a new release' 버튼을 눌러서 빌드한 바이너리와 함께 릴리즈 노트를 작성하여 배포할 수 있습니다. 별도의 배포 웹 서버나 웹 페이지, FTP 서버를 운영하지 않아도 간편하게 결과물을 배포할 수 있습니다. 하지만 웹 페이지를 통해서 매번 릴리즈 버튼을 누르고 파일을 업로드하는 행위는 넘모 귀찮습니다. 우리는 게으르기 위해서 부지런한 개발자들이죠. release.sh 스크립트를 수행하면 자동으로 버전 관리도 해주고, 소스코드를 빌드해서 결과물을 깃허브 릴리즈 페이지로 업로드해줬.. 2020. 3. 7.
[Docker] 컨테이너 실행시 'unix:///var/run/docker.sock' 에러 발생 도커 실행시 다음 에러를 만나는 경우가 있다. $ docker run -it --name hadoop-base contos docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?. See 'docker run --help'. 이 에러는 도커 데몬이 실행되어 있지 않은 상황에 발생한다. 서버 환경이 아닌 맥북이나 iMac 환경에 도커를 설치해 사용하다보면 리소스를 많이 먹는 도커 데몬을 꺼놓는 경우가 많이 있다. 도커 데몬이 내려가 있으면 로컬 연결을 받으려는 유닉스 도메인 소켓이 만들어져 있지 않기 때문에 위와 같은 에러가 발생하게 된다. 도커 데몬을 실행시켜주자. 2020. 3. 6.
파이썬 'NameError: name 'input' is not defined' 에러 (raw_input과 input 차이) 사용자로부터 입력을 받는 파이썬 프로그램을 작성할 때, 다음 에러를 만나게 될 때가 있다. NameError: name 'input' is not defined 간단한 파이썬 프로그램 하나를 실행해보자. input_value = input("Please input your value :") print(input_value) 사용자로부터 입력을 받아 그대로 화면에 출력해주는 프로그램이다. 이 코드를 실행했을 때, 다음 화면처럼 'NameError' 메시지를 만나게 되는 경우가 있다. 'NameError: name 'a' is not defined' 라는 에러메시지가 발생하면서 생각한대로 코드가 동작하지 않는다. 이런 에러의 원인은 Python 2.x 버전에서 발생한다. 같은 코드를 Python 3.x 버전.. 2020. 2. 15.
파이썬 'TypeError: exceptions must be old-style classes or derived from BaseException, not type' 파이썬 프로그램을 작성하다가 다음 에러를 만나게 되었다. TypeError: exceptions must be old-style classes or derived from BaseException, not type try-except 구문을 이용해서 예외처리를 해놓은 부분에서 이런 에러가 발생했다. 이 TypeError는 raise 키워드를 이용해서 예외를 발생시킬 때 사용하는 클래스는 'old-style' 클래스이거나 BaseException 클래스를 상속한 클래스여야한다는 의미다. 문제가 있었던 코드는 다음과 같다. class UserDefinedException(object): pass try: # ... Do Something except OSError: raise UserDefinedExcept.. 2020. 2. 15.
[Linux] '/tmp' 디렉토리 삭제 관련 설정, 'tmpwatch' 설정 파일 리눅스 계열의 운영체제에서 잠깐 사용하고 마는 파일은 대체로 '/tmp' 디렉토리에 넣어 놓는다. 이 경로에 넣어두면 시스템이 재부팅될 때 자동으로 지워주기 때문에 별도의 관리를 하지 않아도 된다. '/tmp' 디렉토리를 정리하는 규칙은 리눅스 구현체마다 조금씩 다르다. Debian 시스템 부팅시 삭제 /etc/default/rcS 파일에 관련 룰이 저장됨 대략 다음과 같이 생김 # /etc/default/rcS # # Default settings for the scripts in /etc/rcS.d/ # # For information about these variables see the rcS(5) manual page. # # This file belongs to the "initscripts" .. 2020. 2. 12.
[Java] Inputstream 객체를 File 객체로 변환하기 InputStream 객체를 File 객체로 변환해야 할 경우가 있다. 예를 들어, 네트워크를 통해 읽은 데이터를 File 객체를 입력으로 받는 라이브러리에 사용하고 싶을 때 이런 변환이 필요하다. 우선 InputStream에서 데이터를 읽어 로컬 파일 시스템의 임시파일로 저장해 두자. public static File convertInputStreamToFile(InputStream in) { File tempFile = File.createTempFile(String.valueOf(inputStream.hashCode()), ".tmp"); tempFile.deleteOnExit(); copyInputStreamToFile(inputStream, tempFile); return tempFile; } .. 2020. 2. 12.
시간관리 스킬 - 일요일 시간관리법 우리가 제대로 사용하지 못하는 시간 중 하나가 바로 휴일, 그 중에서도 반복되는 일요일이다. 평일의 한시간은 매우 소중하고 알차게 사용하지만 주말의 한두시간은 쉽게 허비하기 마련이다. 자칫하면 잘못 사용할 수 있는 일요일의 시간을 어떻게하면 알차게 사용할 수 있을지 생각해봤다. 일요일 필자의 경우 가장 관리하기 어려운 시간을 꼽으라면 일요일을 꼽을 것이다. 평일의 경우 출근과 퇴근이라는 커다란 프레임이 정해져있고, 이 프레임 안에서 시간을 분배해 사용하면 되기 때문에 상대적으로 시간관리가 쉽다. 하지만 일요일을 포함한 휴일의 경우 이런 프레임이 없다. 프레임이 없기 때문에 생활이 무너져내리기 쉽다. 오후 늦게까지 잠들어있기 쉽고, 아무것도 안하고 빈둥빈둥거리기 쉽다. 휴일 중에 가장 반복되는 휴일은 일요.. 2020. 2. 2.
<월급쟁이 부자들> 을 읽고 - 재태크의 기본기 나는 월급쟁이다. 그리고 부자가 되고 싶다. 월급쟁이와 부자. 두 가지 단어가 모두 들어있는 재테크 서적을 찾아보다 이라는 책을 만나게 되었다. (또 다른 책은 라는 책이 있었는데, 나중에 한번 읽어봐야겠다.)​ 이 책은 재테크를 해야겠다고 마음 먹은 재테크 초보자들이나 사회 초년생들을 위한 책이다. 저자는 직업 특성상 다양한 종류의 사람들을 만나왔다. 부자가 되고 싶은 사회 초년생부터 수 백억원 자산가까지 다양한 사람들을 만나면서 그들이 어떤 생각을 가지고 있는지 겪어왔다. 이런 경험을 바탕으로 부자들에게서 공통적으로 찾아볼 수 있는 점들을 정리해서 책에 담았다.​ 이 책에는 부동산 입지 분석 방법이나 좋은 주식 종목 고르는 방법같은 기술적인 내용은 담겨져 있지 않다. 대신 부자로 가기 위해서 갖춰야하.. 2020. 1. 18.
반응형