개요

Proxmox에서는 Web GUI 환경으로 LXC를 손쉽게 올릴 수 있지만, 필자는 리눅스의 CLI 환경이 익숙한 탓에 CLI로 LXC를 다루는 법을 공부하고자 Ubuntu Host 머신에서 복습하기 위한 글을 쓴다.

 

테스트 환경

  • OS : Ubuntu 22.04.3 LTS
  • Kernel : 6.2.0-36-generic
  • LXC Version : 5.0.0
  • LXC Type : Ubuntu

 

본 페이지에서는 Ubuntu Host 머신에 LXC 패키지 설치 방법과 LXC를 Host 머신에 올리는 방법에 대해서 설명한다.

 

LXC 및 LXC Template 설치

# LXC Console, Start 등 여러 LXC 관리 패키지 설치
$ sudo apt-get install lxc

# LXC 지원 Template 설치
# lxc-templates 설치 시, /usr/share/lxc/templates 경로에 여러 Template이 설치된다.
$ sudo apt-get install lxc-templates

 

Ubuntu에 LXC 올리기

# Ubuntu Type의 LXC 설치
$ sudo lxc-create -n ubuntu-lxc -t ubuntu

 

LXC를 설치 전에 여러 Config을 할 수 있지만, 본 과정에서는 기본적인 환경으로 설치를 진행한다.

 

$ sudo lxc-ls --fancy

 

LXC 설치가 끝나면, 현재 본인의 Host 머신에 올려진 LXC 종류를 lxc-ls 명령으로 확인할 수 있다.

 

Default로는 위 사진과 같이 STOPPED 상태일 것이다.

 

이제, LXC를 RUN 시키고 LXC로 접근하는 것을 진행해본다.

 

LXC 콘솔로 접근하기

# 앞서 생성한 ubuntu-lxc라는 이름을 가진 LXC를 실행
$ sudo lxc-start -n ubuntu-lxc

# 정상적으로 실행되었는지 확인
$ sudo lxc-ls --fancy

 

lxc-start로 특정 LXC를 실행시킨 뒤 lxc-ls 명령으로 LXC 상태를 확인해보자.

 

이제, 생성한 LXC가 RUNNING 상태로 바뀌었을테고 LXC로 접근할 수 있는 상태가 되었다.

# ubuntu-lxc라는 이름을 가진 LXC로 접근
$ sudo lxc-console -n ubuntu-lxc

# lxc-attach 또한, LXC로 접근할 수 있도록 지원해준다.
$ sudo lxc-attach -n ubuntu-lxc

 

lxc-console 명령으로 특정 LXC로 접근하게 되면, ID와 PW를 입력해야한다.

Ubuntu Type의 LXC인 경우, 초기 ID와 PW는 둘 다 ubuntu 이다.

 

LXC로 접근할 경우 명령 프롬프트가 변경된 것을 확인할 수 있다.

 

다시, Host 머신으로 나와서 ifconfig 명령을 실행해보면, 리눅스 Bridge와 가상화 인터페이스가 Enable 되어 있는 것을 확인할 수 있다.

lxcbr0가 Bridge이며, veth[...]이 앞서 생성한 LXC와 연결된 가상화 인터페이스이다.

 

리눅스는 이와 같은 Bridge로 여러 LXC간의 통신을 지원한다.

 

LXC 명령어 종류 및 설정 파일 경로

Host 머신에서 사용할 수 있는 여러 LXC 명령들은 아래와 같다.

각 명령의 사용법은 필자도 익혀야 함으로 본 페이지에서는 다루지 않는다.

경로는 /usr/bin 아래에 위치한다.

 

LXC를 생성(lxc-create)할 때, Default 설정을 위한 Config 파일은 /etc/lxc/default.conf라는 파일로 존재한다.

해당 파일을 수정하여서 Default LXC 설정을 셋팅해줄 수 있다.

 

그리고 /var/lib/lxc/ 하위에는 생성된 LXC의 Config와 rootfs이 존재한다.

 

Refereces

https://zoomadmin.com/HowToInstall/UbuntuPackage/lxc-templates

https://kimjingo.tistory.com/70

 

 

 

 

 

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기