CentOS7 Machine ID 변경하기

System Story/CentOS 7 2016.11.28 16:17


Cloud 즉 Hypervisor 환경에서는 Guest OS를 매번 수동으로 설치 하지 않고, 기존 VM을 복제 하거나 Template Image를 활용하여 OS를 생성하게 된다.


하지만 VM 복제방식을 통해 Guest OS 설치를 진행 할 경우, System에 구성되는 논리적인 PCI Device나 NIC등의 PCI BUS 주소 및 Mac Address 정보등이 동일하게 구성되기 때문에 VM간 충돌 문제를 야기 할 수 있다.


물론 기본적으로 Hypervisor에서 Guest OS복제 모드를 선택 수행할때 NIC 초기화등의 옵션를 제공하기 때문에 Network 상에 충돌등의 문제는 되지 일어나지 않으나, Redhat 계열 Linux OS가 버전 7.x 로 올라감에 따라 새로운 문제가 생기게 되었다.


RHEL7 또는 CenOS7 버전에서 아래와 같이 hostnamectl 이란 명령을 수행해 보자.


[root@controller ~]# 

[root@controller ~]# hostnamectl

   Static hostname: controller

         Icon name: computer-vm

           Chassis: vm

        Machine ID: 7eb03003022943be90ea8d57160b6f3f

           Boot ID: 7f9f2ce1b31b40688cc1ec57127a5122

    Virtualization: vmware

  Operating System: CentOS Linux 7 (Core)

       CPE OS Name: cpe:/o:centos:centos:7

            Kernel: Linux 3.10.0-327.36.3.el7.x86_64

      Architecture: x86-64

[root@controller ~]# 

[root@controller ~]# 



상기 OS를 Hypervisor에서 복제하여 또 하나의 Guest OS를 구성한 후 동일하게 hostnamectl을 수행해 보자.


[root@compute1 ~]# 

[root@compute1 ~]# hostnamectl

   Static hostname: compute1

         Icon name: compute1

           Chassis: vm

        Machine ID: 7eb03003022943be90ea8d57160b6f3f

           Boot ID: 76f3619bb8264e4f977f039d6e1a26de

    Virtualization: vmware

  Operating System: CentOS Linux 7 (Core)

       CPE OS Name: cpe:/o:centos:centos:7

            Kernel: Linux 3.10.0-327.36.3.el7.x86_64

      Architecture: x86-64

[root@compute1 ~]# 

[root@compute1 ~]# 


상기 노란색으로 표기한 Machine ID란 부분이 중복되는 것을 알 수 있다.


Machine ID 는 Redhat Linux 계열 7.x 에 새롭게 추가된 고유의 기계 식별자로서 네트워크상에서 고유 ID를 이용해 제어하거나 식별할 때 사용하는 ID로 일반적인 서비스에는 영향이 없으나 해당 ID를 필요로 하는 경우에 문제가 될 수 있다.


이에 Cloud 환경에서 복제된 Linux VM (Guest OS)의 Machine ID를 초기화 하는 과정을 알아보고자 한다.



1. 기존 Machine ID 참조 파일 확인


[root@compute1 ~]# 

[root@compute1 ~]# cat /etc/machine-id

7eb03003022943be90ea8d57160b6f3f

[root@compute1 ~]# 



2. machine-id 참조 파일 삭제


[root@compute1 ~]# 

[root@compute1 ~]# rm -f /etc/machine-id

[root@compute1 ~]# 

[root@compute1 ~]#  



3. machine-id 새로 생성 및 확인


[root@compute1 ~]# 

[root@compute1 ~]# systemd-machine-id-setup 

Initializing machine ID from random generator.

[root@compute1 ~]# 

[root@compute1 ~]# cat /etc/machine-id

2b2a3e666adf43e582a618415c6f35f8

[root@compute1 ~]# 

[root@compute1 ~]# 

[root@compute1 ~]# hostnamectl

   Static hostname: compute1

         Icon name: compute1

           Chassis: vm

        Machine ID: 2b2a3e666adf43e582a618415c6f35f8

           Boot ID: 76f3619bb8264e4f977f039d6e1a26de

    Virtualization: vmware

  Operating System: CentOS Linux 7 (Core)

       CPE OS Name: cpe:/o:centos:centos:7

            Kernel: Linux 3.10.0-327.36.3.el7.x86_64

      Architecture: x86-64

[root@compute1 ~]# 

[root@compute1 ~]# 










Trackbacks 0 : Comments 0

Write a comment