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_fixin 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 thedomainattribute 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-clientto run the recipe - Run
ohaito update the node["fqdn"] attribute - Run
sudo chef-clientto 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