← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1733403] [NEW] cloud-init does not work reliably in Azure with Centos

 

Public bug reported:

Centos instances created in Azure do not work reliably. Depending on how the waagent is disabled or not, the result can be either a non-responding instance(and without ssh connectivity) or a "blank" run that provisions nothing.
Steps to reproduce manually : 

1.Have an instance provisioned as bare with something like terraform.
Have a cloudinit yaml file provided as custom-data since the very
begining.

2.Log on the machine. At this moment we do not have cloud-init, only
waagent that was provided by Azure

3. Install cloud-init from os packages (ex epel). Currently this gets you cloud-init 0.7.9
4. With no explicit configuration, upon reboot the script would eventually cycle through available DataSources to settle as DataSourceNone - basically configuring nothing.
5. with explicit configuration, as:
# cat /etc/cloud/cloud.cfg.d/99-azure.cfg
datasource_list: [Azure]
datasource:
  Azure:
    agent_command: __builtin__
    set_hosstname: True

You get in the eror log:

2017-11-20 18:32:36,758 - stages.py[DEBUG]: Using distro class <class 'cloudinit.distros.rhel.Distro'>
2017-11-20 18:32:36,763 - __init__.py[DEBUG]: Looking for for data source in: ['Azure'], via packages ['', u'cloudinit.sources'] that matches dependencies ['FILESYSTEM', 'NETWORK']
2017-11-20 18:32:36,863 - __init__.py[DEBUG]: Searching for network data source in: [u'DataSourceAzureNet']
2017-11-20 18:32:36,863 - handlers.py[DEBUG]: start: init-network/search-AzureNet: searching for network data from DataSourceAzureNet
2017-11-20 18:32:36,863 - __init__.py[DEBUG]: Seeing if we can get any data from <class 'cloudinit.sources.DataSourceAzure.DataSourceAzureNet'>
2017-11-20 18:32:36,869 - util.py[DEBUG]: Running command ['blkid', '-tTYPE=iso9660', '-odevice'] with allowed return codes [0, 2] (shell=False, capture=True)
2017-11-20 18:32:37,560 - util.py[DEBUG]: Running command ['blkid', '-tTYPE=udf', '-odevice'] with allowed return codes [0, 2] (shell=False, capture=True)
2017-11-20 18:32:37,644 - handlers.py[DEBUG]: finish: init-network/search-AzureNet: SUCCESS: no network data found from DataSourceAzureNet
2017-11-20 18:32:37,644 - util.py[WARNING]: No instance datasource found! Likely bad things to come!
2017-11-20 18:32:37,645 - util.py[DEBUG]: No instance datasource found! Likely bad things to come!
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/cloudinit/cmd/main.py", line 236, in main_init
    init.fetch(existing=existing)
  File "/usr/lib/python2.7/site-packages/cloudinit/stages.py", line 343, in fetch
    return self._get_data_source(existing=existing)
  File "/usr/lib/python2.7/site-packages/cloudinit/stages.py", line 253, in _get_data_source
    pkg_list, self.reporter)
  File "/usr/lib/python2.7/site-packages/cloudinit/sources/__init__.py", line 320, in find_source
    raise DataSourceNotFoundException(msg)
DataSourceNotFoundException: Did not find any data source, searched classes: (DataSourceAzureNet)

Needless to say, no configuration is applied.

** Affects: cloud-init
     Importance: Undecided
         Status: New

** Attachment added: "cloud-init-debug.tar"
   https://bugs.launchpad.net/bugs/1733403/+attachment/5011759/+files/cloud-init-debug.tar

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to cloud-init.
https://bugs.launchpad.net/bugs/1733403

Title:
  cloud-init does not work reliably in Azure with Centos

Status in cloud-init:
  New

Bug description:
  Centos instances created in Azure do not work reliably. Depending on how the waagent is disabled or not, the result can be either a non-responding instance(and without ssh connectivity) or a "blank" run that provisions nothing.
  Steps to reproduce manually : 

  1.Have an instance provisioned as bare with something like terraform.
  Have a cloudinit yaml file provided as custom-data since the very
  begining.

  2.Log on the machine. At this moment we do not have cloud-init, only
  waagent that was provided by Azure

  3. Install cloud-init from os packages (ex epel). Currently this gets you cloud-init 0.7.9
  4. With no explicit configuration, upon reboot the script would eventually cycle through available DataSources to settle as DataSourceNone - basically configuring nothing.
  5. with explicit configuration, as:
  # cat /etc/cloud/cloud.cfg.d/99-azure.cfg
  datasource_list: [Azure]
  datasource:
    Azure:
      agent_command: __builtin__
      set_hosstname: True

  You get in the eror log:

  2017-11-20 18:32:36,758 - stages.py[DEBUG]: Using distro class <class 'cloudinit.distros.rhel.Distro'>
  2017-11-20 18:32:36,763 - __init__.py[DEBUG]: Looking for for data source in: ['Azure'], via packages ['', u'cloudinit.sources'] that matches dependencies ['FILESYSTEM', 'NETWORK']
  2017-11-20 18:32:36,863 - __init__.py[DEBUG]: Searching for network data source in: [u'DataSourceAzureNet']
  2017-11-20 18:32:36,863 - handlers.py[DEBUG]: start: init-network/search-AzureNet: searching for network data from DataSourceAzureNet
  2017-11-20 18:32:36,863 - __init__.py[DEBUG]: Seeing if we can get any data from <class 'cloudinit.sources.DataSourceAzure.DataSourceAzureNet'>
  2017-11-20 18:32:36,869 - util.py[DEBUG]: Running command ['blkid', '-tTYPE=iso9660', '-odevice'] with allowed return codes [0, 2] (shell=False, capture=True)
  2017-11-20 18:32:37,560 - util.py[DEBUG]: Running command ['blkid', '-tTYPE=udf', '-odevice'] with allowed return codes [0, 2] (shell=False, capture=True)
  2017-11-20 18:32:37,644 - handlers.py[DEBUG]: finish: init-network/search-AzureNet: SUCCESS: no network data found from DataSourceAzureNet
  2017-11-20 18:32:37,644 - util.py[WARNING]: No instance datasource found! Likely bad things to come!
  2017-11-20 18:32:37,645 - util.py[DEBUG]: No instance datasource found! Likely bad things to come!
  Traceback (most recent call last):
    File "/usr/lib/python2.7/site-packages/cloudinit/cmd/main.py", line 236, in main_init
      init.fetch(existing=existing)
    File "/usr/lib/python2.7/site-packages/cloudinit/stages.py", line 343, in fetch
      return self._get_data_source(existing=existing)
    File "/usr/lib/python2.7/site-packages/cloudinit/stages.py", line 253, in _get_data_source
      pkg_list, self.reporter)
    File "/usr/lib/python2.7/site-packages/cloudinit/sources/__init__.py", line 320, in find_source
      raise DataSourceNotFoundException(msg)
  DataSourceNotFoundException: Did not find any data source, searched classes: (DataSourceAzureNet)

  Needless to say, no configuration is applied.

To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-init/+bug/1733403/+subscriptions


Follow ups