VMware는 1998년부터 시스템 가상화 기술을 선도해 온 기업으로, 현재는 Broadcom에 인수되었습니다. 인수 이후 개인 사용자는 VMware Workstation Pro를 완전히 무료로 사용할 수 있게 되었습니다.
Docker는 리눅스 커널 기능을 기반으로 동작하기 때문에, 윈도우 환경에서 제대로 활용하려면 리눅스 환경이 반드시 필요합니다. 이때 윈도우를 지우지 않고도 리눅스를 자유롭게 사용할 수 있는 가장 편리한 방법이 바로 가상화이며, 그 대표적인 도구가 VMware Workstation입니다.
이번 실습에서는 CentOS Stream 9 한 대를 깔끔하게 설치한 뒤, 추후 클론 기능을 활용해 여러 대를 복제하여 Docker Swarm이나 Kubernetes와 같은 다중 노드 실습까지 확장할 예정입니다.
요즘은 Hyper-V나 WSL2를 사용하는 경우도 많지만, 네트워크 설정을 자유롭게 제어해야 하는 실무형 교육에서는 여전히 VMware Workstation이 가장 직관적이고 편리합니다.
VMware Workstation Pro
기본 용어 정리
호스트 OS (Host OS): 실제 컴퓨터에 설치된 운영체제 (예: Windows 11)
게스트 OS (Guest OS): 가상머신 안에 설치되는 운영체제 (예: CentOS Stream 9)
VMware Workstation에서 새 가상머신 생성하기
File → New Virtual Machine 선택
New Virtual Machine Wizard에서 Typical (recommended) 유지 후 Next
운영체제는 나중에 설치할 예정이므로 “I will install the operating system later” 선택
Guest OS는 Linux → CentOS 8 64-bit 선택 (CentOS 9는 아직 목록에 없으므로 8 선택해도 무방)
가상머신 이름과 저장 위치 지정
Maximum disk size는 100 GB, Store virtual disk as a single file 선택
녹색 재생 버튼을 눌러 가상머신을 실행한 후, Install CentOS Stream 9를 선택합니다.화면 클릭시 마우스가 리눅스쪽으로 넘어감으로 방향키로 선택합니다.
언어: 한국어 선택
설치 요약 화면에서 ‘!’ 표시가 있는 항목은 반드시 설정
설치 목적지: 100 GiB 확인 후 완료
설치 중 네트워크 및 호스트 이름 설정
네트워크와 호스트 이름 → 이더넷(ens160) 토글 활성화
설정 버튼 클릭 → IPv4 설정을 수동으로 변경 → 설정 선택
호스트 이름:docker1.example.com
DNS 서버: 168.126.63.1
게이트웨이: 192.168.2.254
(주소: 192.168.2.10 / 넷마스크: 24/게이트웨이:192.168.2.254 ) Add로 추가
root계정, 사용자 계정 설정 (비밀번호는 잊지 않도록 주의 합니다.)
root 비밀번호 설정 후설치 시작클릭 → 약 10~15분 후 재부팅(이 재부팅은 가상머신 안에서만 이루어짐)
ㅑㅔ
설치 후 네트워크 연결 확인
재부팅 후 root로 로그인하고 터미널에서 다음 명령어를 차례대로 실행합니다.
ip address # 네트워크 인터페이스 확인
ip route # default gateway 192.168.2.254 확인
cat /etc/resolv.conf # nameserver 168.126.63.1 확인
ping -c 3 168.126.63.1 # DNS 서버 연결 테스트
nslookup www.google.com # 도메인 → IP 변환 확인
firefox & # 브라우저로 구글 접속 확인
ip address 명령어
ip address 명령어에서 ens160과 192.168.2.255를 확인해야 하는 이유
리눅스에서 네트워크 설정을 확인하거나 문제를 해결할 때 ip address 명령어를 자주 사용합니다. 이 명령어를 입력하면 여러 네트워크 인터페이스와 그에 할당된 IP 주소 정보가 출력되는데요, 그중에서도 ens160과 192.168.2.255 같은 정보는 꼭 확인해야 합니다.
1. ens160: 네트워크 인터페이스 이름 확인
ens160은 서버나 컴퓨터에 연결된 실제 또는 가상 네트워크 장치의 이름입니다.
네트워크 인터페이스는 컴퓨터가 외부와 통신할 수 있게 해주는 출입구 역할을 합니다.
이 이름을 정확히 아는 것은 IP 주소를 설정하거나 네트워크 상태를 점검할 때 매우 중요합니다.
예를 들어, 여러 개의 네트워크 인터페이스가 있을 경우 어떤 장치를 조작할지 구분할 수 있기 때문입니다.
2. 192.168.2.255: IP 주소와 브로드캐스트 주소 확인
192.168.2.255는 흔히 네트워크의 브로드캐스트 주소를 의미합니다.
브로드캐스트 주소는 같은 네트워크에 연결된 모든 장치에게 메시지를 보내는 데 사용됩니다.
이 주소가 제대로 설정되어 있어야 네트워크 내 장치들 간에 올바른 통신이 가능합니다.
IP 주소 범위와 서브넷 마스크에 따라 브로드캐스트 주소가 달라지므로, 이 정보가 맞는지 확인하는 것이 네트워크 문제를 예방하는 데 중요합니다.
ip route 명령어
ip route 명령어와 cat /etc/resolv.conf로 네트워크 설정 확인하기
네트워크 문제를 해결하거나 환경을 점검할 때는 여러 가지 정보를 확인하는 것이 중요한데요, 그중에서 특히 ip route 명령어로 나오는 192.168.2.254와 cat /etc/resolv.conf 파일에 적힌 nameserver 168.126.63.1 값은 반드시 확인해야 할 핵심 요소입니다.
1. ip route 명령어에서 192.168.2.254 확인하기
ip route 명령어는 현재 시스템의 라우팅 테이블, 즉 데이터 패킷이 어느 경로를 통해 나갈지 알려주는 정보를 보여줍니다.
여기서 192.168.2.254는 흔히 네트워크의 기본 게이트웨이(Default Gateway) 주소를 의미합니다.
기본 게이트웨이는 내부 네트워크에서 외부 네트워크(예: 인터넷)로 나가는 출입구 같은 역할을 하죠.
이 주소가 올바르게 설정되어 있어야 네트워크 트래픽이 제대로 외부로 나가고 들어올 수 있습니다.
만약 이 기본 게이트웨이가 잘못되거나 설정이 빠져있으면 인터넷 연결이 되지 않는 문제가 발생할 수 있기 때문에 꼭 확인해야 합니다.
/etc/resolv.conf 파일은 시스템이 도메인 이름을 IP 주소로 변환할 때 참고하는 DNS 서버 정보를 담고 있습니다.
nameserver 168.126.63.1은 DNS 서버의 IP 주소로, 컴퓨터가 인터넷 주소(예: www.google.com)를 숫자로 된 IP 주소(예: 172.217.164.110)로 바꾸어 주는 역할을 합니다.
이 서버 주소가 정확하지 않거나 응답하지 않으면, 인터넷 사이트에 접속할 때 도메인 이름을 찾을 수 없어 접속이 불가능해집니다.
따라서 네트워크가 정상 작동하는지 확인할 때 이 nameserver 주소가 올바르게 설정되어 있는지 반드시 점검해야 합니다.
실습용 기본 환경 구성
wget -q https://raw.githubusercontent.com/ncs10322/docker/main/ping.sh
sh ping.sh # 네트워크 종합 테스트
wget -q https://raw.githubusercontent.com/ncs10322/docker/main/setup.sh
sh setup.sh # 기본 환경 자동 구성
setup.sh 실행 후 확인할 사항
sestatus → SELinux가 permissive인지 확인
systemctl status firewalld → disabled/inactive인지 확인 (실습용)
ls → docker 디렉토리 생성 확인
source .bashrc → 프롬프트 색상 변경 확인
1. ping.sh 스크립트 — 네트워크 종합 테스트
이 스크립트는 여러 네트워크 연결 상태를 자동으로 테스트해 줍니다.
예를 들어, 인터넷 연결 여부, DNS 조회 가능성, 특정 서버와의 통신 상태 등을 한번에 점검할 수 있죠.
수동으로 하나하나 테스트할 필요 없이 빠르고 정확하게 네트워크 상태를 진단할 수 있어 문제 해결이 훨씬 수월해집니다.
'sh ping.sh'입력시 네트워크 테스트가 실시 됨
쉘을 통해 ping을 테스트 하는 문서가 들어 있음
2. setup.sh 스크립트 — 기본 환경 자동 구성
네트워크 관련 기본 설정, 필요한 패키지 설치, 시스템 환경 변수 설정 등 여러 작업을 자동으로 처리해 줍니다.
특히 네트워크 작업에 필요한 도구나 라이브러리를 설치하고 설정하는 데 유용합니다.
사용자가 일일이 설정하는 실수를 줄이고, 일관된 환경을 유지할 수 있습니다.
ls와 ping 테스트
ls로 setup.sh와 ping.sh확인
sestatus로 permissive확인
오늘 공부한 내용 요약
VMware Workstation Pro가 개인 사용 무료화되면서 윈도우에서 리눅스 실습 환경을 구축하는 최적의 도구가 되었다
호스트 OS와 게스트 OS의 개념 이해
VMnet8 NAT 네트워크를 수동으로 설정하여 고정 IP 환경 구성
CentOS Stream 9 설치 및 정적 IP, DNS, 호스트 이름 설정
설치 후 네트워크 연결성 종합 테스트
실습용 기본 환경을 자동으로 구성하는 setup.sh 활용
이제 깔끔한 CentOS Stream 9 한 대가 완성되었습니다. 다음 시간에는 이 가상머신을 클론해서 Docker Swarm, Kubernetes 다중 노드 실습 환경을 만들어보겠습니다.