🧠 왜 이런 문제가 생기나?

Rancher Agent 1.x 동작 방식

  • /proc/self/cgroup 에서

    /docker/<container-id>

    형태를 파싱해서 자기 컨테이너 ID를 찾음

하지만 현재 시스템 (Ubuntu 22.04 + 최신 커널)

  • cgroup v2 unified hierarchy

  • /proc/self/cgroup 결과:

    0::/

  • ID 정보 자체가 없음

  • → Rancher Agent는 “내가 어떤 컨테이너인지 모름”

  • → 즉시 fatal exit


✅ 해결책은 단 하나 (정답)

cgroup v1으로 강제 전환

⚠️ Docker 버전, Rancher 버전 바꿔도 이건 안 고쳐집니다
커널 부트 옵션을 바꿔야 합니다


🛠 해결 방법 (권장 / 검증된 방식)

1️⃣ GRUB 설정 수정

sudo nano /etc/default/grub

아래 줄을 반드시 이렇게 변경:

-GRUB_CMDLINE_LINUX="" +GRUB_CMDLINE_LINUX="systemd.unified_cgroup_hierarchy=0"


2️⃣ grub 적용

sudo update-grub


3️⃣ 재부팅 (필수)

sudo reboot


4️⃣ 재부팅 후 확인 (중요)

docker run --rm -v /proc:/host_proc alpine cat /host_proc/self/cgroup

✅ 정상 결과 예시:

12:devices:/docker/3b1f6e8f... 11:memory:/docker/3b1f6e8f... 10:cpu,cpuacct:/docker/3b1f6e8f...

👉 이제 Rancher Agent가 컨테이너 ID를 찾을 수 있음

  • No labels