Dear community,
I have another issue I can't wrap my head around. Possibly because I stared
on the screen for too long, maybe because I'm to stupid.
Anyways, I want to create an AWS EC2 instance (Debian Strecht -> which
obviously uses cloud-init) with a custom hostname. Not the EC2
public/private hostname but
the os hostname.
Usually I would use the Ansible's hostname module to change /etc/hostname
but I also want to permantly change /etc/hosts.
So I thought it would be best to "inject" my custom hostname during the
instance setup via a user-data script. I thought this might cause
cloud-init to pick up my custom hostname instead of the one that is
automatically created from the private ip-address.
My first question now is: Is that possible? Can I manipulate the initial
setup process of the instance to use my custom hostname?
If yes, this would be a huge relief. But that raise the question of how I
can achieve that.
This is the piece of my playbook which creates the EC2 instance:
- name: Create ec2 instance
ec2:
key_name: "{{ keypair }}"
vpc_subnet_id: "{{ vpc_subnet_id }}"
group_id: "{{ security_group_id }}"
instance_type: "{{ instance_type }}"
image: "{{ image }}"
wait: true
region: "{{ region }}"
instance_tags: "{{ tags }}"
volumes:
- device_name: xvda
volume_type: gp2
volume_size: "{{ volume_size }}"
delete_on_termination: "{{ delete_on_termination }}"
assign_public_ip: "{{ assign_public_ip }}"
termination_protection: "{{ termination_protection }}"
no_log: true
register: ec2
- name: Wait for SSH to come up
wait_for: host={{ item.private_ip }} port=22 delay=30 timeout=320 state=
started
no_log: true
with_items: '{{ ec2.instances }}'
- name: Add new instance to host group
add_host: hostname={{ item.private_ip }} groupname=launched
no_log: true
with_items: '{{ ec2.instances }}'
I could imagine that I add something like "user_data: "<custom userdata>""
to the ec2 block, but I'm not sure about the correct syntax to manipulate
the hostname accordingly.
Can someone assist me on that matter?
Best regards
René
--
You received this message because you are subscribed to the Google Groups
"Ansible Project" 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].
To view this discussion on the web visit
https://groups.google.com/d/msgid/ansible-project/3706c670-7a6a-4825-8f9b-56b70c29e6b1%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.