Skip to content

Commit

Permalink
Merge branch 'vpc-2' into develop
Browse files Browse the repository at this point in the history
  • Loading branch information
anton-lysenok committed Dec 14, 2020
2 parents c05f5e9 + 53cc2d6 commit d283827
Show file tree
Hide file tree
Showing 4 changed files with 23 additions and 19 deletions.
16 changes: 8 additions & 8 deletions app/common/kube_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -213,6 +213,10 @@ def setup_ca(self, kube_env, cluster_name, region):
f'--namespace cluster-autoscaler'
return self.execute_command(command, kube_env)

def setup_ext_snat(self, kube_env):
command = "kubectl set env daemonset -n kube-system aws-node AWS_VPC_K8S_CNI_EXTERNALSNAT=true"
return self.execute_command(command, kube_env)

def setup_traefik(self, kube_env):
"""
Setup traefik plugin in created cluster
Expand All @@ -233,14 +237,10 @@ def setup_traefik(self, kube_env):
command = f'{HELM} upgrade --install traefik traefik/traefik ' \
f'--set service.type=NodePort ' \
f'--set ports.web.nodePort=30003 ' \
f'--set ports.discovery.port=8001 ' \
f'--set ports.discovery.expose=true ' \
f'--set ports.discovery.exposedPort=5801 ' \
f'--set ports.discovery.nodePort=30004 ' \
f'--set ports.external.port=8002 ' \
f'--set ports.external.expose=true ' \
f'--set ports.external.exposedPort=20000 ' \
f'--set ports.external.nodePort=30005 ' \
f'--set ports.internal.port=8002 ' \
f'--set ports.internal.expose=true ' \
f'--set ports.internal.exposedPort=20000 ' \
f'--set ports.internal.nodePort=30005 ' \
f'--set tolerations[0].key=type ' \
f'--set tolerations[0].value=kubsystem ' \
f'--set tolerations[0].operator=Equal ' \
Expand Down
7 changes: 7 additions & 0 deletions app/infra/cluster_service.py
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,13 @@ def resource_post_setup(terraform):
else:
yield "Traefik installed successfully.", None

# Set up ext SNAT
snat_res, msg = terraform.kctx_api.setup_ext_snat(kube_env)
if snat_res != 0:
yield "Failed to setup external SNAT. Resuming anyway", None
else:
yield "External SNAT installed successfully.", None

# Set up metrics
res, msg = terraform.kctx_api.setup_metrics(kube_env)
if res != 0:
Expand Down
13 changes: 5 additions & 8 deletions app/infra/templates/template_tfvars.tf
Original file line number Diff line number Diff line change
@@ -1,15 +1,12 @@
cluster-name = "{{ variables.resource_name }}"
network_id = "{{ variables.network_id }}"
nebula_cidr_block = "{{ variables.nebula_cidr_block }}"
nebula_route_table_id = "{{ variables.nebula_route_table_id }}"
peer_account_id = "{{ variables.peer_account_id }}"
peer_vpc_id = "{{ variables.peer_vpc_id }}"
certificate_arn_ext = "{{ variables.certificate_arn_ext }}"
certificate_arn_discovery = "{{ variables.certificate_arn_discovery }}"
nodePools = {{ variables.nodePools }}
{% if variables.cluster_type %}
cluster_type = "{{ variables.cluster_type }}"
{% endif %}
transit_gw_id = "{{ variables.transit_gw_id }}"
head_vpc_id = "{{ variables.head_vpc_id }}"
dns_suffix = "{{ variables.dns_suffix }}"
dns_lb = "{{ variables.dns_lb }}"
nodePools = {{ variables.nodePools }}
{% if variables.eks_version %}
eks-version = "{{ variables.eks_version }}"
{% endif %}
6 changes: 3 additions & 3 deletions app/infra/terraform_api.py
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ def create_resource(self):
# Terraform apply
_cmd_apply = f"terraform apply -no-color -var-file={aws_vars_path} -var-file={resource_vars_path} -auto-approve"
yield f"RUNNING: Actually CREATING resource. This may take time... {_cmd_apply}", None
err_code_apply, outp = shell_run(_cmd_apply, cwd=self.work_dir, timeout=900)
err_code_apply, outp = shell_run(_cmd_apply, cwd=self.work_dir, timeout=2000)
for s in outp:
self.logger.info(s)
yield f"Terraform apply: {s}", None
Expand All @@ -90,7 +90,7 @@ def create_resource(self):
_cmd_destroy = f"terraform destroy -no-color" \
f" -var-file={aws_vars_path} -var-file={resource_vars_path} -auto-approve"
yield f"RUNNING: DESTROYING partially created resource. This may take time... {_cmd_destroy}", None
err_code_destroy, outp = shell_run(_cmd_destroy, cwd=self.work_dir, timeout=900)
err_code_destroy, outp = shell_run(_cmd_destroy, cwd=self.work_dir, timeout=2000)
for s in outp:
self.logger.info(s)
self.logger.info(f"Terraform destroy complete. Errcode: {err_code_destroy}")
Expand Down Expand Up @@ -141,7 +141,7 @@ def destroy_resource(self):
_cmd_destroy = f"terraform destroy -no-color" \
f" -var-file={aws_vars_path} -var-file={resource_vars_path} -auto-approve"
yield f"RUNNING: Actually DESTROYING resources. This may take time... {_cmd_destroy}", None
err_code_destroy, outp = shell_run(_cmd_destroy, cwd=self.work_dir, timeout=900)
err_code_destroy, outp = shell_run(_cmd_destroy, cwd=self.work_dir, timeout=2000)
for s in outp:
self.logger.info(s)
yield f"Terraform destroy: {s}", None
Expand Down

0 comments on commit d283827

Please sign in to comment.