13년차의 서버실

서버, 인프라, 홈랩 기술 블로그

[태그:] 데이터 이전

  • [NAS] TrueNAS SCALE로 NAS OS 마이그레이션: OpenMediaVault에서 안전하게 전환하기

    [NAS] TrueNAS SCALE로 NAS OS 마이그레이션: OpenMediaVault에서 안전하게 전환하기

    [NAS] TrueNAS SCALE로 NAS OS 마이그레이션: OpenMediaVault에서 안전하게 전환하기

    안녕하세요, 13년차 서버 관리자입니다. 오늘은 최근 홈랩에서 진행한 꽤 큰 프로젝트, 바로 NAS OS 마이그레이션 경험담을 풀어볼까 합니다. 저의 든든한 파일 서버 역할을 해왔던 OpenMediaVault를 뒤로하고, 새로운 강력한 친구 TrueNAS SCALE로 갈아탔거든요. 혹시 여러분 중에도 OMV의 한계를 느끼고 더 강력하고 유연한 NAS OS를 찾아 헤매고 계신 분이 있다면, 이 글이 좋은 길잡이가 될 거라고 생각합니다. 제가 겪었던 삽질까지 솔직하게 공유할 테니, 편하게 따라오실 수 있을 거예요!

    OpenMediaVault에서 TrueNAS SCALE로의 NAS OS 마이그레이션 전체 흐름도

    NAS OS 마이그레이션의 전체 흐름: OMV에서 TrueNAS SCALE로의 여정

    왜 OpenMediaVault에서 TrueNAS SCALE로 옮겼을까?

    사실 OpenMediaVault는 가볍고 안정적인 NAS OS였습니다. 초기 홈랩을 꾸릴 때 정말 많은 도움을 줬죠. 하지만 시간이 흐르고 제가 원하는 기능들이 많아지면서, OMV만으로는 뭔가 부족하다는 느낌을 지울 수 없었습니다. 특히 컨테이너 기반의 애플리케이션(Docker, Kubernetes)을 더 유연하게 활용하고 싶었고, ZFS 파일 시스템의 강력함에 점점 매료되었거든요.

    • OpenMediaVault (OMV): Debian 기반의 NAS 솔루션으로, 웹 UI를 통해 파일 공유(SMB/NFS), RAID 관리, 플러그인 설치 등을 쉽게 할 수 있습니다. 가볍고 안정적이라는 장점이 있지만, ZFS 지원이 제한적이고, 컨테이너 오케스트레이션 기능은 외부 플러그인에 의존해야 하는 한계가 있었어요.
    • TrueNAS SCALE: TrueNAS CORE의 FreeBSD 기반과 달리, Linux 기반(Debian)으로 개발된 TrueNAS의 새로운 버전입니다. ZFS (Zettabyte File System) 기반의 강력한 데이터 무결성 및 스냅샷 기능은 물론, KVM (Kernel-based Virtual Machine) 가상화와 Kubernetes (쿠버네티스) 기반의 컨테이너 앱(Docker 컨테이너를 쉽게 배포할 수 있는 환경)을 기본으로 제공합니다. 쉽게 말해, 스토리지뿐만 아니라 가상화 및 컨테이너 플랫폼 역할까지 한 번에 할 수 있는 만능 인프라 서버인 셈이죠!

    저는 더 이상 OMV가 제공하지 못하는 유연성과 확장성이 필요했고, TrueNAS SCALE이 그 해답이라고 확신했습니다. 특히 데이터 안정성에 집착하는 저로서는 ZFS의 매력을 뿌리칠 수 없었거든요. 결국 이 대대적인 마이그레이션 프로젝트를 감행하게 되었습니다.

    마이그레이션 준비: 철저함이 생명!

    NAS OS 마이그레이션은 단순히 새 OS를 설치하는 것과는 다릅니다. 기존 데이터를 안전하게 옮기는 것이 가장 중요하죠. 제가 가장 중요하게 생각했던 준비물은 바로 이것들이었습니다.

    1. 데이터 백업 (Data Backup): ⚠️ 가장 중요합니다! 모든 데이터는 소중하니까요. 저는 마이그레이션 전에 외장 하드나 다른 NAS로 데이터를 한 번 더 백업해두었습니다. 혹시 모를 사태에 대비하는 건 인프라 엔지니어의 기본 소양이거든요.
    2. 하드웨어 호환성 확인: TrueNAS SCALE은 OMV보다 리소스 요구량이 높은 편입니다. 특히 ZFS는 RAM을 많이 사용하므로, 최소 8GB 이상의 RAM을 권장합니다. 제 홈랩 서버는 다행히 충분한 사양이라 걱정은 없었습니다.
    3. 기존 OMV 설정 기록: 공유 폴더(SMB/NFS), 사용자 계정, 네트워크 설정 등 OMV에서 사용하던 모든 설정을 스크린샷이나 메모로 남겨두었습니다. 새 OS에서 똑같이 재현해야 하니까요.
    4. 새로운 OS 설치용 드라이브: TrueNAS SCALE은 OS 전용 드라이브를 따로 사용하는 것을 권장합니다. 데이터 드라이브와 분리해야 나중에 관리하기 편하고, ZFS 풀에 영향을 주지 않습니다. 저는 작은 SSD를 OS용으로 준비했습니다.
    5. 부팅 USB: TrueNAS SCALE 설치를 위한 부팅 USB를 미리 만들어 두어야겠죠.

    TrueNAS SCALE 설치와 ZFS Pool 임포트 삽질기

    준비가 끝났으니 이제 실전입니다. TrueNAS SCALE 설치 자체는 크게 어렵지 않아요. 공식 웹사이트에서 ISO 파일을 다운로드받아 Rufus 같은 툴로 부팅 USB를 만들고, 서버에 연결해서 부팅하면 됩니다.

    1. TrueNAS SCALE 설치:

      서버를 부팅 USB로 부팅하고, 설치 마법사를 따라 OS 전용 드라이브(미리 준비한 SSD)에 TrueNAS SCALE을 설치합니다. 이때 데이터 드라이브를 잘못 선택하지 않도록 조심하세요! 저는 항상 긴장하면서 더블 체크하는 편입니다.

      # 설치 완료 후 첫 부팅 시, 콘솔 화면에서 네트워크 설정 등을 확인할 수 있습니다.
      # 예를 들어, IP 주소를 확인하여 웹 UI에 접속합니다.
      # ifconfig
      
    2. 초기 네트워크 및 관리자 설정:

      설치가 완료되고 재부팅하면, 콘솔 화면에 접속할 IP 주소가 표시됩니다. 웹 브라우저로 접속해서 초기 관리자 계정(root) 비밀번호를 설정하고, 필요한 네트워크 설정을 진행합니다. 저의 경우엔 고정 IP를 할당해줬습니다.

    3. ZFS Pool 임포트 (Import Pool): 🎉 드디어 핵심!

      이 부분이 가장 중요하면서도 제가 삽질을 가장 많이 했던 부분입니다. OpenMediaVault에서 사용하던 데이터 디스크들을 TrueNAS SCALE이 인식하고, 기존 데이터를 유지한 채 가져오는 과정이 필요합니다. OMV에서는 ZFS를 사용하지 않았었기 때문에, TrueNAS SCALE에서 새로운 ZFS Pool을 생성하고, OMV에서 사용하던 디스크의 데이터를 옮겨야 하는 상황이었습니다. 하지만 저는 OMV에서 이미 데이터를 RAID로 묶어 사용하고 있었기 때문에, 이 디스크들을 TrueNAS SCALE에서 바로 ZFS Pool로 임포트하는 과정이 순탄치 않았습니다. 만약 OMV에서 ZFS를 사용했다면 훨씬 쉬웠겠지만, 일반적인 EXT4 등으로 구성된 데이터 디스크라면 아래와 같이 새로운 ZFS Pool을 만들고 데이터를 옮겨야 합니다.

      🚨 중요: 이 과정에서 기존 데이터가 삭제될 수 있으니, 반드시 백업을 먼저 하세요!

      저는 결국 새로운 ZFS Pool을 만들고 기존 OMV 데이터를 네트워크를 통해 복사하는 방식을 택했습니다. OMV가 설치된 드라이브는 OS용으로 사용하고, 데이터 드라이브는 TrueNAS SCALE에서 새로운 ZFS Pool로 구성하는 거죠.

      1. Storage > Pools > Add 메뉴로 이동합니다.
      2. Create new Pool을 선택하고 이름을 지정합니다 (예: data_pool).
      3. 기존 OMV에서 사용하던 데이터 디스크들을 선택하여 새로운 Pool을 구성합니다. 이때 RAIDZ1, RAIDZ2 등 원하는 RAID 레벨을 선택합니다. 저는 RAIDZ2로 구성하여 데이터 안정성을 높였습니다.
      4. Pool 생성을 진행하면, 선택된 디스크의 모든 데이터가 지워집니다! 다시 한번 강조하지만, 백업이 필수입니다.

      새로운 ZFS Pool이 생성되면, 이제 기존 OMV 서버에 접속하여 rsync 명령어나 SMB/NFS 마운트를 통해 데이터를 새로운 TrueNAS SCALE 서버로 복사합니다. 저는 rsync를 사용했습니다.

      # 기존 OMV 서버에서 TrueNAS SCALE로 데이터 복사 (예시)
      # rsync -avh --progress /path/to/old/data/ user@truenas_ip:/path/to/new/pool/
      # -a: 아카이브 모드 (권한, 시간 정보 등 유지)
      # -v: 자세한 정보 출력
      # -h: 사람이 읽기 쉬운 형식으로 출력
      # --progress: 진행 상황 표시
      

      이 과정이 시간이 가장 오래 걸렸습니다. 테라바이트 단위의 데이터를 옮기려면 인내심이 필요하더라고요. 저는 밤새도록 rsync를 돌려놓고 잠들었습니다.

    TrueNAS SCALE 웹 인터페이스에서 새로운 ZFS Pool을 생성하고 디스크를 선택하는 과정

    TrueNAS SCALE 웹 인터페이스에서 새로운 ZFS Pool을 생성하고 디스크를 선택하는 과정

    주의사항 및 트러블슈팅: 제가 겪었던 문제들

    마이그레이션은 언제나 예상치 못한 변수가 생기기 마련이죠. 저도 몇 가지 문제에 부딪혔습니다.

    • ⚠️ 기존 OMV에서 ZFS를 사용하지 않은 경우의 Pool 임포트: 위에서 설명했듯이, OMV가 EXT4 등으로 구성된 볼륨이었다면 TrueNAS SCALE에서 바로 Pool 임포트가 불가능합니다. 이 경우 반드시 새로운 ZFS Pool을 생성하고 데이터를 복사해야 합니다. 이 점을 간과하고 “Import Pool” 메뉴에서 계속 헤맸던 것이 첫 번째 삽질이었습니다. OMV에서 ZFS를 사용하지 않았다면, 무조건 새로운 Pool을 만들고 데이터를 복사하세요!
    • ⚠️ 네트워크 설정 문제: TrueNAS SCALE 설치 후 웹 UI 접속이 안 되는 경우가 있었습니다. 대부분 네트워크 인터페이스 설정이 잘못되었거나 DHCP 서버에서 IP를 제대로 받지 못했을 때 발생하더군요. 콘솔에서 ifconfig 명령어로 IP 주소를 확인하고, 필요하면 네트워크 설정을 다시 했습니다.
    • ⚠️ 권한 문제: 데이터를 옮긴 후 SMB/NFS 공유를 설정했는데, 특정 사용자나 그룹이 접근하지 못하는 문제가 발생했습니다. ZFS는 강력한 ACL (Access Control List)을 지원하지만, 그만큼 설정이 복잡할 수 있습니다. 저는 chmod, chown 명령어를 사용하거나 웹 UI에서 데이터셋(Dataset)의 권한을 다시 설정하며 해결했습니다. 특히 Windows에서 접근할 때는 SMB 공유 설정 시 “Guest access”나 “Auxiliary parameters”를 잘 활용해야 합니다.

    결과 및 활용: 드디어 TrueNAS SCALE!

    데이터 복사가 끝나고 모든 설정이 완료되었을 때의 그 쾌감이란! 드디어 제가 원하던 TrueNAS SCALE 기반의 NAS가 완성되었습니다. 웹 UI에 접속해서 모든 데이터가 정상적으로 올라와 있고, ZFS Pool 상태가 Healthy임을 확인했을 때, “드디어 됐다!” 하고 외쳤습니다. 🎉

    TrueNAS SCALE 대시보드에서 시스템 상태와 ZFS Pool 정보가 Healthy로 표시된 화면

    TrueNAS SCALE 대시보드에서 ZFS Pool 상태와 시스템 리소스를 한눈에 확인하는 모습

    이제 TrueNAS SCALE의 강력한 기능을 마음껏 활용할 수 있게 되었습니다. 특히 Apps (앱스) 기능을 통해 다양한 컨테이너 기반 서비스를 쉽게 배포할 수 있는 점이 너무 좋더라고요. 저는 바로 Plex Media Server, Nextcloud, 그리고 Home Assistant를 설치했습니다. 이전 OMV에서는 Docker를 수동으로 설치하고 관리해야 했지만, TrueNAS SCALE에서는 몇 번의 클릭만으로 손쉽게 배포하고 관리할 수 있으니 정말 편하더라고요.

    • Plex Media Server: 제 미디어 라이브러리를 스트리밍하는 데 필수죠.
    • Nextcloud: 개인 클라우드 스토리지를 구축하여 파일을 동기화하고 공유합니다.
    • Home Assistant: 홈 자동화를 위한 핵심 플랫폼입니다.

    OpenMediaVault vs. TrueNAS SCALE 비교

    제가 직접 두 OS를 모두 사용해본 경험을 바탕으로 간단히 비교해보겠습니다.

    카테고리 OpenMediaVault (OMV) TrueNAS SCALE
    기반 OS Debian Linux Debian Linux
    파일 시스템 EXT4, XFS 등 (ZFS는 플러그인 통해 제한적 지원) ZFS (네이티브 지원, 핵심 기능)
    컨테이너/가상화 Docker (플러그인), VM (VirtualBox 플러그인) Kubernetes (Apps), KVM (가상화) 네이티브 지원
    데이터 무결성 파일 시스템 자체 기능에 의존 ZFS 체크섬, 스냅샷, 데이터 스크러빙 등 강력한 기능
    UI/관리 편의성 간단하고 직관적 초기 학습 곡선이 있지만, 강력하고 세밀한 설정 가능
    리소스 요구량 비교적 낮음 ZFS 때문에 RAM 요구량 높음 (최소 8GB 권장)
    주요 사용처 가볍고 안정적인 홈 NAS, 파일 공유 고성능/고안정성 홈랩/소규모 서버, 통합 스토리지/가상화/컨테이너 플랫폼
    OpenMediaVault와 TrueNAS SCALE의 주요 기능 비교 인포그래픽

    두 NAS OS의 주요 기능과 특징을 한눈에 비교한 표

    마무리하며: 또 한 번 성장한 삽질 경험

    OpenMediaVault에서 TrueNAS SCALE로의 마이그레이션은 저에게 또 하나의 소중한 경험이 되었습니다. 단순히 OS를 바꾸는 것을 넘어, ZFS 파일 시스템의 깊이와 컨테이너 오케스트레이션의 중요성을 다시 한번 깨달았거든요. 물론 중간에 삽질도 많이 했지만, 그 과정에서 얻은 지식과 해결 능력은 어떤 기술 서적에서도 얻을 수 없는 값진 것이었습니다.

    TrueNAS SCALE은 홈랩 환경에서 강력한 스토리지와 유연한 애플리케이션 플랫폼을 동시에 원하는 분들에게 정말 좋은 선택지가 될 거라고 생각합니다. 혹시 마이그레이션을 고민하고 계시다면, 제 경험담이 조금이나마 도움이 되었으면 좋겠네요. 다음번에는 TrueNAS SCALE의 Apps 기능을 활용해서 제가 운영하는 컨테이너 서비스들을 좀 더 자세히 소개하는 글을 들고 오겠습니다. 그때까지 모두 즐거운 삽질(?) 되세요! 감사합니다.

  • [Nas] TrueNAS iSCSI로 가상머신 마이그레이션: ESXi 스토리지 이전 완벽가이드

    [Nas] TrueNAS iSCSI로 가상머신 마이그레이션: ESXi 스토리지 이전 완벽가이드

    TrueNAS iSCSI로 가상머신 마이그레이션: ESXi 스토리지 이전 완벽가이드

    안녕하세요, 13년차 서버실 지킴이입니다. 오늘은 많은 인프라 엔지니어들이 한 번쯤 고민해봤을 주제, VMware ESXi 가상머신(Virtual Machine, VM)을 TrueNAS iSCSI 스토리지로 마이그레이션(Migration, 이전)하는 성공 사례를 들려드리려고 합니다. 저도 홈랩을 운영하면서 스토리지 확장의 필요성을 절감했고, 이 과정에서 꽤나 삽질을 했거든요. 하지만 결국 성공했고, 그 경험을 여러분과 나누고 싶습니다. 💡

    기존에 사용하던 로컬 스토리지의 용량이 부족해지거나, 더 나은 성능과 유연성을 위해 중앙 집중식 스토리지로 옮겨야 할 때가 있죠. 특히 ESXi 스토리지 이전은 단순히 데이터 복사 이상의 복잡한 과정이 필요합니다. 이때 TrueNAS iSCSI는 비용 효율적이면서도 강력한 대안이 될 수 있습니다. iSCSI VM 마이그레이션을 고민 중이라면, 오늘 이야기가 큰 도움이 될 겁니다.

    ESXi와 TrueNAS iSCSI 스토리지를 활용한 가상머신 마이그레이션 전체 구성도입니다.

    1. 핵심 개념 이해: ESXi, TrueNAS, 그리고 iSCSI

    본격적인 마이그레이션에 앞서, 핵심 기술들이 무엇인지 간단히 짚고 넘어갈게요. “아, 이건 또 뭐야?” 싶으실 수도 있지만, 기본을 알아야 삽질을 줄일 수 있거든요. 😉

    • VMware ESXi (이엑스아이): VMware에서 개발한 베어메탈(Bare-metal) 하이퍼바이저(Hypervisor)입니다. 쉽게 말해, 물리 서버 위에 직접 설치되어 여러 가상머신을 효율적으로 운영할 수 있게 해주는 소프트웨어죠. 저희 서버실의 모든 가상머신은 ESXi 위에서 돌아가고 있습니다.
    • TrueNAS (트루나스): 오픈소스 네트워크 스토리지(Network Attached Storage, NAS) 운영체제입니다. 강력한 ZFS 파일 시스템을 기반으로 데이터 무결성과 유연성을 제공하며, 파일 공유는 물론 iSCSI와 같은 블록 스토리지 서비스도 지원합니다. 저의 홈랩에서는 TrueNAS Core 버전을 사용하고 있습니다.
    • iSCSI (아이 스카시, Internet Small Computer System Interface): IP 네트워크를 통해 SCSI(Small Computer System Interface) 명령을 전송하는 기술 표준입니다. 원격 서버에 마치 로컬 디스크처럼 블록 스토리지(Block Storage)를 연결할 수 있게 해줍니다. NAS iSCSI 설정은 ESXi가 TrueNAS의 스토리지를 마치 물리 디스크처럼 인식하게 만드는 핵심 단계라고 할 수 있죠.

    2. TrueNAS iSCSI 타겟 설정: 스토리지 준비하기

    이제 TrueNAS에서 ESXi가 사용할 iSCSI 스토리지를 만들어볼 차례입니다. “어렵지 않을까?” 걱정 마세요. 제가 직접 해보니 몇 가지 단계만 잘 따라가면 됩니다.

    단계별 TrueNAS iSCSI 설정

    1. ZFS 데이터셋(Dataset) 생성: 먼저 iSCSI 타겟으로 사용할 ZFS 데이터셋을 만듭니다. 저는 pool01/iscsi-vm이라는 데이터셋을 만들었어요.
    2. iSCSI 서비스 활성화: TrueNAS 웹 GUI에서 Services -> iSCSI로 이동하여 서비스를 활성화하고, Start Automatically를 체크해줍니다.
    3. 포털(Portal) 생성: iSCSI 통신에 사용할 IP 주소와 포트를 지정합니다. Sharing -> Block Shares (iSCSI) -> Portals 탭에서 Add를 클릭하고 TrueNAS의 IP 주소를 입력합니다.
    4. 이니시에이터(Initiator) 및 인증 설정 (선택 사항): 보안을 위해 특정 ESXi 호스트만 접근하도록 제한하거나, CHAP(Challenge-Handshake Authentication Protocol) 인증을 설정할 수 있습니다. 저는 홈랩이라 간단히 모든 이니시에이터(ALL Initiators)를 허용했지만, 프로덕션 환경에서는 반드시 제한해야 합니다.
    5. 익스텐트(Extent, LUN) 생성: 실제 스토리지 공간을 정의합니다. Extents 탭에서 Add를 클릭하고, 이전에 생성한 ZFS 데이터셋을 경로로 지정합니다. 이 익스텐트가 ESXi에 LUN(Logical Unit Number)으로 보이게 됩니다.
    6. 타겟(Target) 생성 및 연결: 마지막으로 익스텐트와 포털을 연결하여 타겟을 만듭니다. Targets 탭에서 Add를 클릭하고, 이름을 지정한 후 생성한 포털과 익스텐트를 연결합니다.

    이렇게 하면 TrueNAS에서 iSCSI 타겟 설정이 완료됩니다. 생각보다 간단하죠? ✅

    TrueNAS 웹 인터페이스에서 iSCSI 타겟을 설정하는 화면

    TrueNAS 웹 인터페이스에서 iSCSI 타겟을 설정하는 모습입니다.

    3. ESXi iSCSI 이니시에이터 설정: 서버 연결하기

    이제 ESXi 호스트가 TrueNAS의 iSCSI 스토리지를 인식하도록 설정해야 합니다. vSphere Client를 이용하면 GUI 환경에서 쉽게 설정할 수 있습니다.

    단계별 ESXi 설정

    1. iSCSI 소프트웨어 어댑터 활성화: vSphere Client에서 ESXi 호스트를 선택하고 Configure -> Storage Adapters로 이동합니다. Add Software Adapter를 클릭하여 Software iSCSI 어댑터를 추가합니다.
    2. 동적 검색(Dynamic Discovery) 설정: 새로 추가된 iSCSI 어댑터를 선택하고 Adapters 탭에서 Dynamic Discovery를 클릭, Add를 눌러 TrueNAS의 iSCSI 포털 IP 주소를 입력합니다.
    3. 네트워크 리스캔(Rescan): Storage Adapters 뷰로 돌아와 Rescan Adapters를 클릭합니다. 잠시 후 TrueNAS의 iSCSI LUN이 새로운 디바이스로 나타나는 걸 확인할 수 있어요.
    4. 새로운 데이터스토어(Datastore) 생성: Storage -> Datastores 탭으로 이동하여 New Datastore를 클릭합니다. VMFS 타입을 선택하고, 방금 검색된 TrueNAS iSCSI LUN을 선택하여 데이터스토어를 생성합니다. 원하는 이름을 지정하고 VMFS 버전을 선택하면 됩니다.

    자, 이제 ESXi 호스트가 TrueNAS의 iSCSI 스토리지를 사용할 준비가 끝났습니다. “진짜 되는 거야?” 싶으시겠지만, 여기까지 잘 오셨다면 거의 다 된 겁니다! 🎉

    4. 가상머신 마이그레이션: iSCSI 스토리지 이전의 핵심

    가장 중요한 단계, 가상머신 마이그레이션입니다. ESXi 환경에서는 Storage vMotion(스토리지 v모션)이라는 멋진 기능 덕분에 가상머신을 끄지 않고도 스토리지를 이전할 수 있습니다. 하지만 vCenter Server가 없는 홈랩 환경에서는 콜드 마이그레이션(Cold Migration, VM 종료 후 이전)을 해야 할 수도 있어요.

    Storage vMotion을 이용한 마이그레이션 (vCenter Server 환경)

    1. vSphere Client에서 마이그레이션할 가상머신을 선택합니다.
    2. 가상머신을 오른쪽 클릭하고 Migrate를 선택합니다.
    3. Change storage only 옵션을 선택한 후 Next를 클릭합니다.
    4. 대상 데이터스토어로 TrueNAS iSCSI를 통해 생성한 새 데이터스토어를 선택합니다.
    5. 설정을 확인하고 Finish를 클릭하면 마이그레이션이 시작됩니다.

    콜드 마이그레이션을 이용한 마이그레이션 (vCenter Server 없는 환경)

    1. 마이그레이션할 가상머신을 종료(Power Off)합니다.
    2. vSphere Client에서 가상머신을 선택하고 Migrate를 선택합니다.
    3. Change storage only 또는 Change compute resource and storage 옵션을 선택합니다. (호스트도 변경할 경우)
    4. 대상 데이터스토어로 TrueNAS iSCSI 데이터스토어를 선택하고 마이그레이션을 진행합니다.

    마이그레이션 진행 상황은 vSphere Client의 Recent Tasks에서 확인할 수 있습니다. 저도 처음엔 “이게 진짜 되는 건가?” 반신반의했는데, 진행률이 올라가는 걸 보니 너무 뿌듯하더라고요. 😊

    VMware vSphere Client에서 가상머신 스토리지 마이그레이션이 진행되는 화면입니다.

    5. iSCSI 마이그레이션 중 겪었던 문제들과 해결법 ⚠️

    “13년차 엔지니어도 삽질을 하나요?” 네, 물론이죠! 저도 이 과정에서 몇 번의 난관에 부딪혔고, 덕분에 많은 것을 배웠습니다. 😅

    • 네트워크 설정 문제: 처음에는 마이그레이션 속도가 너무 느려서 답답했어요. 알고 보니 ESXi의 iSCSI 전용 VMkernel 어댑터에 점보 프레임(Jumbo Frames)을 설정하지 않았더라고요. MTU(Maximum Transmission Unit) 값을 9000으로 올리니 속도가 훨씬 빨라졌습니다. TrueNAS와 ESXi 양쪽 모두 설정해야 한다는 점을 잊지 마세요! 💡

      \n# ESXi CLI에서 MTU 설정 예시 (vmnic0이 iSCSI용 NIC일 경우)\nesxcli network ip interface set -i vmkX -m 9000\n    
    • iSCSI 타겟/이니시에이터 불일치: TrueNAS에서 설정한 iSCSI ACL(Access Control List)이나 CHAP 인증 정보가 ESXi와 일치하지 않아 연결이 안 되는 경우가 있었습니다. “왜 안 되는 거야!” 하며 몇 시간을 헤맸는데, 결국 사소한 오타 때문이었죠. 설정값을 꼼꼼히 확인하는 것이 정말 중요합니다.
    • TrueNAS 방화벽: 간혹 TrueNAS의 내장 방화벽이 iSCSI 트래픽을 막는 경우가 있어요. iSCSI 기본 포트(3260)가 열려 있는지 확인하거나, ESXi 호스트의 IP를 허용 목록에 추가해야 합니다.

    이런 문제들을 해결하면서 “아, 이래서 경험이 중요하구나” 싶더라고요. 멘토처럼 알려드리는 제 글이 여러분의 삽질을 조금이나마 줄여주기를 바랍니다.

    6. iSCSI 마이그레이션 검증: 드디어 성공했습니다! 🎉

    모든 설정과 마이그레이션이 끝나고, 이제 결과를 확인할 차례입니다. “잘 작동하는지”를 보는 건 엔지니어의 가장 큰 기쁨이죠.

    1. vSphere Client에서 확인: 마이그레이션된 가상머신의 Summary 탭을 확인하면 스토리지가 새로운 TrueNAS iSCSI 데이터스토어로 변경된 것을 볼 수 있어요. 가상머신을 구동해보세요!
    2. TrueNAS 대시보드 확인: TrueNAS 웹 GUI의 Reporting 또는 Dashboard에서 iSCSI 서비스의 활성화 여부, 연결된 이니시에이터 수, 그리고 스토리지 I/O(Input/Output) 성능 그래프를 통해 실제 데이터 통신이 이루어지고 있는지 확인할 수 있습니다.
    3. 성능 모니터링: 가상머신 내부에서 디스크 I/O 벤치마크 툴(예: CrystalDiskMark, fio)을 사용하여 성능이 예상대로 나오는지 확인해보는 것도 좋습니다.

    제가 직접 확인해보니, 기존 로컬 스토리지 대비 디스크 I/O 성능이 크게 개선된 것을 체감할 수 있었습니다. 특히 여러 가상머신이 동시에 디스크를 사용하는 환경에서 더욱 빛을 발하더라고요. iSCSI VM 마이그레이션은 정말 성공적인 선택이었습니다!

    TrueNAS 대시보드에서 iSCSI 스토리지의 실시간 성능을 모니터링하는 대시보드

    TrueNAS 대시보드에서 iSCSI 스토리지의 실시간 성능을 모니터링하는 모습입니다.

    7. 마무리: ESXi iSCSI 마이그레이션 과정에서 얻은 교훈

    VMware ESXi 가상머신을 TrueNAS iSCSI 스토리지로 마이그레이션하는 과정은 쉽지 않았지만, 그만큼 얻은 것도 많습니다. 유연한 스토리지 확장, 향상된 성능, 그리고 무엇보다 “내가 해냈다!”는 성취감이 가장 큰 소득이었죠.

    이 경험을 통해 저는 다음과 같은 교훈을 얻었습니다.

    • 사전 계획의 중요성: 네트워크 구성, IP 주소 할당, 인증 방식 등 모든 설정을 미리 계획하는 것이 삽질을 줄이는 지름길입니다.
    • 문서화의 생활화: 삽질 과정을 기록하고 해결책을 문서화하면 다음번에 비슷한 문제가 발생했을 때 시간을 크게 절약할 수 있습니다. (사실 저도 이 글을 쓰면서 다시 한번 정리하는 거거든요 ㅎㅎ)
    • 오픈소스의 힘: TrueNAS 같은 오픈소스 솔루션은 상용 제품 못지않은 강력한 기능을 제공하며, 홈랩 환경에서 다양한 실험을 가능하게 합니다.

    혹시 여러분도 가상머신 스토리지 마이그레이션을 고민하고 계셨다면, TrueNAS iSCSI를 한 번 고려해보세요. 물론 처음엔 헷갈릴 수 있지만, 제 경험담이 여러분의 길을 밝혀주는 작은 등불이 되기를 바랍니다. 다음번에는 ESXi와 TrueNAS를 활용한 고가용성(High Availability) 구성에 대해서도 다뤄볼 예정이니 기대해주세요! 👍