Local Kyma installation
Use the following command to run Kubernetes locally via Minikube:
$ ./installation/scripts/minikube.sh --domain "kyma.local" --vm-driver "hyperkit"
Kyma installation requires increased permissions granted by the cluster-admin role. To bind the role to the default ServiceAccount, run the following command:
$ kubectl apply -f ./installation/resources/default-sa-rbac-role.yaml
Wait until the coredns
Pod is ready. Run this script to setup Tiller:
$ ./installation/scripts/install-tiller.sh
Deploy Kyma Installer using the local installer file:
$ kubectl apply -f https://github.com/kyma-project/kyma/releases/download/0.7.0-rc1/kyma-installer-local.yaml
Configure the Kyma installation using the local configuration file:
$ kubectl apply -f https://github.com/kyma-project/kyma/releases/download/0.7.0-rc1/kyma-config-local.yaml
To trigger the installation process, label the kyma-installation
custom resource:
$ kubectl label installation/kyma-installation action=install
Track progress of the installation using the following script:
$ ./installation/scripts/is-installed.sh
Installation on Google Kubernetes Engine
-
Make sure that you have
gcloud
tool installed. Set environment variables for your Google project identifier and your cluster name. You can keep your demo cluster name but your Google project identifier must be changed. Then you can spin up the cluster:export CLUSTER_NAME=demo export PROJECT=YOUR_PROJECT_ID gcloud beta container --project "$PROJECT" clusters \ create "$CLUSTER_NAME" --zone "europe-west1-b" \ --cluster-version "1.10.12" --machine-type "n1-standard-2" \ --addons HorizontalPodAutoscaling,HttpLoadBalancing,KubernetesDashboard
-
Install Tiller:
kubectl apply -f https://raw.githubusercontent.com/kyma-project/kyma/0.7.0-rc1/installation/resources/tiller.yaml
-
Download the release and replace the placeholders with the proper values. The placeholders are the upper case variables surrounded by double underscore, such as
__DOMAIN__
. These are the mandatory values to change:__DOMAIN__
which specifies your domain, for examplekyma.example.com
.__TLS_CERT__
which is a PEM format, base64-encoded TLS certifcate.__TLS_KEY__
which is a base64-encoded TLS private key.
If you don't know how to set other values, replace them with an empty string.
You can use this script to set only three mandatory values:
export DOMAIN=kyma.example.com export TLS_CERT=base64_PEM_TLS_certificate export TLS_KEY=base64_TLS_private_key cat kyma-config-cluster.yaml | sed -e "s/__DOMAIN__/$DOMAIN/g" |sed -e "s/__TLS_CERT__/$TLS_CERT/g" | sed -e "s/__TLS_KEY__/$TLS_KEY/g" |sed -e "s/__.*__//g" >my-kyma.yaml
As a result, you get the
my-kyma.yaml
file which you can deploy on the GKE cluster. -
Configure kubectl to use your new cluster, add yourself as the cluster admin, and deploy Kyma installer with your configuration.
gcloud container clusters get-credentials $CLUSTER_NAME --zone europe-west1-b --project $PROJECT kubectl create clusterrolebinding cluster-admin-binding --clusterrole=cluster-admin --user=$(gcloud config get-value account) kc apply -f https://github.com/kyma-project/kyma/releases/download/0.7.0-rc1/kyma-installer-cluster.yaml kubectl apply -f my-kyma.yaml
-
Check if
tiller
andkyma-installer
Pods are up and running. Start the installation process with this command:kubectl label installation/kyma-installation action=install
Watch installation progress:
kubectl logs -n kyma-installer [kyma-installer-pod] -f
-
Configure DNS for two load balancers created by the Kyma installation, which are istio-ingressgateway and core-nginx-ingress-controller. You need the following DNS records:
*.kyma.example.com A EXTERNAL_PUBLIC_IP
gateway.kyma.example.com A REMOTE_ENV_IP
You can use this script to get external IP addresses for load balancers:
export EXTERNAL_PUBLIC_IP=$(kubectl get service -n istio-system istio-ingressgateway -o jsonpath="{.status.loadBalancer.ingress[0].ip}") export REMOTE_ENV_IP=$(kubectl get service -n kyma-system application-connector-nginx-ingress-controller -o jsonpath="{.status.loadBalancer.ingress[0].ip}") gcloud dns --project=$PROJECT record-sets transaction start --zone=$DNS_ZONE gcloud dns --project=$PROJECT record-sets transaction add $EXTERNAL_PUBLIC_IP --name=\*.$DOMAIN. --ttl=60 --type=A --zone=$DNS_ZONE gcloud dns --project=$PROJECT record-sets transaction add $REMOTE_ENV_IP --name=\gateway.$DOMAIN. --ttl=60 --type=A --zone=$DNS_ZONE gcloud dns --project=$PROJECT record-sets transaction execute --zone=$DNS_ZONE
Read this document for more information on installing Kyma.
0.7.0-rc1 (2019-02-11)
Application Connector
- #2645 Split Application Connector certificates secret (@Szymongib)
- #2468 Adjust Connector Service chart to API changes (@Szymongib)
- #2620 Document securing APIs with generated client cert. (@tomekpapiernik)
- #2465 Add Application header to Connector Service call (@Szymongib)
- #2389 Connector Service API upgrade (@Szymongib)
- #2575 Fix broken diagram links for Application Broker (@tomekpapiernik)
- #2561 Update application-operator image version (@montaro)
- #2556 Move the Application Broker documentation to the Application Connector topic (@klaudiagrz)
- #2543 Update Application Registry API spec (@Szymongib)
- #2474 Bump image of Lambda UI (@Szymongib)
- #2446 Generate clientset for Token Request CRD (@janmedrek)
- #2423 Update "Get the client certificate" tutorial (@tomekpapiernik)
- #2424 Increasing memory limit for size of the body in Application Registry (@lszymik)
- #2412 Increasing memory limit for size of the body in Application Registry (@lszymik)
- #2405 Bump application proxy version (@lszymik)
- #2339 Bump ui-api-layer and console images (@franpog859)
- #2328 Rename environments to namespaces in ui-api-layer under Application domain (@franpog859)
- #2386 Fixing the constance variable for basic auth (@lszymik)
- #2396 Rename outstanding items from "remote env." to "application" renaming (@tomekpapiernik)
- #2357 Update filenames to use new numbering format (@tomekpapiernik)
- #2383 Fix proxy certs in scratch image - image bump (@crabtree)
- #2327 Set sidecar injection annotations to false in Application Connector charts (@kfurgol)
- #2382 Fix proxy certs in scratch image (@crabtree)
- #2352 Bump images of Application Registry and Application Proxy (@Szymongib)
- #2335 Add certificates authorization to Application Connector (@Szymongib)
- #2275 Application Connector components hardening - bump (@crabtree)
- #2264 Application Connector components hardening (@crabtree)
- #2307 Bump image of Application Registry (@Szymongib)
- #2306 Fix adding connected app label (@Szymongib)
- #2227 Bump application-connector-tests and acceptance-tests images (@franpog859)
- #2241 Fix image name of Application Operator tests (@Szymongib)
- #2232 Bump image of Application Operator (@Szymongib)
- #2199 Add finalizers to Applications (@Szymongib)
- #2154 Skip Application charts installation in acceptance tests if not needed (@franpog859)
- #2195 Fix connection-token-handler Gopkg.lock (@crabtree)
Serverless
- #2624 fix event-bus-publish target URL (@montaro)
- #2318 Update doc title about Node.js runtime (@derberg)
Service Catalog
- #2676 Bump instances-ui image (@polskikiel)
- #2539 Bump UI Acceptance tests (@pkosiec)
- #2589 Bump helm-broker component version (@jasiu001)
- #2573 Add to helm broker removing instance during deprovisioning bundle (@jasiu001)
- #2515 Make service catalog addons as a root chart (@adamwalach)
- #2553 Bump helm-broker component version (@jasiu001)
- #2528 Add support for onlyOnceFlag to helm broker component (@jasiu001)
- #2524 Add provisionOnlyOnce flag info (@mszostok)
- #2506 Fix Azure Broker class docs (@piotrmiskiewicz)
- #2470 Add bash trap to delete GC credentials file (@aerfio)
- #2294 Remove azure broker from kyma installation (@polskikiel)
- #2402 Bump docs version after azure broker classes docs update (@polskikiel)
- #2443 Use bundles repo 0.3.0 (@piotrmiskiewicz)
- #2366 Update azure broker classes docs (@polskikiel)
- #2351 Update GCP BRoker Provider doc and add Azure Broker Docs (@piotrmiskiewicz)
- #2357 Update filenames to use new numbering format (@tomekpapiernik)
- #2376 Kyma installer -Upgrade step should wait until success or timeout (@aszecowka)
- #2234 Bump console images for scrollspy feature on content-ui (@magicmatatjahu)
- #2221 Update test acceptance image version (@jasiu001)
- #2220 Fix acceptance tests (@jasiu001)
- #2174 Split "servicecatalog" domain in UI API Layer (@pkosiec)
- #2178 Use bundles 0.2.0 - added testing bundles. (@piotrmiskiewicz)
Cluster
- #2491 Fix nats-streaming issue (@marcobebway)
Eventing
- #2678 Fix the ci-gometalinter for event-bus (@marcobebway)
- #2642 Add publish-knative helm charts (@marcobebway)
- #2624 fix event-bus-publish target URL (@montaro)
- #2534 Improve the event-flow-requirements documentation (@bszwarc)
- #2559 Improve naming for event-bus tracing (@suleymanakbas91)
- #2491 Fix nats-streaming issue (@marcobebway)
- #2526 Update knative eventing images (@radufa)
- #2346 Upgrade minikube and K8S version (@abbi-gaurav)
- #2476 Fix event bus gometalinter issue (@suleymanakbas91)
- #2407 Create skeleton subscription-controller (@suleymanakbas91)
- #2258 Add the knative-publish app (@marcobebway)
- #2359 Migrate nats streaming helm chart to kyma resources (@montaro)
- #2371 Change names and numbers of selected documents (@kazydek)
- #2332 Document uploading nats-streaming provisioner images (@suleymanakbas91)
Security
- #2643 Add instructions on how to secure graphql (@kubadz)
- #2626 Bump API controller and API controller acceptance tests images (@jakkab)
- #2648 Update api-controller accceptance tests (@jakkab)
- #2621 API controller: add API validation - allow one API per service (@jakkab)
- #2659 Modify charts for GraphQL authorisation (@sjanota)
- #2317 Add authorization layer to UI API layer (@sjanota)
- #2576 Apply review input for GraphQL docs (@tomekpapiernik)
- #2451 Add GraphQL docs (@tomekpapiernik)
- #2457 Fix test for multi dex providers (@aszecowka)
- #2357 Update filenames to use new numbering format (@tomekpapiernik)
Service Mesh
- #2626 Bump API controller and API controller acceptance tests images (@jakkab)
- #2648 Update api-controller accceptance tests (@jakkab)
- #2621 API controller: add API validation - allow one API per service (@jakkab)
- #2584 Enable kyma-istio-patch for upgradeability (@Demonsthere)
- #2481 Exempt the kube-system and knative-build namespaces from automatic sidecar injection (@jakkab)
- #2495 Enable/disable sidecar injection in namespaces provided in istio-kyma-patch-config configmap (@jakkab)
- #2475 istio-kyma-patch image bump (@Tomasz-Smelcerz-SAP)
- #2411 Switch default istio injection policy to enabled in istio-kyma-patch (@Tomasz-Smelcerz-SAP)
- #2420 Enable default sidecar injection (@jakkab)
- #2357 Update filenames to use new numbering format (@tomekpapiernik)
- #2340 Set sidecar injection to false in charts (@kfurgol)
- #2331 Set sidecar injection annotations to false in NS-controller, api-controller, azure-broker and dex (@kfurgol)
- #2327 Set sidecar injection annotations to false in Application Connector charts (@kfurgol)
- #2337 Set sidecar injection to false in service-catalog, cluster-essential, and core charts (@kfurgol)
Installation
- #2555 Add natss provisioner helm chart (@radufa)
- #2394 Move cluster overrides directly to Helm charts, split installation artifacts (@mszostok)
- #2536 Add removed links (@kazydek)
- #2510 Remove Resource Quotas from system namespaces (@piotrmiskiewicz)
- #2518 Admin password windows (@Tomasz-Smelcerz-SAP)
- #2513 Document the ability to define admin password for local deployment (@tomekpapiernik)
- #2509 Fix broken link in installation overview (@bszwarc)
- #2471 Improve local development with custom password for admin account (@kfurgol)
- #2429 Add ServiceMonitor CRD to cluster essentials (@derberg)
- #2455 Adjust installation docs after changing release artefacts (@mszostok)
- #2359 Migrate nats streaming helm chart to kyma resources (@montaro)
- #2384 Bump installer version (@aszecowka)
- #2376 Kyma installer -Upgrade step should wait until success or timeout (@aszecowka)
- #2216 Document Kyma update process (@Tomasz-Smelcerz-SAP)
- #2257 Validate minikube.sh, run.sh and installer.sh scripts input parameters (@kfurgol)
- #2226 Remove function for calling Bash scripts from the Installer component (@jakkab)
- #2204 Incorporate default ClusterRoleBinding into the minikube.sh script (@jakkab)
- #2087 Make is-installed script not exit on error (@kubadz)
Monitoring
- #2429 Add ServiceMonitor CRD to cluster essentials (@derberg)
- #2377 Change numbering for documents (@bszwarc)
Logging
Tracing
- #2559 Improve naming for event-bus tracing (@suleymanakbas91)
Console
- #2676 Bump instances-ui image (@polskikiel)
- #2679 Bump Content UI image (@pkosiec)
- #2659 Modify charts for GraphQL authorisation (@sjanota)
- #2317 Add authorization layer to UI API layer (@sjanota)
- #2587 Bump ui-api-layer images (@tgorgol)
- #2582 Bump images of console views for modularisation of service-catalog (@magicmatatjahu)
- #2581 Don't ignore errors in UI API Layer (@tgorgol)
- #2579 Browser cache invalidation improvements (console) (@pekura)
- #2539 Bump UI Acceptance tests (@pkosiec)
- #2486 Update cluster roles with SelfSubjectRulesReview (@dariadomagala)
- #2441 Bump service-catalog views images (@magicmatatjahu)
- #2499 Bump ui api layer images (@tgorgol)
- #2496 Implement GraphQL subscription for pods (@tgorgol)
- #2439 Bump ui-api-layer images (@tgorgol)
- #2395 Extract all modular microfrontends from static console configuration into clustermicrofrontends c rs (@pekura)
- #2437 Implement GraphQL mutations for pods (@tgorgol)
- #2371 Change names and numbers of selected documents (@kazydek)
- #2333 Bump ui-api-layer images (@tgorgol)
- #2287 Stabilise UI Tests in variable network conditions (@kwiatekus)
- #2280 Implement GraphQL query for pods (@tgorgol)
- #2312 Update console packages to fix potential security vulnerabilities (@akucharska)
- #2262 Bump UI API Layer acceptance tests (@pkosiec)
- #2261 Fix BackendModule test in UI API Layer acceptance tests (@pkosiec)
- #2239 Fix console-basic-test (@kwiatekus)
- #2207 Adjust labels in console UI (@kwiatekus)
- #2229 Introduce UI API Layer documentation (@pkosiec)
- #2228 Disable cache in ui tests (@kwiatekus)
- #2201 Stabilize ui tests for variable network conditions (@kwiatekus)
- #2170 Bump UI API Layer with acceptance tests (@pkosiec)
- #2174 Split "servicecatalog" domain in UI API Layer (@pkosiec)
- #2168 Split "servicecatalog" module in UI API Layer Acceptance tests (@pkosiec)
- #1991 Luigified Console (@kwiatekus)
Documentation
- #2643 Add instructions on how to secure graphql (@kubadz)
- #2685 Bump documentation image (@michal-hudy)
- #2637 Add Asset Store chart (@michal-hudy)
- #2542 Add Asset Controller (@michal-hudy)
- #2666 Fix broken links in docs (@magicmatatjahu)
- #2679 Bump Content UI image (@pkosiec)
- #2665 Add further asset store configuration (@kazydek)
- #2422 Fix installation documentation (@adamwalach)
- #2662 Remove type matadata from two docs (@kazydek)
- #2430 Add the Asset Store component (@kazydek)
- #2620 Document securing APIs with generated client cert. (@tomekpapiernik)
- #2593 Add docs-job.yaml and few fixes (@klaudiagrz)
- #2580 Create a new helm-broker topic for the docs (@klaudiagrz)
- #2576 Apply review input for GraphQL docs (@tomekpapiernik)
- #2534 Improve the event-flow-requirements documentation (@bszwarc)
- #2575 Fix broken diagram links for Application Broker (@tomekpapiernik)
- #2490 Rename environment to namespace in ui-api-layer (@polskikiel)
- #2451 Add GraphQL docs (@tomekpapiernik)
- #2556 Move the Application Broker documentation to the Application Connector topic (@klaudiagrz)
- #2543 Update Application Registry API spec (@Szymongib)
- #2536 Add removed links (@kazydek)
- #2529 Add relative links for cross-references between Kyma docs (@klaudiagrz)
- #2531 Fix autoscaling version (@Demonsthere)
- #2524 Add provisionOnlyOnce flag info (@mszostok)
- #2521 Resize screenshot so that it displays well on UI #2 (@klaudiagrz)
- #2513 Document the ability to define admin password for local deployment (@tomekpapiernik)
- #2512 Bump docs version (@piotrmiskiewicz)
- #2511 Resize screenshot so that it displays well on UI (@klaudiagrz)
- #2509 Fix broken link in installation overview (@bszwarc)
- #2506 Fix Azure Broker class docs (@piotrmiskiewicz)
- #2450 Introduce Bucket controller for Asset Store (@pkosiec)
- #2294 Remove azure broker from kyma installation (@polskikiel)
- #2462 Fix the numeration bug (@klaudiagrz)
- #2458 Change the docs numeration (@klaudiagrz)
- #2455 Adjust installation docs after changing release artefacts (@mszostok)
- #2347 Update Kyma installation documentation (@klaudiagrz)
- #2442 Improvements for AKS documentation (@adamwalach)
- #2402 Bump docs version after azure broker classes docs update (@polskikiel)
- #2419 Fix broken links (@bszwarc)
- #2407 Create skeleton subscription-controller (@suleymanakbas91)
- #2423 Update "Get the client certificate" tutorial (@tomekpapiernik)
- #2432 Update dead links in docs of installation Kyma on AKS (@magicmatatjahu)
- #2351 Update GCP BRoker Provider doc and add Azure Broker Docs (@piotrmiskiewicz)
- #2355 Install Kyma on AKS (@adamwalach)
- #2410 Rename the file and update the image (@klaudiagrz)
- #2406 Update the SC screenshot (@klaudiagrz)
- #2392 Update image version (@klaudiagrz)
- #2396 Rename outstanding items from "remote env." to "application" renaming (@tomekpapiernik)
- #2357 Update filenames to use new numbering format (@tomekpapiernik)
- #2377 Change numbering for documents (@bszwarc)
- #2371 Change names and numbers of selected documents (@kazydek)
- #2332 Document uploading nats-streaming provisioner images (@suleymanakbas91)
- #2354 Update README.md (@klaudiagrz)
- #2336 Update link and Namespace documentation (@tomekpapiernik)
- #2308 Rename "Environments" to "Namespaces" (@tomekpapiernik)
- #2318 Update doc title about Node.js runtime (@derberg)
- #2216 Document Kyma update process (@Tomasz-Smelcerz-SAP)
- #2297 Fix typo in documentation (@michal-hudy)
- #2296 Fix bug in 013-details-charts.md (@tomekpapiernik)
- #2277 Correct the Azure link (@kazydek)
- #2268 Improve console documentation (@michal-hudy)
- #2263 Remove redundant ticks from console docs (@michal-hudy)
- #2235 Add cluster name info to the stability checker summary (@polskikiel)
- #2242 Change Help label to Docs in core navigation on console ui (@magicmatatjahu)
- #2240 Bump documentation (@pkosiec)
- #2234 Bump console images for scrollspy feature on content-ui (@magicmatatjahu)
- #2229 Introduce UI API Layer documentation (@pkosiec)
- #2205 Update xip installation documentation (@kfurgol)
- #2218 Add docs how to install Knative from release (@sjanota)
- #2198 Fix the links in the SC documentation (@klaudiagrz)
- #2177 Improve the overall SC documentation (@klaudiagrz)
- #2185 Update doc image (@kazydek)
- #2178 Use bundles 0.2.0 - added testing bundles. (@piotrmiskiewicz)
CI
- #2678 Fix the ci-gometalinter for event-bus (@marcobebway)
- #2535 Remove common Jenkinsfile (@crabtree)
- #2533 Bump stability checker version (@piotrmiskiewicz)
- #2494 Bump version of acceptance tests and ui-api-layer-acceptance-tests (@aszecowka)
- #2346 Upgrade minikube and K8S version (@abbi-gaurav)
- #2457 Fix test for multi dex providers (@aszecowka)
- #2362 Remove Jenkinsfiles from components, tests, tools, docs and governance (@franpog859)
- #2417 Delete integration Jenkins files (@franpog859)
- #2416 Remove orchestrator Jenkinsfile (@crabtree)
- #2414 Remove release related jenkinsfiles (@crabtree)
- #2375 Remove unused prow folder (@suleymanakbas91)
- #2370 Move prow folder (@suleymanakbas91)
- #2361 Add watch-pods to kyma integration job (@suleymanakbas91)
- #2195 Fix connection-token-handler Gopkg.lock (@crabtree)
- #2087 Make is-installed script not exit on error (@kubadz)
Committers: 45
- Adam Szecówka (@aszecowka)
- Adam Wałach (@adamwalach)
- Agata (@akucharska)
- Ahmed ElRefaey Hamouda (@montaro)
- Barbara Szwarc (@bszwarc)
- Daria Domagała (@dariadomagala)
- Franciszek Pogodziński (@franpog859)
- Gaurav Abbi (@abbi-gaurav)
- Jakub Błaszczyk (@Demonsthere)
- Jakub Dziechciewicz (@kubadz)
- Jakub Kabza (@jakkab)
- Jan Mędrek (@janmedrek)
- Jesús Real Serrano (@jesusreal)
- Johannes Engelke (@joek)
- Karol Furgoł (@kfurgol)
- Karolina Zydek (@kazydek)
- Klaudia Grzondziel (@klaudiagrz)
- Korbinian Stoemmer (@k15r)
- Krystian Cieślik (@crabtree)
- Krzysztof (@kwiatekus)
- Lilit Ghazaryan (@lilitgh)
- Lukasz Gornicki (@derberg)
- Lukasz Szymik (@lszymik)
- Maciej Urbańczyk (@magicmatatjahu)
- Marco Bebway (@marcobebway)
- Mateusz Puczyński (@aerfio)
- Mateusz Szostok (@mszostok)
- Michal Kempski (@polskikiel)
- Michał Hudy (@michal-hudy)
- Michał Wieczorek (@mwieczorek)
- Paweł Kosiec (@pkosiec)
- Peter Kurajsky (@pekura)
- Piotr (@pbochynski)
- Piotr Jasiak (@jasiu001)
- Piotr Miśkiewicz (@piotrmiskiewicz)
- Radu Fantaziu (@radufa)
- Rakesh Garimella (@rakesh-garimella)
- Sayan Hazra (@sayanh)
- Suleyman Akbas (@suleymanakbas91)
- Szymon Gibała (@Szymongib)
- Szymon Janota (@sjanota)
- Tomasz Gorgol (@tgorgol)
- Tomasz Papiernik (@tomekpapiernik)
- Tomasz Smelcerz (@Tomasz-Smelcerz-SAP)
- Ventura, Santiago (@venturasr)