Comment 7 for bug 1629797

Revision history for this message
Dan Watkins (oddbloke) wrote : Re: cloud-init seems to take most of yakkety slow boot time

It is perhaps noteworthy that each failed resolution there appears to take exactly 25 seconds. This would also explain the GCE boot time being lower than EC2. Not only is the GCE resolution successful on GCE (gaining 25 seconds) but the EC2 metadata source actually checks http://instance-data.:8773 before http://169.254.169.254 which adds another 25 seconds for resolution failure. The second EC2 boot time and the GCE boot time are almost exactly 50 seconds apart.

Once booted, resolution seems to take a sensible amount of time:

$ time python3 -c "import socket; socket.getaddrinfo('this.does.not.exist', None)"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/lib/python3.5/socket.py", line 733, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -2] Name or service not known

real 0m0.120s
user 0m0.092s
sys 0m0.008s

$ time python3 -c "import socket; socket.getaddrinfo('thisdoesnotexist', None)"
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/lib/python3.5/socket.py", line 733, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -2] Name or service not known

real 0m0.887s
user 0m0.092s
sys 0m0.012s