Podman과 Quadlets를 이용한 생산 환경 배포
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
개발 툴
대상자
- 개발자 및 DevOps 엔지니어
- systemd와 컨테이너 기반 배포에 관심 있는 중급 이상 수준의 사용자
핵심 요약
- Podman을 사용하여 컨테이너를 systemd와 통합하여 부팅 시 자동 실행 가능
podman generate kube
명령어로 Kubernetes YAML 파일 생성 후.kube
서비스 파일 생성.kube
파일의[Install]
섹션은 systemd 자동 시작을 위한 핵심 구성 요소
섹션별 세부 요약
1. Pod 생성
- 필요한 컨테이너를 포함한 Pod 생성
- 예:
podman generate kube xpto-pod -f /tmp/my_pod_kube.yaml
명령어로 YAML 파일 생성
2. `.kube` 서비스 파일 생성
- YAML 파일 경로와
PublishPort
,LogDriver
등 설정 항목 포함 [Kube]
섹션에 YAML 파일 위치와 포트 매핑 정의[Install]
섹션을 통해 systemd 부팅 시 자동 실행 구현
3. systemd 서비스 등록
- 생성된
.kube
파일을/etc/containers/systemd/
경로로 이동 systemctl daemon-reload
명령어로 systemd 서비스 재로드
4. 상태 확인
systemctl status xpto-pod.service
명령어로 서비스 실행 상태 확인journalctl
을 통해 로그 실시간 모니터링 가능
결론
- Podman과 systemd 통합을 통해 컨테이너의 자동 부팅 및 로그 관리 가능
.kube
파일의[Install]
섹션은 필수 구성 요소로 누락 시 자동 실행 실패podman generate kube
명령어는 Kubernetes YAML 생성의 핵심 도구로 활용 권장