Issue #7559 has been updated by Jeff McCune.

Status changed from Needs More Information to In Topic Branch Pending Review
Target version set to 2.0.0
Branch set to https://github.com/puppetlabs/facter/pull/387

# Please review

I've implemented the generalized virtual => xenu with short timeout approach I 
previously described.  The patch is up at 
<https://github.com/puppetlabs/facter/pull/387>, please give this a try and let 
me know.  The upside is that all infrastructure logic has been removed.  If 
there's a metadata server that responds in < 50ms and the virtual fact is 
"xenu" then all of the metadata and userdata facts will be defined.  I've 
tested this in both the public EC2 and the private Amazon VPC instances.

I'm curious if all of the other supported platforms; OpenStack, Eucalyptus, 
etc...  have a virtual fact that returns something other than "xenu."  That 
scenario is the only issue I'm concerned about now.

-Jeff
----------------------------------------
Feature #7559: Fact for identifying Amazon VPC instances.
https://projects.puppetlabs.com/issues/7559#change-82080

Author: Nigel Kersten
Status: In Topic Branch Pending Review
Priority: Normal
Assignee: Martijn Heemels
Category: cloud - ec2
Target version: 2.0.0
Keywords: vpc ec2 arp
Branch: https://github.com/puppetlabs/facter/pull/387
Affected Facter version: 1.6.10


(From the list)

 I ran into a buglet in facter 1.5.9rc6 (from tmz repo).  In normal AWS
instances it works great.  In VPC instances if doesn't work.  This seems
to be because VPC instances don't use the fe:ff:ff:... MAC addresses.

<pre>
/sbin/ifconfig
eth0      Link encap:Ethernet  HWaddr 02:67:4E:E1:26:30
         inet addr:172.17.129.24  ...


/sbin/arp
Address          HWtype  HWaddress          Flags  Mask  Iface
169.254.169.253  ether   02:67:4E:C0:00:01  C      eth0
172.17.128.1     ether   02:67:4E:C0:00:01  C      eth0


/sbin/ifconfig
eth0      Link encap:Ethernet  HWaddr 02:67:4E:DA:58:16
         inet addr:172.17.128.126

/sbin/arp
Address          HWtype  HWaddress          Flags  Mask  Iface
169.254.169.253  ether   02:67:4E:C0:00:01  C      eth0
172.17.128.1     ether   02:67:4E:C0:00:01  C      eth0
</pre>


Of the two VPC EC2 instances I've seen, the MAC address always start
with 02:67:4E.  I have only seen two instances, both in the same VPC, so
I don't know if this holds for every VPC instance, YMMV.


in ec2.rb , the following seemed to work:
<pre>
def has_euca_mac?
 !!(Facter.value(:macaddress) =~ %r{^02:67:4[eE]:})
end
</pre>


-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/puppet-bugs?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to