Photon OS
이하 본문의 링크가 작동하지 않는다면 미러를 참고한다.
1. Installation
vmware/photon에서 원하는 옵션으로 준비한다. 미러에는 ova파일이 준비되어있다. VM 설정에서 네트워크 등의 값들을 설정해주자.
설정을 완료하고 부팅하면 초기 계정은 root / changeme로 설정되어 있음이 참고 칸에 작성되어 있다.
2. Settings
Docker
Photon은 패키지 관리자로 yum을 사용한다. 업데이트부터 진행하자.
yum update
Docker는 설치되어 있지만, Docker-compose는 설치되어있지 않다. 그래도 혹시 모르니 있는지 확인해보자.
docker compose
docker-compose
없다면 설치를 진행한다.
yum install docker-compose
설치가 완료되면 실행하고 호스트가 켜지면 자동으로 켜지도록 등록하자.
systemctl start docker
systemctl enable docker
NFS Mount
Photon OS가 클라이언트인 시나리오를 가정한다. 어느쪽이든 nfs-utils를 설치해야한다.
yum update
yum install nfs-utils
서버측 설정이 완료되었다고 가정하고, 아래와 같은 명령어를 통해 기존 디렉토리에 NFS 마운트가 가능하다.
mount -t nfs storage.lab:/mnt/... /opt/stacks/...
설정이 완료되면, 부팅 시에 자동으로 마운트되게 한다.
vi /etc/fstab
# Add line
# storage.lab:/mnt/... /opt/stacks/... nfs defaults 0 0
3. Troubleshooting
Partition Extend
기존에 VM에 할당한 디스크의 크기를 늘렸지만 VM 내부에서 파티션을 확장해야 늘어난 공간을 유효하게 사용할 수 있다. 물론 다른 파티션으로 붙히는 방법도 있지만 관리의 간편함을 위해선 파티션의 확장이 필요하다.
우선 확장한 공간의 인식여부를 확인한다.
lsblk
다음은 파티션 테이블의 수정이다. 사용하는 parted 도구는 설치되어있지 않을 수도 있으니 설치해주자.
yum install parted
parted /dev/sdX # 변경된 디스크
# 이하는 parted 실행 중
print
resize 1 100% # 1이 들어간 자리에는 partition number를 기입한다.
# resizepart 1 100% - resize 명령어가 업데이트의 이유로 허용되지 않는다면 이 명령어를 사용한다.
quit
이제 파일 시스템을 확장하면 된다.
# ext4이기에 resize2fs를 사용한다.
resize2fs /dev/sdX1
다시 lsblk 또는 df를 이용해 파티션이 제대로 확장되었는지 확인한다.
Accept SSH
예를들어... 현재 Photon OS의 IP는 192.168.20.30이며 VPN을 적용한 외부 데스크탑의 IP는 192.168.2.3이라고 가정하자. 이런 상황에서 외부 데스크탑에선 Photon OS에 SSH는 물론이고, ping조차도 날리지 못한다. 하지만 Photon OS에서 데스크탑으로 ping을 날린다는 반대 상황은 가능한 상황에 조우했다.
root로 SSH에 로그인하지 못하도록 하는 것이 Photon OS의 설정이라고 메뉴얼엔 나와있지만... 나의 경우엔 이는 이미 허용이 되어있었으며, 실제로는 Photon OS의 엄격한 보안 정책에 입각한 iptables의 세팅 때문이었다. 따라서, 아래 명령 한마디면 해결된다.
iptables -P INPUT ACCEPT
하지만 이는 Photon OS의 보안을 떨어뜨리므로 적용할 때는 잘 생각하도록 하자.