Caution
EC2 instances are not supported with EKS Hybrid Nodes. This example is provided for reference only in lieu of users having to provision a VM in their own environment.
Note
The Packer CLI is required to build a custom AMI for the Hybrid node used in the example.
To provision the provided configurations you need to execute:
terraform init
terraform apply -target=module.remote_node_vpc -target=local_file.key_pem -target=module.key_pair --auto-approve
cd ami && packer build -var 'ssh_keypair_name=hybrid-node' -var 'ssh_private_key_file=../key.pem' . && cd -
terraform apply --auto-approve
./join.sh
Note that this example may create resources which cost money. Run terraform destroy
when you don't need these resources.
Name | Version |
---|---|
terraform | >= 1.3.2 |
aws | >= 5.95 |
helm | >= 2.16 |
http | >= 3.4 |
local | >= 2.5 |
tls | >= 4.0 |
Name | Version |
---|---|
aws | >= 5.95 |
aws.remote | >= 5.95 |
helm | >= 2.16 |
http | >= 3.4 |
local | >= 2.5 |
Name | Source | Version |
---|---|---|
eks | ../.. | n/a |
eks_hybrid_node_role | ../../modules/hybrid-node-role | n/a |
key_pair | terraform-aws-modules/key-pair/aws | ~> 2.0 |
remote_node_vpc | terraform-aws-modules/vpc/aws | ~> 5.0 |
vpc | terraform-aws-modules/vpc/aws | ~> 5.0 |
Name | Type |
---|---|
aws_instance.hybrid_node | resource |
aws_route.peer | resource |
aws_route.remote_node_private | resource |
aws_route.remote_node_public | resource |
aws_security_group.remote_node | resource |
aws_ssm_activation.this | resource |
aws_vpc_peering_connection.remote_node | resource |
aws_vpc_peering_connection_accepter.peer | resource |
aws_vpc_security_group_egress_rule.remote_node | resource |
aws_vpc_security_group_ingress_rule.remote_node | resource |
helm_release.cilium | resource |
local_file.join | resource |
local_file.key_pem | resource |
local_file.key_pub_pem | resource |
aws_ami.hybrid_node | data source |
aws_availability_zones.available | data source |
aws_availability_zones.remote | data source |
http_http.icanhazip | data source |
No inputs.
No outputs.