AWS EKS

Amazon Elastic Kubernetes Service (AWS EKS) is a managed service that you can use to run Kubernetes on AWS without needing to install, operate, and maintain your own Kubernetes control plane or nodes.

Integration with LogicHub

Connecting with AWS EKS

To connect to AWS EKS following details are required:

  • Label: Connection name.
  • Reference Values: Define variables here to templatize integration connections and actions. For example, you can use https://www.{{hostname}}.com where, hostname is a variable defined in this input. For more information on how to add data, see 'Add Data' Input Type for Integrations.
  • Region Name: To access AWS API, provide a valid Region name.
  • Access Key: To access AWS API, provide a valid Access Key.
  • Secret Key: To access AWS API, provide a valid secret Key.

Actions with AWS EKS

Get Cluster Details

Returns descriptive information about an Amazon EKS cluster.

Inputs to this Action

  • Connection: Choose a connection that you have created.
  • Jinja Template Cluster Name: Jinja-templated text containing the name of the cluster. Example: {{cluster_column_name}}.

Output of Action
JSON containing following items:

  • has_error: True/False
  • error: message/null
  • result: Cluster Details
{
  "result": {
    "ResponseMetadata": {
      "RequestId": "949527-62b9-49aa-9601-ac5e9131526b",
      "HTTPStatusCode": 200,
      "HTTPHeaders": {
        "date": "Fri, 19 Feb 2021 11:47:45 GMT",
        "content-type": "application/json",
        "content-length": "2846",
        "connection": "keep-alive",
        "x-amzn-requestid": "94327-62b9-49aa-9601-ac5e9131526b",
        "x-amz-apigw-id": "a_bHMGyMiYcFynw=",
        "x-amzn-trace-id": "Root=1-602a561-7cf4014124a2079266e0"
      },
      "RetryAttempts": 0
    },
    "cluster": {
      "name": "Integration_Test",
      "arn": "arn:aws::050847:cluster/Integration_Test",
      "createdAt": {
        "py/object": "datetime.datetime",
        "__reduce__": [
          {
            "py/type": "datetime.datetime"
          },
          [
            "B+UCEg0AIQqTCA==",
            {
              "py/reduce": [
                {
                  "py/function": "copyreg._reconstructor"
                },
                {
                  "py/tuple": [
                    {
                      "py/type": "dateutil.tz.tz.tzlocal"
                    },
                    {
                      "py/type": "datetime.tzinfo"
                    },
                    {
                      "py/reduce": [
                        {
                          "py/type": "datetime.tzinfo"
                        },
                        {
                          "py/tuple": []
                        }
                      ]
                    }
                  ]
                },
                {
                  "_std_offset": {
                    "py/reduce": [
                      {
                        "py/type": "datetime.timedelta"
                      },
                      {
                        "py/tuple": [
                          0,
                          0,
                          0
                        ]
                      }
                    ]
                  },
                  "_dst_offset": {
                    "py/id": 3
                  },
                  "_dst_saved": {
                    "py/reduce": [
                      {
                        "py/type": "datetime.timedelta"
                      },
                      {
                        "py/tuple": [
                          0,
                          0,
                          0
                        ]
                      }
                    ]
                  },
                  "_hasdst": false,
                  "_tznames": {
                    "py/tuple": [
                      "UTC",
                      "UTC"
                    ]
                  }
                }
              ]
            }
          ]
        ]
      },
      "version": "1.18",
      "endpoint": "https://17.com",
      "roleArn": "arn:aws:iam::t",
      "resourcesVpcConfig": {
        "subnetIds": [
          "subnet-78",
          "subnet-ho",
          "subnet-78",
          "subnet-89",
          "subnet-78",
          "subnet-78"
        ],
        "securityGroupIds": [],
        "clusterSecurityGroupId": "sg-0aa74d",
        "vpcId": "vpc-8f96",
        "endpointPublicAccess": true,
        "endpointPrivateAccess": false,
        "publicAccessCidrs": [
          "0.0.0.0/0"
        ]
      },
      "kubernetesNetworkConfig": {
        "serviceIpv4Cidr": "1.0.0.0/16"
      },
      "logging": {
        "clusterLogging": [
          {
            "types": [
              "api",
              "audit",
              "authenticator",
              "controllerManager",
              "scheduler"
            ],
            "enabled": false
          }
        ]
      },
      "identity": {
        "oidc": {
          "issuer": "https://oidc.com/id/12345"
        }
      },
      "status": "ACTIVE",
      "certificateAuthority": {
        "data": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUN5RENDQWJDZ0F3SUJBZ0lCQURBTkJna3Foa2lHOXsbEtsdnZGVjlIQ2lobm0rY3VZbWVNWC9XeVpzY2poMUM0eTJaQTBLRT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo="
      },
      "platformVersion": "ek",
      "tags": {
        "Test": "Test",
        "Description": "Testing"
      }
    }
  },
  "error": null,
  "has_error": false
}

