Droplet has no interfaces after update?

May 10, 2017 861 views
Configuration Management Networking Ubuntu 16.04

I'm unable to connect to the droplet via SSH, the websites hosted on the droplet and the MySQL database on the droplet after updating. Around 2pm (-0400) I performed an update using apt update; apt upgrade -y followed by a droplet reboot. Since then I've been unable to access the droplet. The only access I have is through the web console.

What I've tried

  • Restarted the sshd service as suggested in another community thread

  • Checked if config
    Results:

    lo             Link encap:Local Loopback
                   inet addr:127.0.0.1    Mask:255.0.0.0
                   inet6 addr: ::1/128  Scope:Host
                   UP LOOPBACK RUNNING   MTU:65536    Metric:1
                   RX packets:160  errors:0  dropped:0  overruns:0  frame:0
                   TX packets:160  errors:0  dropped:0  overruns:0  carrier:0
                   collisions:0  txqueue1en:1
                   RX bytes:11840 (11.8 KB)      TX bytes:11840 (11.8 KB)
    
  • Tried manually restarting the networking service with service networking restart
    Returns:
    Job for networking.service failed because the control process exited with error code. See "systemctl status networking.service" and "journalctl -xe" for details.

  • Checked both of those, same result. "Cannot find device eth0, Failed to bring up eth0"

  • Tried turning it off and turning it back on

  • Tried other suggestions from StackOverflow, Ubuntu Forums and the DO community. Everything is either out of date, not working or doesn't help because it's for a different OS.

I've submitted a ticket a few hours ago, but I have yet to receive a reply and I've been unable to access any of the resources on the droplet for almost 9 hours now. If anyone has had this problem and resolved it, I'd love to know how you did it.

6 Answers
hansen May 10, 2017
Accepted Answer

@markwatneyy

Okay, did you confirm that you were on a previous kernel after reboot?

It's quite difficult to know what went wrong. I would probably recommend that you start the Recovery Image (you have to request that through support) and transfer data to a new droplet.
I'm guessing you don't have backups running?

  • @markwatneyy Have you tried to power off the droplet and start again? It is a little different than rebooting from within.

    • @hansen

      I did confirm that I was on the previous kernel after a reboot. I've also tried power-cycling from the web interface as well. I do have backups but they're run once a week and mirrored to another instance and local storage (own device). Restoring a backup isn't the best option right now.

      • @markwatneyy
        You're really stuck in a bad situation. I would recommend that you add a comment to your support ticket requesting the Recovery Image, since it will give you access to your data and has a connection, so you can transfer the data+configuration to another droplet.

Hi @markwatneyy

It sounds like an update that went really wrong.
If you run the service networking restart again, can you then post the last 50 lines from your syslog:

tail -50 /var/log/syslog

Also, let's have a look at /etc/networking/interfaces to see if it still contains your eth0 setup and the correct IP-address.

The last 50 lines from the syslog:

