Skip to content

🛸 Code for standing up VPC compute with an Application Load Balancer and Observability metrics

Notifications You must be signed in to change notification settings

cloud-design-dev/ibmcloud-vpc-alb-observability

Repository files navigation

VPC ALB Metrics

Code to deploy an MZR VPC, ALB, and 2 VMs to collect metrics from the ALB and look at how pool health is tracked.

Modules

Name Source Version
observability git::https://github.com/terraform-ibm-modules/terraform-ibm-observability-instances main
resource_group git::https://github.com/terraform-ibm-modules/terraform-ibm-resource-group.git v1.0.5
security_group terraform-ibm-modules/vpc/ibm//modules/security-group 1.1.1
vpc terraform-ibm-modules/vpc/ibm//modules/vpc 1.1.1

Resources

Name Type
ibm_is_floating_ip.bastion resource
ibm_is_instance.bastion resource
ibm_is_instance.pool1 resource
ibm_is_instance.pool2 resource
ibm_is_lb.alb resource
ibm_is_lb_listener.frontend resource
ibm_is_lb_pool.pool1 resource
ibm_is_lb_pool.pool2 resource
ibm_is_lb_pool_member.pool1 resource
ibm_is_lb_pool_member.pool2 resource
ibm_is_ssh_key.generated_key resource
local_file.ansible-inventory resource
null_resource.create_private_key resource
random_string.prefix resource
tls_private_key.ssh resource
ibm_is_image.base data source
ibm_is_ssh_key.sshkey data source
ibm_is_zones.regional data source

Inputs

Name Description Type Default Required
allow_ip_spoofing Allow IP spoofing on the bastion instance primary interface. bool false no
classic_access Allow classic access to the VPC. bool false no
default_address_prefix The address prefix to use for the VPC. Default is set to auto. string "auto" no
existing_resource_group The name of an existing resource group to use. If not specified, a new resource group will be created. string "" no
existing_ssh_key The name of an existing SSH key to use for the VM string "" no
frontend_rules A list of security group rules to be added to the Frontend security group
list(
object({
name = string
direction = string
remote = string
tcp = optional(
object({
port_max = optional(number)
port_min = optional(number)
})
)
udp = optional(
object({
port_max = optional(number)
port_min = optional(number)
})
)
icmp = optional(
object({
type = optional(number)
code = optional(number)
})
)
})
)
[
{
"direction": "inbound",
"ip_version": "ipv4",
"name": "inbound-http",
"remote": "0.0.0.0/0",
"tcp": {
"port_max": 80,
"port_min": 80
}
},
{
"direction": "inbound",
"ip_version": "ipv4",
"name": "inbound-https",
"remote": "0.0.0.0/0",
"tcp": {
"port_max": 443,
"port_min": 443
}
},
{
"direction": "inbound",
"ip_version": "ipv4",
"name": "inbound-ssh",
"remote": "0.0.0.0/0",
"tcp": {
"port_max": 22,
"port_min": 22
}
},
{
"direction": "inbound",
"icmp": {
"code": 0,
"type": 8
},
"ip_version": "ipv4",
"name": "inbound-icmp",
"remote": "0.0.0.0/0"
},
{
"direction": "outbound",
"ip_version": "ipv4",
"name": "all-outbound",
"remote": "0.0.0.0/0"
}
]
no
image_name The name of an existing OS image to use. You can list available images with the command 'ibmcloud is images'. string "ibm-ubuntu-22-04-1-minimal-amd64-3" no
instance_profile The name of an existing instance profile to use. You can list available instance profiles with the command 'ibmcloud is instance-profiles'. string "cx2-2x4" no
metadata_service_enabled Enable the metadata service on the bastion instance. bool true no
owner The owner of the resources. Will be added as tags to all resources. string n/a yes
pool_instance_count The number of instances to create in each pool. Default is 1 for testing. number 2 no
project_prefix The prefix to use for all resources string "" no
region The region to deploy the resources to string "" no

Outputs

Name Description
bastion_ip Public IP of the Bastion instance.
instance_ips Private IP of load balancer pool instances
lb_fqdn FQDN for the VPC ABL instance

About

🛸 Code for standing up VPC compute with an Application Load Balancer and Observability metrics

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published