Higher-level hybrid cdk|cdk8s construct to build an eks kubernetes platform with batteries included
Project description
cdkeks
Higher-level hybrid cdk|cdk8s construct to build an eks kubernetes platform with batteries included:
- Network policies with aws-calico
- DNS management with external-dns
- Forwarding logs to CloudWatch Logs or ElasticSearch with fluent-bit
- Ingress management with the aws load balancer controller
:warning: This is experimental and subject to breaking changes.
Install
TypeScript/JavaScript:
npm install --save cdkeks
Python:
pip install cdkeks
Howto use
Install Addons
# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
platform = Platform(self, "Platform",
cluster=cluster,
addons=[AwsCalicoAddon(), AwsLoadBalancerControllerAddon()]
)
See more addons.
AlbIngress
# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
deployment = Deployment(self, "Deployment",
platform=platform,
containers=[{
"image": "nginx"
}
]
)
backend = IngressBackend.from_service(deployment.expose("Service", 80))
ingress = AlbIngress(self, "Ingress",
platform=platform,
target_type=TargetType.IP,
internet_facing=True
)
ingress.connections.allow_from_any_ipv4(Port.tcp(80))
ingress.add_rule("/", backend)
LoadBalancer
# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
deployment = Deployment(self, "Deployment",
platform=platform,
containers=[{
"image": "nginx"
}
]
)
deployment.expose("LoadBalancer", 80,
service_type=ServiceType.LOAD_BALANCER
)
API Reference
See API.md.
Example
See more complete examples.
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
cdkeks-0.0.4.tar.gz
(427.0 kB
view hashes)
Built Distribution
cdkeks-0.0.4-py3-none-any.whl
(424.8 kB
view hashes)