Skip to main content

CDK construct library to deploy KubeSphere on AWS

Project description

NPM version PyPI version Release

cdk-kubesphere

cdk-kubesphere is a CDK construct library that allows you to create KubeSphere on AWS with CDK in TypeScript, JavaScript or Python.

Sample

# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
from cdk_kubesphere import KubeSphere

app = cdk.App()

stack = cdk.Stack(app, "cdk-kubesphere-demo")

# deploy a default KubeSphere service on a new Amazon EKS cluster
KubeSphere(stack, "KubeSphere")

Behind the scene, the KubeSphere construct creates a default Amazon EKS cluster and KubeSphere serivce with helm chart(ks-installer) on it.

View helm command AWS CDK will helm install the `ks-installer` on the cluster:
helm install ks-installer \
--repo https://charts.kubesphere.io/test \
--namespace=kubesphere-system \
--generate-name \
--create-namespace

KubeSphere App Store

Use appStore to enable the KubeSphere App Store support.

# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
KubeSphere(stack, "KubeSphere",
    app_store=True
)
View helm command AWS CDK will helm install the `ks-installer` on the cluster:
helm install ks-installer \
--set openpitrix.enabled=true \
--repo https://charts.kubesphere.io/test \
--namespace=kubesphere-system \
--generate-name \
--create-namespace

Using existing Amazon EKS clusters

You are allowed to deploy KubeSphere in any existing Amazon EKS cluster.

# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
cluster = eks.Cluster.from_cluster_attributes(self, "MyCluster",
    cluster_name="my-cluster-name",
    kubectl_role_arn="arn:aws:iam::1111111:role/iam-role-that-has-masters-access"
)

# deploy a default KubeSphere service on the existing Amazon EKS cluster
KubeSphere(stack, "KubeSphere", cluster=cluster)

See Using existing clusters to learn how to import existing cluster in AWS CDK.

Console

Run the following command to create a port-forward from localhost:8888 to ks-console:80

kubectl -n kubesphere-system port-forward service/ks-console 8888:80

Open http://localhost:8888 and enter the default username/password(admin/P@88w0rd) to enter the admin console.

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

cdk-kubesphere-0.0.57.tar.gz (26.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cdk_kubesphere-0.0.57-py3-none-any.whl (25.7 kB view details)

Uploaded Python 3

File details

Details for the file cdk-kubesphere-0.0.57.tar.gz.

File metadata

  • Download URL: cdk-kubesphere-0.0.57.tar.gz
  • Upload date:
  • Size: 26.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.3.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.7.9

File hashes

Hashes for cdk-kubesphere-0.0.57.tar.gz
Algorithm Hash digest
SHA256 6f4a03199cd6582e9f42577f36e55e18d4322dba9d5c5f5803db0d2a42fb835d
MD5 8c9b12394f5e764920ab92a0e2d4ca78
BLAKE2b-256 bb61024c25c7c0b4be51784b90ce2d4f8958576ad2b7d2aaa031f44e0f0f4953

See more details on using hashes here.

File details

Details for the file cdk_kubesphere-0.0.57-py3-none-any.whl.

File metadata

  • Download URL: cdk_kubesphere-0.0.57-py3-none-any.whl
  • Upload date:
  • Size: 25.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.3.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.7.9

File hashes

Hashes for cdk_kubesphere-0.0.57-py3-none-any.whl
Algorithm Hash digest
SHA256 2cdad7a1b96e90045e893812e391bd3c1685737f3abbfae4ed906725c5353ca5
MD5 0e10402ab35a3ca99a114a4ad5dd2752
BLAKE2b-256 ffee244d79920d51911b47b40ec830de3f33526bd0edda04d71099b4e40d1f9c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page