Merge pull request #233 from Telecominfraproject/feature/wifi-10965--radsec

[WIFI-10965] Add: second managed freeradius server
This commit is contained in:
Dmitry Dunaev
2022-12-20 14:05:06 +03:00
committed by GitHub
4 changed files with 60 additions and 14 deletions

View File

@@ -1,4 +1,4 @@
- hosts: freeradius_qa
- hosts: managed_freeradius
become: true
gather_facts: true
roles:

View File

@@ -1,8 +1,14 @@
all:
children:
managed_freeradius:
hosts:
freeradius:
ansible_host: 18.189.85.200
ansible_user: ubuntu
freeradius_proxy:
ansible_host: 3.129.115.170
ansible_user: ubuntu
hosts:
freeradius:
ansible_host: 18.189.85.200
ansible_user: ubuntu
freeradius_qa:
ansible_host: 3.20.165.131
ansible_user: ubuntu

View File

@@ -66,20 +66,54 @@ output "wlan_freeradius_qa_instance" {
value = aws_eip.wlan_freeradius_qa.public_ip
}
# This instance is required for OWGW radius proxy testing and was created for WIFI-10965 task
resource "aws_instance" "wlan_freeradius_proxy" {
ami = "ami-00399ec92321828f5" # Ubuntu 20.04 amd64
instance_type = "t2.micro"
subnet_id = module.vpc_main.public_subnets[1]
vpc_security_group_ids = [aws_security_group.wlan.id]
key_name = aws_key_pair.dunaev_wifi_3714.id
lifecycle {
ignore_changes = [ami]
}
root_block_device {
delete_on_termination = true
}
tags = merge({
"Name" : "${var.org}-${var.project}-${var.env} FreeRADIUS server for OWGW radius proxy (WIFI-10965)"
}, local.common_tags)
}
resource "aws_eip" "wlan_freeradius_proxy" {
vpc = true
instance = aws_instance.wlan_freeradius_proxy.id
tags = local.common_tags
}
output "wlan_freeradius_instance_proxy" {
value = aws_eip.wlan_freeradius_proxy.public_ip
}
# Generated Ansible hosts file
resource "null_resource" "ansible_inventory_generate" {
triggers = {
freeradius_instance_arn = aws_instance.wlan_freeradius.arn
freeradius_eip_id = aws_eip.wlan_freeradius.id
freeradius_qa_instance_arn = aws_instance.wlan_freeradius_qa.arn
freeradius_qa_eip_id = aws_eip.wlan_freeradius_qa.id
demo_instance_arn = aws_instance.wlan_demo.arn
demo_eip_id = aws_eip.wlan_demo.id
freeradius_instance_arn = aws_instance.wlan_freeradius.arn
freeradius_eip_id = aws_eip.wlan_freeradius.id
freeradius_qa_instance_arn = aws_instance.wlan_freeradius_qa.arn
freeradius_qa_eip_id = aws_eip.wlan_freeradius_qa.id
demo_instance_arn = aws_instance.wlan_demo.arn
demo_eip_id = aws_eip.wlan_demo.id
freeradius_proxy_instance_arn = aws_instance.wlan_freeradius.arn
freeradius_proxy_eip_id = aws_eip.wlan_freeradius.id
}
# Generate Ansible inventory file
provisioner "local-exec" {
command = <<-EOA
echo "${templatefile("${path.module}/templates/ansible_inventory.yml.tpl", { freeradius_eip = aws_eip.wlan_freeradius, freeradius_eip_qa = aws_eip.wlan_freeradius_qa, demo_eip = aws_eip.wlan_demo })}" > ansible/hosts.yml
echo "${templatefile("${path.module}/templates/ansible_inventory.yml.tpl", { freeradius_eip = aws_eip.wlan_freeradius, freeradius_eip_qa = aws_eip.wlan_freeradius_qa, demo_eip = aws_eip.wlan_demo, freeradius_proxy_eip = aws_eip.wlan_freeradius_proxy })}" > ansible/hosts.yml
EOA
}
}

View File

@@ -1,8 +1,14 @@
all:
children:
managed_freeradius:
hosts:
freeradius:
ansible_host: ${freeradius_eip.public_ip}
ansible_user: ubuntu
freeradius_proxy:
ansible_host: ${freeradius_proxy_eip.public_ip}
ansible_user: ubuntu
hosts:
freeradius:
ansible_host: ${freeradius_eip.public_ip}
ansible_user: ubuntu
freeradius_qa:
ansible_host: ${freeradius_eip_qa.public_ip}
ansible_user: ubuntu