For traceability, here are the issues that I found while testing the CentOS 6 cloud image from : <a href="http://buildlogs.centos.org/monthly/6/CentOS-6-x86_64_20141029_01.qcow2">http://buildlogs.centos.org/monthly/6/CentOS-6-x86_64_20141029_01.qcow2</a> [<a href="http://buildlogs.centos.org/monthly/6/CentOS-6-x86_64_20141029_01.qcow2" target="_blank">^</a>]<br />
<br />
1) Cloud-init debug messages are not logged.<br />
The logging handler configuration (/etc/cloud/cloud.cfg.d/05_logging.cfg) defines two logging handlers: syslog and /var/log/cloud-init.log. Cloud-init picks the first one that works which happens to be the syslog handler. However, rsyslog is configured to drop debug message so they go nowhere. We have two options:<br />
a) Add a rule like '*.=debug /var/log/debug' to /etc/rsyslog.conf OR<br />
b) Comment out the syslog handler in the 05_logging.cfg file so that all cloud-init messages are written to /var/log/cloud-init.log<br />
<br />
2) /var/log/messages if flooded with DHCP messages every 30 seconds or so:<br />
Nov 6 09:01:05 centos-6 dhclient[812]: DHCPREQUEST on eth0 to 10.0.0.3 port 67 (xid=0x465e5300)<br />
Nov 6 09:01:05 centos-6 dhclient[812]: DHCPACK from 10.0.0.3 (xid=0x465e5300)<br />
Nov 6 09:01:07 centos-6 dhclient[812]: bound to 10.0.0.4 -- renewal in 45 seconds.<br />
<br />
3) crashkernel=auto should be remove from the kernel commandline options and 'console=tty1' should be added (before 'console=ttyS0,115200').<br />
<br />
4) The following packages from EPEL6 are missing in the image: cloud-utils-growroot, dracut-modules-growroot.<br />
<br />
5) Network configuration should be cleaned up and dhclient should be made persistent, otherwise an instance might loose its IP if the DHCP server is temporarily unavailable. I.e.:<br />
$ cat /etc/sysconfig/network-scripts/ifcfg-eth0<br />
DEVICE="eth0"<br />
BOOTPROTO="dhcp"<br />
ONBOOT="yes"<br />
TYPE="Ethernet"<br />
PERSISTENT_DHCLIENT="yes"
↧