May 10 02:24:59 endpoint1 do-agent[1366]: 2017/05/10 02:24:59 Do-Agent version 0.4.11
May 10 02:24:59 endpoint1 do-agent[1366]: 2017/05/10 02:24:59 Do-Agent build HEAD.b794b93
May 10 02:24:59 endpoint1 do-agent[1366]: 2017/05/10 02:24:59 Architechture: amd64
May 10 02:24:59 endpoint1 do-agent[1366]: 2017/05/10 02:24:59 Operating System: linux
May 10 02:24:59 endpoint1 do-agent[1366]: 2017/05/10 02:24:59 Local Repository Path Override: /run/digitalocean-agent
May 10 02:24:59 endpoint1 do-agent[1366]: 2017/05/10 02:24:59 Unable to read credentials: Get http://169.254.169.254/metadata/v1/auth-token: dial tcp 169.254.169.254:80: connect: network is unreachable
May 10 02:24:59 endpoint1 do-agent[1366]: 2017/05/10 02:24:59 do-agent requires a DigitalOcean host
May 10 02:24:59 endpoint1 systemd[1]: do-agent.service: Main process exited, code=exited, status=1/FAILURE
May 10 02:24:59 endpoint1 systemd[1]: do-agent.service: do-agent.service: Unit entered failed state.
May 10 02:24:59 endpoint1 systemd[1]: do-agent.service: Failed with result 'exit-code'.
May 10 02:24:59 endpoint1 systemd[1]: do-agent.service: Service hold-off time over, scheduling restart.
May 10 02:24:59 endpoint1 systemd[1]: do-agent.service: Stopped DigitalOcean agent
May 10 02:24:59 endpoint1 systemd[1]: do-agent.service: Started DigitalOcean agent
May 10 02:24:59 endpoint1 do-agent[1374]: 2017/05/10 02:24:59 Do-Agent version 0.4.11
May 10 02:24:59 endpoint1 do-agent[1374]: 2017/05/10 02:24:59 Do-Agent build HEAD.b794b93
May 10 02:24:59 endpoint1 do-agent[1374]: 2017/05/10 02:24:59 Architecture: amd64
May 10 02:24:59 endpoint1 do-agent[1374]: 2017/05/10 02:24:59 Operating System: linux
May 10 02:24:59 endpoint1 do-agent[1374]: 2017/05/10 02:24:59 Local Repository Path Override: /run/digitalocean-agent
May 10 02:24:59 endpoint1 do-agent[1374]: 2017/05/10 02:24:59 Unable to read credentials: Get http://169.254.169.254/metadata/v1/auth-token: dial tcp 169.254.169.254:80: connect: network is unreachable
May 10 02:24:59 endpoint1 do-agent[1374]: 2017/05/10 02:24:59 do-agent requires a DigitalOcean host
May 10 02:24:59 endpoint1 systemd[1]: do-agent.service: Main process exited, code=exited, status=1/FAILURE
May 10 02:24:59 endpoint1 systemd[1]: do-agent.service: do-agent.service: Unit entered failed state.
May 10 02:24:59 endpoint1 systemd[1]: do-agent.service: Failed with result 'exit-code'.
May 10 02:24:59 endpoint1 systemd[1]: do-agent.service: Service hold-off time over, scheduling restart.
May 10 02:24:59 endpoint1 systemd[1]: do-agent.service: Stopped DigitalOcean agent
May 10 02:24:59 endpoint1 systemd[1]: do-agent.service: Start request repeated too quickly.
May 10 02:24:59 endpoint1 systemd[1]: Failed to start DigitalOcean agent.
May 10 02:25:16 endpoint1 systemd[1]: Created slice User Slice of samantha.
May 10 02:25:16 endpoint1 systemd[1]: Starting User Manager for UID 1000...
May 10 02:25:16 endpoint1 systemd[1]: Starting Session 1 of user samantha.
May 10 02:25:16 endpoint1 systemd[1403]: Reached target Paths.
May 10 02:25:16 endpoint1 systemd[1403]: Reached target Sockets.
May 10 02:25:16 endpoint1 systemd[1403]: Reached target Timers.
May 10 02:25:16 endpoint1 systemd[1403]: Reached Basic System
May 10 02:25:16 endpoint1 systemd[1403]: Startup finished in 34ms.
May 10 02:25:16 endpoint1 systemd[1]: Started User Manager for UID 1000.
May 10 02:33:10 endpoint1 systemd[1]: Stopped Raise network interfaces.
May 10 02:33:10 endpoint1 systemd[1]: Starting Raise network interfaces...
May 10 02:33:10 endpoint1 ifup[1445]: Cannot find device "eth0"
May 10 02:33:10 endpoint1 ifup[1445]: Failed to bring up eth0.
May 10 02:33:10 endpoint1 ifup[1445]: Cannot find device "eth1"
May 10 02:33:10 endpoint1 ifup[1445]: Failed to bring up eth1.
May 10 02:33:10 endpoint1 systemd[1]: networking.service: Main process exited, code=exited, status=1/FAILURE
May 10 02:33:10 endpoint1 systemd[1]: Failed to start Raise network interfaces.
May 10 02:33:10 endpoint1 systemd[1]: networking.service: Unit entered failed state.
May 10 02:33:10 endpoint1 systemd[1]: networking.service: Failed with result 'exit-code'
May 10 02:39:11  endpoint1 CRON[1505]: (root) CMD ( [ -x /usr/lib/php/sessionclean ] && /usr/lib/php/sessionclean)
May 10 02:39:11  endpoint1 kernel: [ 860.790713] atkbd serio0: Unknown key pressed (translated set 2, code 0x8e on isa0060/serio0).
May 10 02:39:11  endpoint1 kernel: [ 860.790727] atkbd serio0: Use 'setkeycodes e00e <keycode>' to make it known.

/etc/network/interfaces

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5)

# The loopback network interface
auto lo
iface lo inet loopback

# Source interfaces
# Please check /etc/network/interfaces.d before changing this file
# as interfaces may have been defined in /etc/network/interfaces.d
# See LP: #1262951
source /etc/network/interfaces.d/*.cfg

The only file available in that folder is "50-cloud-init.cfg"

# This file is generated from information provided by
# the datasource. Changes to it will not persist across an instance.
# To disable cloud-init's network configuration capabilities, write a file
# etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network {config: disabled}
auto lo
iface lo inet loopback
            dns-nameservers 2001:4860:4860::8844 2001:4860:4860:8888 8.8.8.8

auto eth0
iface eth0 inet static
      address 138.197.134.xxx
      gateway 138.197.128.1
      netmask 255.255.240.0

auto eth0:1
iface eth0:1 inet6 static
      address 2604:A880:0CAD:00D0:0000:0000:0558:xxxx/64
      dns-nameservers 2001:4860:4860::8844 2001:4860:4860:8888 8.8.8.8
      gateway 2604:A880:0CAD:00D0:0000:0000:0000:0001

auto eth0:2
iface eth0:2 inet static
      address 10.20.0.xxx
      netmask 255.255.0.0

auto eth1
iface eth1 inet static
      address 10.137.80.xxx
      netmask 255.255.0.0

I haven't touched either of the files listed.

@hansen

I ran cat /proc/version and it returned that I was on the affected kernel. I tried reverting to the previous kernel 4.4.0-66-generic and 4.4.0-59-generic.

Still no internet connection.

@hansen
That's what I ended up doing, thanks for the help

Hello Friend! I have the same problem. How did you solve it?

Have another answer? Share your knowledge.