YoonWould!!

DEBIAN, HADOOP INSTALL & LXC USING GUIDE 본문

<인턴생활>/[리눅스]

DEBIAN, HADOOP INSTALL & LXC USING GUIDE

Hading 2019. 3. 14. 13:48
728x90

1. Debian Install


1-1. Install URL


https://www.debian.org/releases/stable/installmanual


1-2. KDE 채택


 Debian 설치 시 데스크톱 환경을 설정할 수 있다. 본인은 해당 설정 창에서 KDE를 체크하고, 다른 모든 것들은 비활성화 하였다. 이는 순수한(?) 상태에서 하나씩 내가 원하는대로 세팅하기 위한 것이다.


2. Debian Setting


2-1. Oh My Zsh


 Oh My Zsh는 bash보다 최근에 나온 쉘인 zsh의 환경설정을 다루는 프레임워크이며, 커뮤니티 활동이 매우 활발하여 120여 개의 테마와 120여 개의 플러그인이 준비되어있다.

 먼저 Oh My Zsh를 설치하려면 당연히 zsh가 설치되어 있어야 하고, curl이나 wget, 마지막으로 git이 설치되어 있어야 한다.

 Oh My Zsh를 사용하는 가장 큰 이유는 사실 시각적인 효과에 있다. 역시 칙칙한것보다는 이런게 좋다.


설치 참고 URL

https://nolboo.kim/blog/2015/08/21/oh-my-zsh/


2-2. JDK Install


$ sudo apt install openjdk-8-jdk


$ sudo vi /etc/environment


JAVA_HOME="/usr/lib/jvm/openjdk-8-jdk"


$ source /etc/environment


$ echo $JAVA_HOME


$ java -version


3. LXC Install


3-1. Install Command


sudo apt install lxc


3-2. Learning LXC Command


 1) lxc-ls : 시스템 내에 존재하는 컨테이너들의 리스트 표시.


  Option) -f, --fancy : 예쁘게, 컬럼 기반으로 출력.


 2) lxc-create : 컨테이너 생성.


  Option) 

   -t, --template template : template은 'lxc-template' 스크립트의 짧은 이름으로, busybox, debian, fedora, ubuntu, sshd 등이 있다. 


  Common option)

   -n, --name=NAME : 컨테이너 식별자로 NAME을 사용한다. 컨테이너 식별자의 형식은 알파벳-숫자 문자열이다.


  Ex) lxc-create -n test -t download : 'test' 이름의 라는 컨테이너 생성. 루트파일시스템을 지정할 수 있다.


 3) lxc-start : 컨테이너 시작(실행).


  Option) 

   -c, --console console_device : 컨테이너의 콘솔로 사용할 디바이스를 지정한다. 예를 들어 /dev/tty8과 같이 지정가능하다. 만약 이 옵션이 지정되지 않았고 -d가 지정되지 않았다면, 현재 터미널이 사용된다.


   -L, --console-log console_logfile : 컨테이너의 콘솔 출력을 기록할 파일을 지정한다.


  Ex) lxc-start -n test : 'test'라는 이름의 컨테이너를 실행시킨다.


 4) lxc-stop : 컨테이너 종료.


  Option) 

   -r, --reboot : 컨테이너 재부팅.


  Ex) lxc-stop test : 'test'라는 이름의 컨테이너를 종료시킨다.


 5) lxc-copy : 존재하는 컨테이너 복사.


  Option) 

   -N, --newname newname : 복사본의 이름


   -p, --newpath newpath : 복사본의 경로


   -R, --rename : 원본 컨테이너의 이름 변경


   -K, --keepname : 이 옵션이 지정되면 원본 컨테이너의 호스트이름이 복사본에도 그대로 유지된다.


   -M, --keepmac : 이 옵션이 지정되면 원본 컨테이너의 MAC 주소가 복사본에서도 그대로 유지된다.


  Ex) lxc-copy -N test-namenode-sec -n test : 'test'라는 이름의 컨테이너를 그대로 복제한 'test-namenode-sec'라는 이름의 컨테이너를 만든다.


 6) lxc-console : 지정한 컨테이너의 콘솔 실행. 

  tty 접속을 끊고 lxc-console을 나가고 싶다면 이스케이프 키를 이용하면 된다. 기본키는 <Ctrl+a q>이다.


  Ex) lxc-console -n test : 'test'라는 이름의 컨테이너의 콘솔을 실행한다.


 7) lxc-attach : 실행 중인 컨테이너 내에 프로세스를 실행.


  Ex) lxc-attach -n test : 'test'라는 이름의 컨테이너 내에 프로세스를 실행한다. root 권한으로 실행된다.


 8) lxc-destroy : 컨테이너 제거


  Ex) lxc-destory -n test : 'test'라는 이름의 컨테이너를 제거한다.



3-3. LXC Container Setting


 1) 커널 사용을 위한 사전 설정


  cd ~/.local/share/lxc


  내가 만들어둔 컨테이너에대한 디렉토리를 확인할 수 있다.


  아까 만들어둔 test 디렉토리로 들어가서 config 파일을 수정한다.


  sudo nano ~/.local/share/lxc/test/config

  

  비특권 컨테이너를 만들기위해서는 커널의 기능을 써야한다.


  cd /etc/sysctl.d


  nano /etc/sysctl.d/10-unpriv-lxc.conf


  >> kernel.unpriviledged_userns_clone=1


4. Hadoop Install


4-1. Install URL


http://hadoop.apache.org/releases.html


원하는 버전 binary 파일 설치.


본인은 hadoop-2.8.1 설치.  **금일 날짜(2017-08-11)


hadoop-2.8.1.tar.gz



728x90