cookbook 'azure_fqdn_fix', '= 1.0.0'
azure_fqdn_fix (4) Versions 1.0.0 Follow1
Fixes node FQDNs on Azure without hassle
cookbook 'azure_fqdn_fix', '= 1.0.0', :supermarket
knife supermarket install azure_fqdn_fix
knife supermarket download azure_fqdn_fix
azure_fqdn_fix Cookbook
Adjusts /etc/hosts to fix hostname -f which is read by OHAI and sets a node's FQDN
Requirements
Currently this cookbook is designed to work only on UBUNTU LINUX on the AZURE VM PLATFORM.
e.g.
Platforms
- Ubuntu Linux 14.04+
- Support for other Liunx Platforms will not be done by me, but can/will be supported via fork & pull
Chef
- Chef 12.0 or later
Cookbooks
- Ohai
Attributes
azure_fqdn_fix::default
<table>
<tr>
<th>Key</th>
<th>Type</th>
<th>Description</th>
<th>Default</th>
</tr>
<tr>
<td><tt>['azure_fqdn_fix']['domain']</tt></td>
<td>String</td>
<td>The domain name of your node</td>
<td><tt>'example.of.long.domain.com'</tt></td>
</tr>
<tr>
<td><tt>['azure_fqdn_fix']['hostname']</tt></td>
<td>String</td>
<td>The hostname your node</td>
<td><tt>'default-hostname'</tt></td>
</tr>
</table>
Usage
node['domain']
and node['hostname']
are not a reliable way of putting together a node's FQDN if it is hosted on Azure. Once you set up your public-ip DNS resolver name in the Azure portal, you are ready to use this recipe in your run_list
.
['azure_fqdn_fix']['hostname']
is whatever you set your public resolver hostname to. It is whatever you put in the space that you fill in.
['azure_fqdn_fix']['domain']
is the portion of the DNS resolver hostname that you cannot change. It is usually underneath the editable region and has the format of region.cloudapp.azure.com
azure_fqdn_fix::default
- Set the attributes
node['azure_fqdn_fix']['domain']
andnode['azure_fqdn_fix']['hostname']
in your node through some means - Include
azure_fqdn_fix
in your node'srun_list
:
{ "name":"my_node", "run_list": [ "recipe[azure_fqdn_fix]" ] }
Tips
- I highly recommend setting the
['azure_fqdn_fix']['domain']
at the environment scope since most of your VM's in a cluster will be in the same geographical resource center. - It is highly advised that you set up the DNS resolver BEFORE you run your bootstrap of your node because you can pass the --json-attributes flag (-j for short) and configure the public resolver as
{'azure_fqdn_fix' : { 'hostname' : 'I-picked-this-hostname' }}
. If you didn't set thedomain
attribute at the environment scope, you should include it in your json attributes hash. - If you are fixing the FQDN of a node which has been deployed with this recipe:
- Follow usage above
- Run
sudo chef-client
to run the recipe - Run
ohai
to update the node["fqdn"] attribute - Run
sudo chef-client
to report the updated FQDN to the chef-server
Gotcha's
If you have a recipe in your run_list
which for some reason changes the file permissions or ownership of the files in the /etc/
directory then you should run this recipe before the one(s) that do(es) because this recipe will alter the owner, group, and mode of the /etc/hosts
file.
Contributing
- Fork the repository on Github
- Create a named feature branch (like
add_component_x
) - Write your change
- Write tests for your change (if applicable)
- Run the tests, ensuring they all pass
- Submit a Pull Request using Github
License and Authors
License: MIT
Contributors: Justin Karnes
Dependent cookbooks
ohai >= 0.0.0 |
Contingent cookbooks
There are no cookbooks that are contingent upon this one.
azure_fqdn_fix CHANGELOG
This file is used to list changes made in each version of the azure_fqdn_fix cookbook.
0.1.0
- [Justin Karnes] - Initial release of azure_fqdn_fix
Collaborator Number Metric
1.0.0 failed this metric
Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.
Foodcritic Metric
1.0.0 failed this metric
FC064: Ensure issues_url is set in metadata: azure_fqdn_fix/metadata.rb:1
FC065: Ensure source_url is set in metadata: azure_fqdn_fix/metadata.rb:1
Run with Foodcritic Version 8.2.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
License Metric
1.0.0 passed this metric
1.0.0 failed this metric
1.0.0 failed this metric
FC064: Ensure issues_url is set in metadata: azure_fqdn_fix/metadata.rb:1
FC065: Ensure source_url is set in metadata: azure_fqdn_fix/metadata.rb:1
Run with Foodcritic Version 8.2.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
License Metric
1.0.0 passed this metric
1.0.0 passed this metric