cookbook 'azure_fqdn_fix', '~> 1.0.3'
azure_fqdn_fix (4) Versions 1.0.3 Follow1
Fixes node FQDNs on Azure without hassle
cookbook 'azure_fqdn_fix', '~> 1.0.3', :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 flavored VMs on the AZURE PLATFORM.
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
Default
Key | Type | Description | Default |
---|---|---|---|
['azure_fqdn_fix']['domain'] |
String | The domain name of your node | 'example.of.long.domain.com' |
['azure_fqdn_fix']['hostname'] |
String | The hostname your node | 'default-hostname' |
If your browser does not support markdown tables, the table is better formatted as JSON here:
{ 'azure_fqdn_fix' : { 'domain' : { 'type' : 'String', 'Description' : "The domain name of your node", 'Default' : 'example.of.long.domain.com' }, 'hostname' : { 'type' : 'String', 'Description' : "The hostname name of your node", 'Default' : 'default-hostname' } } }
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] - Prototype of azure_fqdn_fix
1.0.0
- [Justin Karnes] - Initial release of Azure FQDN Fix
1.0.1
- [Justin Karnes] - Addendum to readme to support supermarket markdown
1.0.2
- [Justin Karnes] - Update Metadata to include source URL and issues URL
1.0.3
- [Justin Karnes] - Update Metadata to include supported platforms
Collaborator Number Metric
1.0.3 failed this metric
Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.
Contributing File Metric
1.0.3 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file
Foodcritic Metric
1.0.3 failed this metric
FC066: Ensure chef_version is set in metadata: azure_fqdn_fix/metadata.rb:1
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
No Binaries Metric
1.0.3 passed this metric
Testing File Metric
1.0.3 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
1.0.3 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
1.0.3 failed this metric
1.0.3 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a CONTRIBUTING.md file
Foodcritic Metric
1.0.3 failed this metric
FC066: Ensure chef_version is set in metadata: azure_fqdn_fix/metadata.rb:1
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
No Binaries Metric
1.0.3 passed this metric
Testing File Metric
1.0.3 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
1.0.3 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
1.0.3 failed this metric
Run with Foodcritic Version 16.3.0 with tags metadata,correctness ~FC031 ~FC045 and failure tags any
1.0.3 passed this metric
Testing File Metric
1.0.3 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must contain a TESTING.md file
Version Tag Metric
1.0.3 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number
1.0.3 failed this metric
1.0.3 failed this metric
Failure: To pass this metric, your cookbook metadata must include a source url, the source url must be in the form of https://github.com/user/repo, and your repo must include a tag that matches this cookbook version number