Update Cluster Config

Updates an Amazon EKS cluster configuration.

Inputs to this Action

  • Connection: Choose a connection that you have created.
  • Jinja Template Cluster Name: Jinja-templated text containing the name of the cluster. Example: {{cluster_column_name}}.
  • Endpoint Private Access: Please select endpoint private access.(True/False).
  • Endpoint Public Access: Please select endpoint public access.(True/False).
  • Jinja Template](doc:jinja-template) Public Access CIDRs: Jinja-templated text containing comma separated public access cidrs.(2.0.0.0/0, 1.0.0.0/0). Example: {{public_access_cidrs_column}}.
  • Jinja Template](doc:jinja-template) Client Request Token: Jinja-templated text containing client request token.. Example: {{client_request_token_column}}

📘

Note:

Update action may take more than 15 min.

Output of Action
JSON containing the following items:

{
   "result":{
      "ResponseMetadata":{
         "RequestId":"a19aaa5c-13e4-4c68-83ea-01a46be6f730",
         "HTTPStatusCode":200,
         "HTTPHeaders":{
            "date":"Wed, 11 Aug 2021 04:36:09 GMT",
            "content-type":"application/json",
            "content-length":"308",
            "connection":"keep-alive",
            "x-amzn-requestid":"a19aaa5c-13e4-4c68-83ea-01a46be6f730",
            "access-control-allow-origin":"*",
            "access-control-allow-headers":"*,Authorization,Date,X-Amz-Date,X-Amz-Security-Token,X-Amz-Target,content-type,x-amz-content-sha256,x-amz-user-agent,x-amzn-platform-id,x-amzn-trace-id",
            "x-amz-apigw-id":"D4oE3GHuCYcFbBA=",
            "access-control-allow-methods":"GET,HEAD,PUT,POST,DELETE,OPTIONS",
            "access-control-expose-headers":"x-amzn-errortype,x-amzn-errormessage,x-amzn-trace-id,x-amzn-requestid,x-amz-apigw-id,date",
            "x-amzn-trace-id":"Root=1-611353b8-0373c515700c44ce520064e3"
         },
         "RetryAttempts":0
      },
      "update":{
         "id":"de92ee61-158f-4171-9466-075eb30c934c",
         "status":"InProgress",
         "type":"EndpointAccessUpdate",
         "params":[
            {
               "type":"EndpointPublicAccess",
               "value":"true"
            },
            {
               "type":"EndpointPrivateAccess",
               "value":"true"
            },
            {
               "type":"PublicAccessCidrs",
               "value":"[\"0.0.0.0/0\"]"
            }
         ],
         "createdAt":{
            "py/object":"datetime.datetime",
            "__reduce__":[
               {
                  "py/type":"datetime.datetime"
               },
               [
                  "B+UICwQkCQRlAA==",
                  {
                     "py/reduce":[
                        {
                           "py/function":"copyreg._reconstructor"
                        },
                        {
                           "py/tuple":[
                              {
                                 "py/type":"dateutil.tz.tz.tzlocal"
                              },
                              {
                                 "py/type":"datetime.tzinfo"
                              },
                              {
                                 "py/reduce":[
                                    {
                                       "py/type":"datetime.tzinfo"
                                    },
                                    {
                                       "py/tuple":[
                                          
                                       ]
                                    }
                                 ]
                              }
                           ]
                        },
                        {
                           "_std_offset":{
                              "py/reduce":[
                                 {
                                    "py/type":"datetime.timedelta"
                                 },
                                 {
                                    "py/tuple":[
                                       0,
                                       0,
                                       0
                                    ]
                                 }
                              ]
                           },
                           "_dst_offset":{
                              "py/id":4
                           },
                           "_dst_saved":{
                              "py/reduce":[
                                 {
                                    "py/type":"datetime.timedelta"
                                 },
                                 {
                                    "py/tuple":[
                                       0,
                                       0,
                                       0
                                    ]
                                 }
                              ]
                           },
                           "_hasdst":false,
                           "_tznames":{
                              "py/tuple":[
                                 "UTC",
                                 "UTC"
                              ]
                           }
                        }
                     ]
                  }
               ]
            ]
         },
         "errors":[
            
         ]
      }
   },
   "error":null,
   "has_error":false
}

Did this page help you?