AWS EKS (Assumed Role)
Version: 3.0.0
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.
Connect AWS EKS with LogicHub
- Navigate to Automations > Integrations.
- Search for AWS EKS.
- Click Details, then the + icon. Enter the required information in the following fields.
- Label: Enter a 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.
- Verify SSL: Select option to verify connecting server's SSL certificate (Default is Verify SSL Certificate).
- Remote Agent: Run this integration using the LogicHub Remote Agent.
- 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.
- After you've entered all the details, click Connect.
Actions for AWS EKS
Get Cluster Details
Returns descriptive information about an Amazon EKS cluster.
Input Field
Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.
Input Name | Description | Required |
---|---|---|
Cluster Name | Jinja-templated text containing the name of the cluster. Example: {{cluster_column_name}}. | Required |
Output
Array of JSON in individual rows for each account mentioned in external IDs with each containing the 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.
Input Field
Choose a connection that you have previously created and then fill in the necessary information in the following input fields to complete the connection.
Input Name | Description | Required |
---|---|---|
Cluster Name | Jinja-templated text containing the name of the cluster. Example: {{cluster_column_name}}. | |
Endpoint Private Access | Select endpoint private access.(True/False). | |
Endpoint Public Access | Select endpoint public access.(True/False). | |
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}}. | |
Client Request Token | Jinja-templated text containing client request token. Example: {{client_request_token_column}} |
Update action may take more than 15 min.
Output
A JSON object containing multiple rows of result:
{
"result":{
"ResponseMetadata":{
"RequestId":"291b8ea8-334e-482a-98b2-db1358d43d98",
"HTTPStatusCode":200,
"HTTPHeaders":{
"date":"Wed, 11 Aug 2021 05:04:14 GMT",
"content-type":"application/json",
"content-length":"309",
"connection":"keep-alive",
"x-amzn-requestid":"291b8ea8-334e-482a-98b2-db1358d43d98",
"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":"D4sMIH8EiYcFzRg=",
"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-61135a4d-34f467f023c2ca6d1bbdd535"
},
"RetryAttempts":0
},
"update":{
"id":"fdbc6eb2-a921-473f-9370-0a738393195a",
"status":"InProgress",
"type":"EndpointAccessUpdate",
"params":[
{
"type":"EndpointPublicAccess",
"value":"true"
},
{
"type":"EndpointPrivateAccess",
"value":"false"
},
{
"type":"PublicAccessCidrs",
"value":"[\"0.0.0.0/0\"]"
}
],
"createdAt":{
"py/object":"datetime.datetime",
"__reduce__":[
{
"py/type":"datetime.datetime"
},
[
"B+UICwUEDgLmMA==",
{
"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":[
]
}
},
"role_arn":"arn:aws:iam::827203017847:role/STS_test",
"error":null,
"has_error":false
}
Release Notes
v3.0.0
- Updated architecture to support IO via filesystem
Updated about 1 year ago