{"id":1177,"date":"2020-12-21T20:35:04","date_gmt":"2020-12-21T20:35:04","guid":{"rendered":"https:\/\/www.nicktailor.com\/?p=1177"},"modified":"2023-05-12T02:52:44","modified_gmt":"2023-05-12T02:52:44","slug":"how-to-generate-new-network-uuids-with-ansible","status":"publish","type":"post","link":"https:\/\/nicktailor.com\/tech-blog\/how-to-generate-new-network-uuids-with-ansible\/","title":{"rendered":"How to generate new Network UUID\u2019s with Ansible"},"content":{"rendered":"<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\">Okay some of you might have deployed linux vm\u2019s from clone templates using ansible by way of the <strong>vmware_guest module<\/strong>.<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\">Now everybody goes about it differently, and from what I read online&#8230;. It would seem that lots of people over complicate the generation of the UUID with over complicated code to generate the UUID.<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\">At the end of the day all a UUID is&#8230;.is JUST A &#8220;<strong>UNIQUE IDENTIFIER&#8221;<\/strong>. It serves no other function other than being another form of labelling the network interface on the vm. There is no need to over complicate the creation of a UUID. This is also provided you defined UUID\u2019s on your deployments.<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\">Why\u2026would you want to do this? Well if you cloned from a template. The new clone with have the same network UUID on every new machine you create. Now this wont impact your infrastructure in anyway, other than you *might* get duplicate UUID warning at some point. However, it can be problematic when doing backups, restores, migrations, and monitoring in some cases.<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\"><strong>Ansible Setup:<\/strong><\/p>\n<div class=\"ul\" style=\"margin: 0;\">\n<div class=\"li\" style=\"margin: 0;\">\n<div style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3; margin-left: 36pt;\"><span style=\"display: inline-block; position: relative; text-indent: -18pt; font-size: 14pt;\"><span style=\"position: absolute; top: -0.34em; left: 0; font-size: 2em;\">\u2022<\/span>&nbsp;<\/span>This post assumes that you have ansible setup and running<\/div>\n<\/div>\n<\/div>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\">Role :<\/p>\n<div class=\"ul\" style=\"margin: 0;\">\n<div class=\"li\" style=\"margin: 0;\">\n<div style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0; padding-bottom: 0; line-height: 1.3; margin-left: 36pt;\"><span style=\"display: inline-block; position: relative; text-indent: -18pt; font-size: 14pt;\"><span style=\"position: absolute; top: -0.34em; left: 0; font-size: 2em;\">\u2022<\/span>&nbsp;<\/span>Create a role called CreateNewNetworkUUID in \/etc\/ansible\/roles<\/div>\n<div class=\"ul\" style=\"margin: 0;\">\n<div class=\"li\" style=\"margin: 0;\">\n<div style=\"margin-bottom: 0; padding-bottom: 0; line-height: 1.3; margin-left: 57pt;\"><span style=\"display: inline-block; position: relative; text-indent: -18pt; font-style: italic; font-size: 12pt;\">\uf0fc<\/span><span style=\"color: #ff0000;\"><em>mkdir<\/em><\/span><span style=\"color: #ff0000;\"><em> -p \/etc\/ansible\/roles\/<\/em><\/span><span style=\"color: #ff0000;\"><em>CreateNewNetworkUUID<\/em><\/span><span style=\"color: #ff0000;\"><em>\/tasks<\/em><\/span><\/div>\n<\/div>\n<\/div>\n<div class=\"ul\" style=\"margin: 0;\">\n<div class=\"li\" style=\"margin: 0;\">\n<div style=\"margin-bottom: 0; padding-bottom: 0; line-height: 1.3; margin-left: 39pt;\"><span style=\"display: inline-block; position: relative; text-indent: -18pt; font-size: 14pt;\"><span style=\"position: absolute; top: -0.34em; left: 0; font-size: 2em;\">\u2022<\/span>&nbsp;<\/span>Create a main.yml inside <span style=\"color: #000000;\">\/etc\/ansible\/roles\/<\/span><span style=\"color: #000000;\">CreateNewNetworkUUID<\/span><span style=\"color: #000000;\">\/tasks<\/span><span style=\"color: #000000;\">\/<\/span><\/div>\n<div class=\"ul\" style=\"margin: 0;\">\n<div class=\"li\" style=\"margin: 0;\">\n<div style=\"margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3; margin-left: 57pt;\"><span style=\"display: inline-block; position: relative; text-indent: -18pt; font-style: italic;\">\uf0fc<\/span><span style=\"color: #ff0000;\"><em>v<\/em><\/span><span style=\"color: #ff0000;\"><em>i <\/em><\/span><span style=\"color: #ff0000;\"><em>\/etc\/ansible\/roles\/<\/em><\/span><span style=\"color: #ff0000;\"><em>CreateNewNetworkUUID<\/em><\/span><span style=\"color: #ff0000;\"><em>\/tasks\/<\/em><\/span><span style=\"color: #ff0000;\"><em>main.yml<\/em><\/span><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<div class=\"ul\" style=\"margin: 0;\">\n<div class=\"li\" style=\"margin: 0;\">\n<div style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3; margin-left: 39pt;\"><span style=\"display: inline-block; position: relative; text-indent: -18pt; font-size: 14pt;\"><span style=\"position: absolute; top: -0.34em; left: 0; font-size: 2em;\">\u2022<\/span>&nbsp;<\/span><span style=\"color: #000000;\">Now add the following <\/span><span style=\"color: #000000;\">yaml<\/span><span style=\"color: #000000;\"> code.<\/span><\/div>\n<\/div>\n<\/div>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\"><span style=\"color: #000000;\">&#8211;<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><em><strong>Note: This just runs the \u2018uuidgen\u2019 command on the linux vm and then registers the result into a variable that is passed to the next task.<\/strong><\/em><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b0f0;\">&#8211;<\/span><span style=\"color: #00b0f0;\"> name: Generate new UUID<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b0f0;\"> shell: <\/span><span style=\"color: #00b0f0;\">uuidgen<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b0f0;\"> register: <\/span><span style=\"color: #00b0f0;\">new_uuid_result<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b0f0;\">&#8211; debug:<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b0f0;\"> var: <\/span><span style=\"color: #00b0f0;\">new_uuid_result<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><em><strong>Note: This updates the network file on redhat and adds the UUID line with the newly generated UUID and shows a log of the new UUID that was added. This section will also be outlined in the file as managed by ansible<\/strong><\/em><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b0f0;\">&#8211; name: Add New UUID to network config<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b0f0;\">&nbsp;&nbsp;<\/span><span style=\"color: #00b0f0;\">blockinfile<\/span><span style=\"color: #00b0f0;\">:<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b0f0;\">&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #00b0f0;\">dest<\/span><span style=\"color: #00b0f0;\">: \/etc\/<\/span><span style=\"color: #00b0f0;\">sysconfig<\/span><span style=\"color: #00b0f0;\">\/network-scripts\/ifcfg-ens192<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b0f0;\">&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #00b0f0;\">insertafter<\/span><span style=\"color: #00b0f0;\">: NAME=&#8221;ens192&#8243;<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b0f0;\"> block: |<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b0f0;\"> UUID=&#8221;<\/span><span style=\"color: #00b0f0;\">{{ <\/span><span style=\"color: #00b0f0;\">new<\/span><span style=\"color: #00b0f0;\">_uuid_result<\/span><span style=\"color: #00b0f0;\">[&#8216;<\/span><span style=\"color: #00b0f0;\">stdout<\/span><span style=\"color: #00b0f0;\">&#8216;] }}&#8221;<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b0f0;\"> register: <\/span><span style=\"color: #00b0f0;\">filecontents<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b0f0;\">&#8211; debug: <\/span><span style=\"color: #00b0f0;\">msg<\/span><span style=\"color: #00b0f0;\">=&#8221;<\/span><span style=\"color: #00b0f0;\">{{ <\/span><span style=\"color: #00b0f0;\">filecontents<\/span><span style=\"color: #00b0f0;\"> }}&#8221;<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<div class=\"ul\" style=\"margin: 0;\">\n<div class=\"li\" style=\"margin: 0;\">\n<div style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2; margin-left: 39pt;\"><span style=\"display: inline-block; position: relative; text-indent: -18pt; font-size: 14pt;\"><span style=\"position: absolute; top: -0.34em; left: 0; font-size: 2em;\">\u2022<\/span>&nbsp;<\/span>Save the file<\/div>\n<\/div>\n<\/div>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><strong>Ansible playbook run: <\/strong><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<div class=\"ul\" style=\"margin: 0;\">\n<div class=\"li\" style=\"margin: 0;\">\n<div style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2; margin-left: 39pt;\"><span style=\"display: inline-block; position: relative; text-indent: -18pt; font-size: 14pt;\"><span style=\"position: absolute; top: -0.34em; left: 0; font-size: 2em;\">\u2022<\/span>&nbsp;<\/span>From inside \/etc\/ansible directory call your role inside your playbook or create a new playbook calling the role<\/div>\n<\/div>\n<\/div>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<div class=\"ul\" style=\"margin: 0;\">\n<div class=\"li\" style=\"margin: 0;\">\n<div style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2; margin-left: 57pt;\">\n<p><span style=\"display: inline-block; position: relative; text-indent: -18pt; font-size: 14pt;\">\uf0fc<\/span><span style=\"color: #ff0000;\">&nbsp;<em>vi&nbsp;<\/em><\/span><em><span style=\"color: #ff0000;\">createnewUUID.yml<\/span><\/em><\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"ul\" style=\"margin: 0;\">\n<div class=\"li\" style=\"margin: 0;\">\n<div style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3; margin-left: 36pt;\"><span style=\"display: inline-block; position: relative; text-indent: -18pt; font-size: 14pt;\"><span style=\"position: absolute; top: -0.34em; left: 0; font-size: 2em;\">\u2022<\/span>&nbsp;<\/span>Add the following to your playbook.<\/div>\n<\/div>\n<\/div>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\"><span style=\"color: #00b0f0;\">&#8211; hosts: all<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\"><span style=\"color: #00b0f0;\">&nbsp;&nbsp;<\/span><span style=\"color: #00b0f0;\">gather_facts<\/span><span style=\"color: #00b0f0;\">: no<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\"><span style=\"color: #00b0f0;\"> roles: <\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\"><span style=\"color: #00b0f0;\"> &#8211; role: <\/span><span style=\"color: #00b0f0;\">CreateNewNetworkUUID<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<div class=\"ul\" style=\"margin: 0;\">\n<div class=\"li\" style=\"margin: 0;\">\n<div style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3; margin-left: 36pt;\"><span style=\"display: inline-block; position: relative; text-indent: -18pt; color: #000000; font-size: 14pt;\"><span style=\"position: absolute; top: -0.34em; left: 0; font-size: 2em;\">\u2022<\/span>&nbsp;<\/span><span style=\"color: #000000;\">Save the file<\/span><\/div>\n<\/div>\n<\/div>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\"><strong><span style=\"color: #000000;\">Ansible playbook run:<\/span><\/strong><\/p>\n<div class=\"ul\" style=\"margin: 0;\">\n<div class=\"li\" style=\"margin: 0;\">\n<div style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0; padding-bottom: 0; line-height: 1.3; margin-left: 36pt;\"><span style=\"display: inline-block; position: relative; text-indent: -18pt; color: #000000; font-size: 14pt;\"><span style=\"position: absolute; top: -0.34em; left: 0; font-size: 2em;\">\u2022<\/span>&nbsp;<\/span><span style=\"color: #000000;\">Run your new role against your hosts <\/span><br \/>\n<span style=\"color: #000000;\"><br \/>\n<em><strong>Note: this <\/strong><\/em><\/span><em><strong><span style=\"color: #000000;\">run<\/span><span style=\"color: #000000;\"> the role against all your hosts <\/span><span style=\"color: #000000;\">defined in inventory\/DEV\/hosts via <\/span><span style=\"color: #000000;\">ssh<\/span><span style=\"color: #000000;\">. You will need to know the root\/pass for your <\/span><span style=\"color: #000000;\">ssh<\/span><span style=\"color: #000000;\"> connection to be able to carry out the <\/span><\/strong><\/em><span style=\"color: #000000;\"><span style=\"color: #000000;\"><em><strong>tasks.<\/strong><\/em><\/span><\/span><\/div>\n<div class=\"ul\" style=\"margin: 0;\">\n<div class=\"li\" style=\"margin: 0;\">\n<div style=\"margin-bottom: 0; padding-bottom: 0; line-height: 1.3; margin-left: 57pt;\"><span style=\"display: inline-block; position: relative; text-indent: -18pt; color: #ff0000; font-size: 14pt;\">\uf0fc<\/span><em><span style=\"color: #ff0000;\">ansible-playbook &#8211;<\/span><span style=\"color: #ff0000;\">i<\/span><span style=\"color: #ff0000;\"> inventory\/DEV\/hosts <\/span><span style=\"color: #ff0000;\">createnewUUID.yml<\/span><span style=\"color: #ff0000;\"> -k<\/span><\/em><\/div>\n<p style=\"text-align: left; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3; margin-left: 57pt;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 8pt; padding-bottom: 0; line-height: 1.3;\"><strong><span style=\"color: #000000;\">Ansible playbook log:<\/span><\/strong><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\">SSH password:<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\">PLAY [all] ****************************************************************************************************************************************************************************************************<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\">TASK [<\/span><span style=\"color: #00b050;\">CreateNewUUID<\/span><span style=\"color: #00b050;\"> : Generate new UUID] **********************************************************************************************************************************************************************<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\">changed: [<\/span><span style=\"color: #00b050;\">nicktestvm<\/span><span style=\"color: #00b050;\">]<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\">TASK [<\/span><span style=\"color: #00b050;\">CreateNewUUID<\/span><span style=\"color: #00b050;\"> : debug] **********************************************************************************************************************************************************************************<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\">ok: [<\/span><span style=\"color: #00b050;\">nicktestvm<\/span><span style=\"color: #00b050;\">] =&gt; {<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> &#8220;<\/span><span style=\"color: #00b050;\">new_uuid_result<\/span><span style=\"color: #00b050;\">&#8220;: {<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> &#8220;<\/span><span style=\"color: #00b050;\">ansible_facts<\/span><span style=\"color: #00b050;\">&#8220;: {<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> &#8220;<\/span><span style=\"color: #00b050;\">discovered_interpreter_python<\/span><span style=\"color: #00b050;\">&#8220;: &#8220;\/<\/span><span style=\"color: #00b050;\">usr<\/span><span style=\"color: #00b050;\">\/bin\/python&#8221;<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> },<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> &#8220;changed&#8221;: true,<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> &#8220;<\/span><span style=\"color: #00b050;\">cmd<\/span><span style=\"color: #00b050;\">&#8220;: &#8220;<\/span><span style=\"color: #00b050;\">uuidgen<\/span><span style=\"color: #00b050;\">&#8220;,<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> &#8220;delta&#8221;: &#8220;0:00:00.010810&#8221;,<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> &#8220;end&#8221;: &#8220;2020-12-21 20:13:36.614154&#8221;,<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> &#8220;failed&#8221;: false,<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> &#8220;<\/span><span style=\"color: #00b050;\">rc<\/span><span style=\"color: #00b050;\">&#8220;: 0,<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> &#8220;start&#8221;: &#8220;2020-12-21 20:13:36.603344&#8221;,<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> &#8220;stderr&#8221;: &#8220;&#8221;,<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> &#8220;<\/span><span style=\"color: #00b050;\">stderr_lines<\/span><span style=\"color: #00b050;\">&#8220;: [],<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> &#8220;<\/span><span style=\"color: #00b050;\">stdout<\/span><span style=\"color: #00b050;\">&#8220;: &#8220;49242349-5168-4713-bcb6-a53840b2e1d6&#8221;,<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> &#8220;<\/span><span style=\"color: #00b050;\">stdout_lines<\/span><span style=\"color: #00b050;\">&#8220;: [<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> &#8220;49242349-5168-4713-bcb6-a53840b2e1d6&#8221;<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> ]<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> }<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\">}<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\">TASK [<\/span><span style=\"color: #00b050;\">CreateNewUUID<\/span><span style=\"color: #00b050;\"> : Add New UUID to network config] *********************************************************************************************************************************************************<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\">changed: [<\/span><span style=\"color: #00b050;\">nicktestvm<\/span><span style=\"color: #00b050;\">]<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\">TASK [<\/span><span style=\"color: #00b050;\">CreateNewUUID<\/span><span style=\"color: #00b050;\"> : debug] **********************************************************************************************************************************************************************************<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\">ok: [<\/span><span style=\"color: #00b050;\">nicktestvm<\/span><span style=\"color: #00b050;\">] =&gt; {<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\"> &#8220;<\/span><span style=\"color: #00b050;\">new_uuid_<\/span><span style=\"color: #00b050;\">result.stdout<\/span><span style=\"color: #00b050;\">&#8220;: &#8220;49242349-5168-4713-bcb6-a53840b2e1d6&#8221;<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\">}<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\">PLAY RECAP ****************************************************************************************************************************************************************************************************<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"color: #00b050;\">nicktestvm<\/span><span style=\"color: #00b050;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<\/span><span style=\"color: #00b050;\"> :<\/span><span style=\"color: #00b050;\"> ok=4 changed=2 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0<\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><strong>Nicktestvm:<\/strong><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">[root@nicktestvm ~]$ cat \/etc\/sysconfig\/network-scripts\/ifcfg-ens192<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">TYPE=&#8221;Ethernet&#8221;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">PROXY_METHOD=&#8221;none&#8221;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">BROWSER_ONLY=&#8221;no&#8221;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">BOOTPROTO=&#8221;none&#8221;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">DEFROUTE=&#8221;yes&#8221;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">IPV4_FAILURE_FATAL=&#8221;no&#8221;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">IPV6INIT=&#8221;yes&#8221;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">IPV6_AUTOCONF=&#8221;yes&#8221;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">IPV6_DEFROUTE=&#8221;yes&#8221;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">IPV6_FAILURE_FATAL=&#8221;no&#8221;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">IPV6_ADDR_GEN_MODE=&#8221;stable-privacy&#8221;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">NAME=&#8221;ens192&#8243;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><strong><span style=\"color: #ff0000;\"># BEGIN ANSIBLE MANAGED BLOCK<\/span><\/strong><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><strong><span style=\"color: #ff0000;\">UUID=&#8221;49242349-5168-4713-bcb6-a53840b2e1d6&#8243;<\/span><\/strong><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><strong><span style=\"color: #ff0000;\"># END ANSIBLE MANAGED BLOCK<\/span><\/strong><\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">DEVICE=&#8221;ens192&#8243;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">ONBOOT=&#8221;yes&#8221;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">IPADDR=&#8221;192.168.1.69&#8243;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">PREFIX=&#8221;24&#8243;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">GATEWAY=&#8221;192.168.1.254&#8243;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">DNS1=&#8221;8.8.8.1&#8243;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">DNS2=&#8221;8.8.8.2&#8243;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">DOMAIN=&#8221;nicktailor.co.uk&#8221;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\">IPV6_PRIVACY=&#8221;no&#8221;<\/p>\n<p style=\"margin-top: 0pt; padding-top: 0; margin-bottom: 0pt; padding-bottom: 0; line-height: 1.2;\"><span style=\"display: inline-block; height: 1em;\"><span style=\"display: none;\">.<\/span><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Okay some of you might have deployed linux vm\u2019s from clone templates using ansible by way of the vmware_guest module. Now everybody goes about it differently, and from what I read online&#8230;. It would seem that lots of people over complicate the generation of the UUID with over complicated code to generate the UUID. . At the end of the<a href=\"https:\/\/nicktailor.com\/tech-blog\/how-to-generate-new-network-uuids-with-ansible\/\" class=\"read-more\">Read More &#8230;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":true,"template":"","format":"standard","meta":{"footnotes":""},"categories":[51,124],"tags":[],"class_list":["post-1177","post","type-post","status-publish","format-standard","hentry","category-ansible","category-network-stuff"],"_links":{"self":[{"href":"https:\/\/nicktailor.com\/tech-blog\/wp-json\/wp\/v2\/posts\/1177","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nicktailor.com\/tech-blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nicktailor.com\/tech-blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nicktailor.com\/tech-blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/nicktailor.com\/tech-blog\/wp-json\/wp\/v2\/comments?post=1177"}],"version-history":[{"count":15,"href":"https:\/\/nicktailor.com\/tech-blog\/wp-json\/wp\/v2\/posts\/1177\/revisions"}],"predecessor-version":[{"id":1640,"href":"https:\/\/nicktailor.com\/tech-blog\/wp-json\/wp\/v2\/posts\/1177\/revisions\/1640"}],"wp:attachment":[{"href":"https:\/\/nicktailor.com\/tech-blog\/wp-json\/wp\/v2\/media?parent=1177"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nicktailor.com\/tech-blog\/wp-json\/wp\/v2\/categories?post=1177"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nicktailor.com\/tech-blog\/wp-json\/wp\/v2\/tags?post=1177"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}