21. LXD 시작하기: 컨테이너 쉽게 설치 + 치트 시트

LXD 시작하기는 Linux에서 효율적이고 가벼운 컨테이너 및 가상 머신 관리를 위한 문을 열어줍니다. LXD는 Linux 컨테이너의 배포와 관리를 간소화하는 강력한 시스템 컨테이너 및 VM 관리자로, 웹 애플리케이션 호스팅, 테스트 환경, 마이크로서비스 배포에 이상적인 솔루션입니다. 기존 가상화와 컨테이너화 사이의 간극을 메우고 현대 인프라 요구 사항에 유연성과 성능을 제공합니다.

이 글에서는 실제 시나리오에서 LXD를 사용하여 컨테이너를 설치하고 관리하는 방법을 단계별 데모로 안내합니다. 또한 필수 LXD 명령을 빠르게 참조할 수 있도록 표 형식의 요약 치트 시트를 제공하여 컨테이너 관리 워크플로를 간소화하는 데 필요한 도구를 갖추도록 돕겠습니다.


이전 글:

01. Ubuntu Server 소개 – SysOSX: AI & Cloud

02. 첫 Ubuntu Server 설정 방법: 초보자 가이드 – SysOSX: AI & Cloud

03.Ubuntu Server용 Linux 명령줄 마스터하기 – SysOSX: AI & Cloud

04. Ubuntu Server에서 사용자 및 권한 관리: 종합 가이드 – SysOSX: AI & Cloud

05. Ubuntu Server 네트워킹 기초: 종합 가이드 – SysOSX: AI & Cloud

06. Ubuntu Server에 소프트웨어 설치 및 관리: 완전 가이드 – SysOSX: AI & Cloud

07.Ubuntu Server 패치 및 업데이트: 종합 가이드 – SysOSX: AI & Cloud

08. Ubuntu Server 보안: 강화 및 보호를 위한 실제 단계 – SysOSX: AI & Cloud

09. Ubuntu Server 감사 및 로깅

10. Ubuntu Server용 시스템 모니터링 도구: 종합 가이드 – SysOSX: AI & Cloud

11. Ubuntu Server 중앙 집중식 로깅: 필독 가이드 – SysOSX: AI & Cloud

12. Ubuntu Server 감사 및 규정 준수: 모범 사례 – SysOSX: AI & Cloud

13.호스팅 및 웹 애플리케이션용 Ubuntu Server 설정: 최종 가이드 – SysOSX: AI & Cloud

14. 단일 Ubuntu Server에서 여러 웹사이트 호스팅: 유용한 팁 – SysOSX: AI & Cloud

15. Ubuntu Server에서 스토리지 및 디스크 관리: 간단 가이드 – SysOSX: AI & Cloud

16. Ubuntu Server에서 파일 공유 서비스 설정: 완전 가이드 – SysOSX: AI & Cloud

17. Ubuntu에서 보안 데이터베이스 서버 설정: MySQL 대 MariaDB – SysOSX: AI & Cloud

18. Ubuntu Server에서 LVM 구성 및 사용 방법: 종합 가이드 – SysOSX: AI & Cloud

19. KVM을 이용한 가상화 소개: Ubuntu Server 초보자 가이드 – SysOSX: AI & Cloud

20. Ubuntu Server에 Docker 설치 방법: 컨테이너화 단계별 가이드 – SysOSX: AI & Cloud



LXD란?

LXD는 Linux Containers (LXC) 기반으로 구축된 오픈소스 컨테이너 관리 도구입니다. 가상 머신처럼 동작하지만 더 빠르고 가벼운 시스템 컨테이너를 제공합니다. LXD를 사용하면 다음과 같은 작업을 할 수 있습니다:

  • 컨테이너 안에서 전체 Linux 배포판을 실행합니다.
  • 고급 네트워킹 및 스토리지 기능을 사용합니다.
  • REST API를 통해 컨테이너를 원격으로 관리합니다.
  • 다운타임을 최소화하면서 호스트 간에 컨테이너를 마이그레이션합니다.

Snap을 사용하여 LXD 설치

최신 Ubuntu 시스템에 LXD를 설치하는 권장 방법은 Snap을 이용하는 것입니다. 다음 단계를 따르세요:

1. Snapd 설치

시스템에 Snap이 설치되어 있는지 확인하세요. Snap이 설치되어 있지 않다면 다음을 실행하세요:

