시작되지 않는 SmartOS VM 문제 해결

시작되지 않는 SmartOS VM 문제 해결

저는 Ubuntu KVM이 내장된 SmartOS 20130405T010449Z를 실행하고 있습니다. Ubuntu VM은 몇 달 동안 정상적으로 실행된 후 물리적 하드웨어를 재부팅한 후 VM이 더 이상 시작 시 네트워크에 연결되지 않으므로 SSH를 통해 상태를 확인할 수 없습니다.

SmartOS에 로그인하고 VM을 시작할 수 있습니다.

$ vmadm start [uuid]

실행 중인지 확인합니다.

$ vmadm list
UUID             TYPE   RAM     STATE     ALIAS
[uuid]           KVM    10240   running   steve

그리고 핑을 보내세요:

$ ping steve
steve is alive

하지만 VM 콘솔에 접속하려고 하면 명령이 영원히 중단됩니다.

$ vmadm console [uuid]
[hangs forever]

SmartOS 내부에서 SSH를 시도하면 동일한 결과가 나타납니다.

$ ssh steve
[hangs forever]

Ubuntu VM의 IP 주소가 네트워크에 표시되지 않기 때문에 네트워크의 다른 컴퓨터에서 SSH를 사용할 수 없습니다.

이 VM에 액세스하려면 다음에 무엇을 시도해야 합니까?

답변1

좋아, 결국 VM에서 내가 원하는 것을 복구했으므로 후손을 위해 내가 한 일은 다음과 같습니다.

먼저 SmartOS를 업데이트했습니다. 처음에는 데이터 손실이 두려워 주저했지만 업그레이드는 전혀 고통스럽지 않았습니다. 새 USB 스틱에 새 버전을 넣고 종료하고 스틱을 교체한 다음 재부팅했습니다.

업데이트 후에도 VM에 연결할 때 vmadm console여전히 ssh중단되므로 핵심 통찰력(이전에는 이 사실을 몰랐습니다) 대신 VNC를 통해 연결하는 것이 었습니다.

root@smartos $ vmadm info [UUID] vnc
{
  "vnc": {
    "host": "192.168.1.7",
    "port": 64762,
    "display": 58862
  }
}

me@anotherMachine $ xtightvncviewer 192.168.1.7::64762

거기서 문제가 즉시 드러났습니다. VM이 부팅 메뉴에서 멈춰 부팅 옵션이 선택되기를 기다리고 있었습니다. 기본 옵션을 선택했고, 안녕하세요, VM이 완벽하게 정상으로 나타났습니다.

하지만 문제가 있었습니다. 아마도 SmartOS를 업데이트했을 때 "외부" NIC가 없어져서 외부 세계로 연결되는 채널 없이 VM이 나타났습니다. /usbkey/configSmartOS에서 수동으로 편집하고 누락된 다음 줄을 추가 해야 했습니다 .

external_nic=[MAC address]
external0_ip=192.168.1.20
external0_netmask=255.255.255.0
external0_gateway=192.168.1.1

그런 다음 외부 NIC를 VM에 추가합니다.

root@smartos $ cat add_nic.json
{
    "add_nics": [
        {
            "physical": "net1",
            "index": 1,
            "nic_tag": "external",
            "mac": "[MAC address]",
            "ip": "192.168.1.8",
            "netmask": "255.255.255.0",
            "gateway": "192.168.1.1"
        }
    ]
}
root@smartos $ cat add_nic.json | vmadm update [UUID]

구성 변경 사항을 적용하려면 SmartOS를 재부팅해야 했고, 그런 다음 VM에 네트워크 인터페이스가 나타났습니다.

주의 사항: vmadm console어떤 이유로든 여전히 작동하지 않습니다. 여전히 무기한 정지되어 있습니다. 그러나 ssh steveSmartOS 내부에서 작동하며 네트워크의 다른 컴퓨터에서 IP 주소로 SSH를 통해 연결할 수 있습니다.

관련 정보