NIC 구성 파일의 자동 복원 재시작 문제를 완벽하게 해결

문서 목록
  • 설명
  • 솔루션
  • 방식1
  • 방식2
  • 설명
    가상 기기가 /etc/sysconfig/network-scripts/ifcfg-eth0 네트워크 카드 파일을 수정하여 저장한 후 네트워크 서비스를 다시 시작하는 것systemctl restart network은 IP가 존재하고 정상적으로 사용할 수 있는 것이다.그러나 시스템을 재부팅한 후ifcfg-eth0 내용이 리셋되었다.프로필을 열면 아마도 아래와 같은 내용과 맨 위에 주석이 한 줄 있을 것입니다. 아마도 클라우드-init가 자동으로 만들어져서 이 파일을 편집하지 말라는 뜻일 것입니다.
    # Created by cloud-init on instance boot automatically, do not edit.
    #
    BOOTPROTO=dhcp
    DEVICE=eth0
    HWADDR=fe:fc:fe:46:95:ba
    ONBOOT=yes
    TYPE=Ethernet
    USERCTL=no
    
    cloud-initopenstack의 구성 요소이기 때문에 이 문제는 openstack 가상 기기나 설정openstack된 가상 기기에서 발생한다!!!(이런 문제는 아마도 Openstack이 설정한 ip 구간일 것이다. 이 가상 기기dhcp는 얻을 수 없기 때문에 ip는 비어 있다) 그래서 cloud-init의 설정 파일은 설명하지 않겠다. 나는 일반 가상 기기인데 당초에 설정openstack을 해서 실험을 했는데 깨끗하게 마운트 해제하지 못했나 봐. 남겨진 문제가 있어 인터넷 카드가 리셋되는 문제가 발생했다.
    해결 방법
    방식 1
    이것은 제가 인터넷에서 찾은 절차입니다. 제가 직접 테스트할 수 없습니다. 아마도 제 오픈스틱이 이미 사용되지 않았기 때문일 것입니다. 구성 요소가 완전하지 않아서 무효입니다. 만약에 오픈스틱이 정상적으로 사용되고 있다면 사용할 수 있는 방식은 하나입니다.
  • 자체 네트워크 관리 도구를 종료하려고 시도했습니다.
  • [root@compute1 ~]# systemctl stop NetworkManager
    [root@compute1 ~]# systemctl disable NetworkManager
    

    유효하지 않습니다.다시 시작하면ifcfg-eth0 내용이 리셋됩니다.
  • 찾기 서비스: systemctl list-unit-files | grep cloud* 다음 4가지가 enable
  • 인지 여부
    [root@compute1 ~]# systemctl list-unit-files | grep cloud*
    cloud-config.service                          enabled
    cloud-final.service                           enabled
    cloud-init-local.service                      enabled
    cloud-init.service                            enabled 
    cloud-config.target                           static  
    
  • cloud-init 서비스 접속망 금지
  • [root@compute1 ~]$vim/etc/cloud/cloud.cfg
    #          
    network:
      config:disabled
    
  • 정리,cloud-init 프로필 검사
  • [root@compute1 network-scripts]$ cd /usr/lib/python2.7/site-packages/cloudinit/sources/
    [root@compute1 network-scripts]$ rm -rf __init__.pyc 
    [root@compute1 network-scripts]$ rm -rf __init__.pyo
    [root@compute1 network-scripts]$ rm -rf /var/lib/cloud/* 
    [root@compute1 network-scripts]$ rm -rf /var/log/cloud-init* 
    [root@compute1 network-scripts]$ cloud-init init --local
    [root@compute1 network-scripts]$ cat /etc/sysconfig/network-scripts/ifcfg-eth0
    [root@compute1 network-scripts]$ reboot
    

    방식 2
    나의 이 방식은 비교적 폭력적이다. 왜냐하면 나는 openstack를 쓰지 않기 때문이다. 그러나 나의 이 문제는 cloud.init가 일으킨 문제이기 때문에 나는 cloud.init와의 모든 서비스를 멈추고 켜는 것을 닫는다!
    [root@compute1 network-scripts]$systemctl disable cloud-init-local cloud-init cloud-config cloud-final 
    [root@compute1 network-scripts]$systemctl stop cloud-init-local cloud-init cloud-config cloud-final
    [root@compute1 ~]#
    [root@compute1 ~]# systemctl list-unit-files | grep cloud*
    cloud-config.service                          disabled
    cloud-final.service                           disabled
    cloud-init-local.service                      disabled
    cloud-init.service                            disabled
    cloud-config.target                           static  
    

    네트워크 설정, 서버 리셋, ip 여전히 존재, 문제 해결!

    좋은 웹페이지 즐겨찾기