sudo apt update
sudo apt install snapd

2. LXD 설치

Snap을 사용하여 LXD를 설치하세요:

sudo snap install lxd

3. 설치 확인

설치된 LXD 버전을 확인하세요:

lxd --version


데모: LXD를 사용하여 컨테이너 설치

LXD를 사용하여 Ubuntu 22.04를 실행하는 컨테이너를 만들고 관리하는 일반적인 시나리오를 살펴보겠습니다.

1단계: LXD 초기화

다음 명령을 실행하여 LXD를 초기화하세요:

sudo lxd init

스토리지, 네트워킹 및 기타 설정을 구성하라는 메시지가 표시됩니다. 간편하게 기본 옵션을 선택할 수 있습니다.

2단계: Ubuntu 컨테이너 시작

다음 명령으로 Ubuntu 22.04를 실행하는 컨테이너를 만들고 시작하세요:

lxc launch ubuntu:22.04 web-server

이 명령은 Ubuntu 22.04 이미지를 사용하여 다음 이름의 컨테이너를 만듭니다: web-server.

3단계: 컨테이너 액세스

컨테이너에 대한 셸 액세스 권한을 얻으세요:

lxc exec web-server -- bash

이제 컨테이너 안에 들어갔으며 패키지를 설치하거나 서비스를 구성할 수 있습니다. 예를 들어 Apache를 설치하세요:

apt update
apt install apache2 -y

Apache 서비스를 시작하세요:

systemctl start apache2

4단계: 컨테이너 네트워킹 확인

컨테이너에서 나온 뒤 IP 주소를 확인하세요:

lxc list

브라우저에서 컨테이너의 IP 주소를 방문하거나 curl http://ip를 사용하여 연결을 확인함으로써 컨테이너의 웹 서버에 액세스하세요.

5단계: 컨테이너 중지 및 삭제

컨테이너가 더 이상 필요하지 않으면 중지하세요:

lxc stop web-server

컨테이너를 삭제하세요:

lxc delete web-server


LXD 명령줄 치트 시트

자주 사용하는 LXD 명령에 대한 요약 치트 시트는 다음과 같습니다:

범주명령설명
초기화lxd init처음 사용하기 전에 LXD를 초기화합니다.
인스턴스 생성lxc init <image> <name>시작하지 않고 컨테이너를 만듭니다.
lxc launch <image> <name>컨테이너를 만들고 시작합니다.
lxc launch <image> <name> --vm가상 머신을 만들고 시작합니다.
인스턴스 관리lxc list모든 인스턴스를 나열합니다.
lxc info <instance>인스턴스에 대한 정보를 표시합니다.
lxc start <instance>인스턴스를 시작합니다.
lxc stop <instance> [--force]인스턴스를 중지합니다.
`lxc delete <instance> [–force–interactive]`
인스턴스 액세스lxc exec <instance> -- <command>인스턴스 안에서 명령을 실행합니다.
lxc exec <instance> -- bash인스턴스에 대한 셸 액세스 권한을 얻습니다.
lxc console <instance>인스턴스에 대한 콘솔 액세스 권한을 얻습니다.
파일 관리lxc file pull <instance>/<path> <local_path>인스턴스에서 파일을 가져옵니다.
lxc file push <local_path> <instance>/<path>인스턴스로 파일을 푸시합니다.
프로젝트lxc project create <project>프로젝트를 만듭니다.
lxc project set <project> <option>프로젝트를 구성합니다.
lxc project switch <project>프로젝트로 전환합니다.

공식 문서:
LXD 시작하기


결론

LXD는 컨테이너 관리를 간소화하여 개발자, 시스템 관리자 및 DevOps 엔지니어에게 탁월한 선택입니다. 가벼운 성능과 VM과 같은 기능을 갖춘 LXD는 애플리케이션 호스팅, 테스트 환경 등에 이상적입니다.

이 글에서는 일반적인 시나리오에서 LXD를 사용하여 컨테이너를 설치하고 관리하는 방법을 보여주었습니다. 또한 치트 시트에서는 필수 LXD 명령을 빠르게 참조할 수 있습니다.

다음 주제:
다음 글에서는 다음 주제를 다룰 예정입니다: Ubuntu Server에서 Podman 사용 방법. 기대해 주세요.

댓글 남기기