Requirements

No requirements.

Providers

NameVersion
aws5.10.0
local2.4.0
random3.5.1

Modules

NameSourceVersion
albterraform-aws-modules/alb/aws~> 8.0
rdsterraform-aws-modules/rds/aws~> 5.0
skywalking./modules/skywalkingn/a
vpcterraform-aws-modules/vpc/aws~> 5.0

Resources

NameType
aws_elasticsearch_domain.elasticsearchresource
aws_security_group.alb-skywalking-uiresource
aws_security_group.allow_appsresource
aws_security_group.elasticsearchresource
aws_security_group.public-egress-accessresource
local_file.elasticsearch_varsresource
local_file.h2_varsresource
local_file.inventoriesresource
local_file.rds_postgresql_varsresource
random_password.rds_passwordresource
aws_availability_zones.availabledata source
aws_caller_identity.currentdata source

Inputs

NameDescriptionTypeDefaultRequired
access_keyAccess key of the AWS account, if you have configured AWS CLI, you can leave it empty.string""no
bastion_enabledEnable bastion host, if you want to access the instances via SSH, you must enable it.booltrueno
bastion_instance_typeCPU, memory, storage and networking capacity for bastion hoststring"t2.micro"no
bastion_ssh_cidr_blocksCIDR blocks for SSH access to bastion hostlist(string)[
“0.0.0.0/0”
]
no
cidrCIDR for database tierstring"11.0.0.0/16"no
cluster_nameName of the clusterstring"skywalking-cluster"no
create_lbCreate load balancer for SkyWalking UIbooltrueno
database_subnetsCIDR used for database subnetsset(string)[
“11.0.104.0/24”,
“11.0.105.0/24”,
“11.0.106.0/24”
]
no
extra_tagsAdditional tags to be added to all resourcesmap(string){}no
oap_instance_countNumber of OAP instances, if you want to use H2 storage, you must set it to 1.number1no
oap_instance_typeCPU, memory, storage and networking capacity for OAP instancesstring"c5.xlarge"no
private_subnetsCIDR used for private subnetsset(string)[
“11.0.1.0/24”,
“11.0.2.0/24”,
“11.0.3.0/24”
]
no
public_key_pathPath to store the key file for SSH access to the instances.string"~/.ssh"no
public_subnetsCIDR used for public subnetsset(string)[
“11.0.101.0/24”,
“11.0.102.0/24”,
“11.0.103.0/24”
]
no
regionPhysical location for clustered data centers.string"us-east-1"no
secret_keySecret key of the AWS account, if you have configured AWS CLI, you can leave it empty.string""no
storageStorage configuration for SkyWalking OAPobject({
h2 = optional(object({}))
rds_postgresql = optional(object({
db_storage_size_gb = optional(number)
db_max_storage_size_gb = optional(number)
db_instance_class = optional(string)
db_name = optional(string)
db_username = optional(string)
db_password = optional(string)
}))
elasticsearch = optional(object({
domain_name = optional(string)
version = optional(string)
instance_type = optional(string)
instance_count = optional(number)
additional_security_groups = optional(list(string))
zone_awareness_enabled = optional(bool)
availability_zone_count = optional(number)
ebs_enabled = optional(bool)
}))
})
{
“h2”: {}
}
no
ui_instance_countNumber of UI instancesnumber1no
ui_instance_typeCPU, memory, storage and networking capacity for UI instancesstring"t2.medium"no

Outputs

NameDescription
alb_dns_nameThe domain name of the ALB that can be used to access SkyWalking UI.
bastion_ipsThe public IP that can be used to SSH into the bastion host
database_addressThe database address
database_nameThe database name
database_passwordThe database password
database_portThe database port
database_usernameThe database username
elasticsearch_endpointThe elasticsearch endpoint
oap_ipsThe private IPs of the OAP instances
ssh_user_key_fileThe SSH private key file to use to connect to the bastion host
ui_ipsThe IPs of the SkyWalking UI instances