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.145.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.145-py3-none-any.whl (26.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cdk-kubesphere-0.0.145.tar.gz
  • Upload date:
  • Size: 26.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.10

File hashes

Hashes for cdk-kubesphere-0.0.145.tar.gz
Algorithm Hash digest
SHA256 27c7a2971b57c3c44130bea3ed20356f1bb0f388905f24e2f0189aeae465ed06
MD5 c77eeebb971f7eb9a2028a31c194e9b1
BLAKE2b-256 492435064ac076f94cf46cf4b9dca4906717c6a7fb9558f37b66ace803ff5ad7

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cdk_kubesphere-0.0.145-py3-none-any.whl
  • Upload date:
  • Size: 26.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.10

File hashes

Hashes for cdk_kubesphere-0.0.145-py3-none-any.whl
Algorithm Hash digest
SHA256 2d3f1a953d12dc4c260ba23a89f609629bb9168e2e715d89758bd5f797fc65a1
MD5 0d839296ab2eac782de370cb64ddf981
BLAKE2b-256 d5114d71fd00b192e6f080523271b589d87d764fb76c03746389a911e0c58a99

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