Elastic Kubernetes Service (EKS)ΒΆ

The following example will be used to illustrate configuration schema.

k8s:
  management-cluster:
    type: aws-provision-eks
    region: us-central1
    zones:
      - "us-east-1a"
      - "us-east-1b"
      - "us-east-1c"
    vpc:
      name: "the-first-vpc"
      subnet: public
    logs_enabled:
      - "api"
      - "audit"
      - "controllerManager"
    min_count: 1
    max_count: 3
    initial_node_count: 2
    namespace: "namespacename"
    mashine_type: "t2.medium"
    kubernetes_version: "1.12"

EKSs are defined using YAML syntax as described in the table below

Element

Description

k8s

Parent element of kubernetes(EKS) definitions, contains list clusters to be created.

management-cluster

Kubernetes(EKS) identifier. Gropus kubernetes(EKS) settings. OpeNgine will assign this name to kubernetes(EKS), also used as reference in other configuration sections.

type

For AWS kubernetes(EKS), type can have value: aws-provision-eks - the kubernetes(EKS) will be provisioned and configured by OpeNgine.

region

AWS region to be used for kubernetes(EKS) provisioning.

zones

AWS zones to be used for kubernetes(EKS) provisioning, it is required to have at least tree different zones.

vpc.name

VPC identifier from vpc section, OpeNgine will use that vpc for provisioning kubernetes(EKS).

vpc.subnet

VPC network identifier from vpc section. OpeNgine will use those networks for configuring kubernetes(EKS), those networks has to be provisioned in at least tree different zones.

logs_enabled

AWS kubernetes(EKS) settingssfor logging EKS logging reference Documentation.

min_count

OpeNgine will create one worker nodes group, min_count will be used as minimal worker nodes count.

max_count

OpeNgine will create one worker nodes group, max_count will be used as maximum worker nodes count.

initial_node_count

OpeNgine will create one worker nodes group, initial_node_count will be used as initial worker nodes count.

namespace

Namespace identifier, OpeNgine will create kubernetes namespace with that and will use it for application deployment.

mashine_type

AWS instance type for provisioning worker nodes avaliable instance types.

kubernetes_version

AWS kubernetes(EKS) version avaliable version.

References: