-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #4 from akyriako/2-telekom-scale-navbar
2 telekom scale navbar
- Loading branch information
Showing
10 changed files
with
887 additions
and
17 deletions.
There are no files selected for viewing
117 changes: 117 additions & 0 deletions
117
docs/best-practices/management-and-deployment/cloud-create/cloud-create.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,117 @@ | ||
--- | ||
id: cloud-create | ||
title: Cloud Create | ||
tags: [cloud-create] | ||
--- | ||
|
||
# Cloud Create | ||
Overview | ||
------------------------------------------------------ | ||
|
||
Cloud Create is a **free-to-use** Development and Management Platform, which enables cloud developers to create applications on Open Telekom Cloud **fast**. | ||
|
||
1. Cloud architects create applications from premade templates. | ||
2. They can visually design and adjust the application to fit their needs. | ||
3. An administrator deploys and updates the application on Open Telekom Cloud. | ||
4. Cloud architects can save a design as a private template for personal use or share it public with other users. | ||
|
||
|
||
[![_images/overview.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/overview.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/overview.png) | ||
|
||
Figure 1. Overview | ||
|
||
:::note | ||
* Cloud architects and administrators can be the same user. | ||
* Deployment on Swiss Open Telekom Cloud and the function "Save & Share templates" are upcoming features. | ||
::: | ||
|
||
### How cloud architects design the application | ||
|
||
Cloud architects can design the application from scratch or from **premade templates**: | ||
|
||
[![_images/overview-templates.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/overview-templates.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/overview-templates.png) | ||
|
||
Figure 2. Select an app template to start. | ||
|
||
They can quickly deploy a template or start a new design from it: | ||
|
||
[![_images/overview-templates2.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/overview-templates2.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/overview-templates2.png) | ||
|
||
Figure 3. Quick deploy OpenShift or Design using this template. | ||
|
||
Cloud Create also comes up with a visual designer for less-coding or no-coding. Developers can drag and drop the components together like lego bricks as in the following example: | ||
|
||
[![_images/overview-design.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/overview-design.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/overview-design.png) | ||
|
||
Figure 4. An application example with network, compute, ansible, bash scripts, and Grafana component. | ||
|
||
* In the above example, the network and compute are **infrastructure** components. AnsibleTasks, Bash, and Grafana are **service** components. | ||
* By using the Ansible and Bash components, developers can write code to execute on a compute directly. | ||
* Grafana is an example of a ready-to-use service available in the designer. Developers can define new services and import them to the designer as well. More details on Section [How to define and import and a new service](https://docs.otc.t-systems.com/cloud-create/umn/tosca_tutorials/index.html#how-to-define-and-import-and-a-new-service). | ||
|
||
:::note | ||
App templates and service components are [opensource and available on our Github](https://github.com/opentelekomcloud-blueprints/tosca-service-catalogs). | ||
::: | ||
|
||
### How administrators deploy the application | ||
|
||
Before the deployment can start, administrators select a **Version**, provide **Inputs**, which were designed by the cloud architects, and select a cloud provider (e.g., Open Telekom Cloud) to deploy. In addition, administrators can review the auto-generated workflow before it starts. | ||
|
||
[![_images/overview-deploy.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/overview-deploy.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/overview-deploy.png) | ||
|
||
Figure 5. Administrators select Open Telekom Cloud (OTC) to deploy | ||
|
||
During the deployment, administrators can interactively click on a workflow step and see **Terraform** is applied for the infrastructure components. For the service components, the deployment script of the service (e.g., Ansible) is applied on the target compute. | ||
|
||
[![_images/deployment_logs.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/deployment_logs.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/deployment_logs.png) | ||
|
||
Figure 6. An example Terraform is generated and applied for a Compute | ||
|
||
Why Cloud Create? | ||
----------------------------------------------------------------------- | ||
|
||
The following table shows the differences between the Web console / other tools and Cloud Create: | ||
|
||
[![_images/features_compare.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/features_compare.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/features_compare.png) | ||
|
||
Figure 7. Features comparison | ||
|
||
Both the Web console and Cloud Create can deploy one cloud service. However, an application nowadays consists of multiple cloud services but not just one. Furthermore, each application has individual needs to adapt to the cloud differently. The Web console can bring up one service up and running separately but cannot automate an application with multiple services. | ||
|
||
With Cloud Create, after creating an application from a template, you can modify the application to fit your individual needs. For example, one of our customer used Cloud Create to create their application from the OpenShift template, then they added a worker node with the GPU capability and wrote an Ansible script to deploy packages on the bastion host, etc. The given example shows that the modification can happen in every corner, from the cloud infrastructure to the software layer of your application. Finally, you can run update between versions on operation day 2 as well. To update between versions, Cloud Create auto-calculates the differences between the two versions and auto-generates the update workflow steps from one version to other one. | ||
|
||
New features | ||
-------------------------------------------------------------- | ||
|
||
### OpenShift template (v2.13) | ||
|
||
Users can create a [Self-managed OpenShift Container Platform](https://www.redhat.com/en/technologies/cloud-computing/openshift/container-platform) on Open Telekom Cloud from the [OpenShift template](https://docs.otc.t-systems.com/cloud-create/umn/service_catalogs/openshift.html#openshift). | ||
|
||
FAQ | ||
-------------------------------------------- | ||
|
||
### What are the differences between Cloud Create and the Web console | ||
|
||
With the [Web console](https://console.otc.t-systems.com/), users can only create the cloud infrastructure manually. It means, they can create a network, a storage, a VM separately but without automation. | ||
|
||
On the other hand, Cloud Create enables developers to design and automate the deployment of the whole application including the cloud infrastructure and services. In addition, developers can design the application in various versions and run update between them. Finally, Cloud Create provides premade templates (e.g., OpenShift) to re-use and extend. | ||
|
||
### How can I login in to Cloud Create | ||
|
||
You can log in to Cloud Create using an IAM user account with the **Tenant Administrator** role. This is the same credentials when you log in to the web console, **not the ICU account**. | ||
|
||
If you do not have a user account in the IAM, see [How to create a user account & login](https://docs.otc.t-systems.com/cloud-create/umn/register.html#how-to-login). | ||
|
||
### Which components are supported | ||
|
||
An overview of all supported components is available in Section [Components overview](https://docs.otc.t-systems.com/cloud-create/umn/components_overview.html#components-overview). | ||
|
||
### Is Cloud Create opensource | ||
|
||
Cloud Create is based on two opensource projects Application Lifecycle Enablement for Cloud (Alien4cloud) and Ystia Orchestrator (Yorc). At Open Telekom Cloud, we further integrate it with OpenStack and Google Cloud, provide an easy-to-use UI, added features (e.g., secrets management, deployment update, OpenShift template, etc.), and enforce the strictest Privacy and Security Assessment (PSA) process of Deutsche Telekom. | ||
|
||
All premade templates and service components are opensource and available on [our Github](https://github.com/opentelekomcloud-blueprints/tosca-service-catalogs). You can create pull requests to add more components and fix bugs. | ||
|
||
### Which Terraform version do you use | ||
|
||
We use Terraform 1.5.4 under the Mozilla Public License v2.0 (MPL 2.0). |
71 changes: 71 additions & 0 deletions
71
...agement-and-deployment/cloud-create/google-cloud/application-dynamic-subnets.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,71 @@ | ||
--- | ||
id: application-dynamic-subnets | ||
title: Design with dynamic subnets | ||
tags: [multi-cloud, google, gcp, cloud-create] | ||
--- | ||
|
||
# Design with dynamic subnets | ||
The Section [Design your application with static subnets in multiple regions](https://docs.otc.t-systems.com/cloud-create/umn/google/multi_regions.html#google-static-subnets) shows how to define multiple subnets for a network **explicitly**. However, users may not want to define the subnets explicitly. In such a case, the Cloud Create will auto-generate one subnet for each region dynamically as follows: | ||
|
||
Design | ||
------------------------------------------------------------- | ||
|
||
* Design an application with two computes connecting to the same `Private` network. The Private network has no subnets. | ||
* Click on the `Private` network and specify the **cidr**: `10.0.0.0/24`. | ||
* Connect the first compute (e.g., `Compute`) to the `Public` network. | ||
|
||
|
||
[![../_images/auto-subnets.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/auto-subnets.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/auto-subnets.png) | ||
|
||
Figure 1. Auto-generated subnet example | ||
|
||
Deploy | ||
------------------------------------------------------------- | ||
|
||
### Case 1. Two computes in the same region | ||
|
||
1. Go to **Deploy** / **Google** / **Configure cloud provider**. | ||
2. Choose the **zone** for the two computes in the **same region** `europe-west1` (e.g., choose `europe-west1-b` and `europe-west1-c` for `Compute` and `Compute_2`, respectively). | ||
|
||
|
||
#### Expected result | ||
|
||
* Google Cloud requires one region has at least one subnet. The designer auto-generates one subnet `Private_subnet_europe_west1` for the region `europe-west1` in the `Private` network. | ||
* The subnet has the **same cidr** of the `Private` network (i.e., `10.0.0.0/24`). | ||
* Both computes `Compute` and `Compute-2` connect to this subnet. | ||
|
||
|
||
[![../_images/auto-subnets2.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/auto-subnets2.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/auto-subnets2.png) | ||
|
||
Figure 2. Private\_subnet\_europe\_west1 is auto-generated for two computes in one region | ||
|
||
* The `routing_mode` of the `Private` network is auto set to `REGIONAL` (if not set) since all computes are in the same region. | ||
|
||
[![../_images/auto-subnets-result1b.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/auto-subnets-result1b.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/auto-subnets-result1b.png) | ||
|
||
Figure 3. The routing\_mode is auto set to REGIONAL | ||
|
||
### Case 2. Two computes in different regions | ||
|
||
1. Go to **Deploy** / **Google** / **Configure cloud provider**. | ||
2. Choose the **zone** for the computes in **two different regions** (e.g., choose the zone `europe-north1-a` and `europe-west1-c` for `Compute` and `Compute_2`, respectively). | ||
|
||
#### Expected result | ||
|
||
* Google Cloud requires one region has at least one subnet. Because we have two regions, the designer auto-generates two subnets for the region `europe-north1` and `europe-west1`. | ||
* The cidr of the `Private` network (i.e., `10.0.0.0/24`) is **auto subnetting** in two **equal ranges** for each subnet (i.e., `10.0.0.0/25` and `10.0.0.128/25`). | ||
* Two computes connect to two separated subnets in different regions. | ||
|
||
[![../_images/auto-subnets-result2.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/auto-subnets-result2.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/auto-subnets-result2.png) | ||
|
||
Figure 4. Two subnets are auto-generated for two regions | ||
|
||
* The `routing_mode` of the `Private` network is auto set to `GLOBAL` (if not set) so that the two computes from different regions can access each other via the internal IP address. | ||
|
||
[![../_images/auto-subnets-result2b.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/auto-subnets-result2b.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/auto-subnets-result2b.png) | ||
|
||
Figure 5. The routing\_mode is auto set to GLOBAL | ||
|
||
:::tip | ||
Auto-generated subnet is useful if you cannot decide the location of the computes at the design time (i.e., whether the computes are co-located in one or in different regions) but at the deployment time. In such a case, Cloud Create will transform the topology before the deployment for you. | ||
::: |
126 changes: 126 additions & 0 deletions
126
...-practices/management-and-deployment/cloud-create/google-cloud/google-deploy.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,126 @@ | ||
--- | ||
id: google-deploy | ||
title: How to deploy your application on Google Cloud | ||
tags: [multi-cloud, google, gcp, cloud-create] | ||
--- | ||
|
||
# How to deploy your application on Google Cloud | ||
Prerequisites | ||
---------------------------------------------------------------- | ||
|
||
To deploy on Google Cloud, you need to: | ||
|
||
* Have a Google Cloud account. | ||
* Your account has one of the following roles `roles/compute.admin`, `roles/editor`, or `roles/owner` assigned to a Google project. This role allows you to create a compute resource in the given project. | ||
* Your account has one of the following roles `roles/browser`, `roles/editor`, or `roles/owner`. This role allows Telekom Cloud Create to read the [IAM access control policy](https://cloud.google.com/resource-manager/docs/access-control-proj) of the project to check for access permissions before a deployment can start. | ||
* Enable the **Compute Engine API** and **Cloud Resource Manager API** in your google project. | ||
|
||
|
||
### How to assign a role to a principal | ||
|
||
* Go to: **IAM & Admin** / **IAM** | ||
* Go to **Principal**, click **Edit** and assign roles. The following example assigns the role `roles/browser` and `roles/compute.admin` to a principal. | ||
|
||
|
||
[![../_images/set-roles.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/set-roles.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/set-roles.png) | ||
|
||
Figure 1. Set IAM roles for a user | ||
|
||
### How to enable an API on Google Cloud | ||
|
||
* Go to: **APIs & Services** / **Library** | ||
* Search for an API (e.g., `Compute Engine` or `Cloud Resource`) | ||
* Click **Enable** | ||
|
||
[![../_images/enable-api.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/enable-api.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/enable-api.png) | ||
|
||
Figure 2. Enable Compute Engine API | ||
|
||
How to deploy | ||
---------------------------------------------------------------- | ||
|
||
### Choose the Google Cloud location | ||
|
||
1. Go to: **Deploy** | ||
2. Choose **Google** | ||
|
||
|
||
[![../_images/deploy-step1.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/deploy-step1.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/deploy-step1.png) | ||
|
||
Figure 3. Choose Google Cloud location | ||
|
||
### Authenticate for the first time | ||
|
||
* The first time you deploy an application on Google Cloud, Cloud Create redirects you to Google Cloud to loggin. | ||
* After logging sucessfully, click on the **allow** button to grant the permissions for Cloud Create to manage compute resources on Google Cloud on your behalf. | ||
|
||
|
||
[![../_images/deploy-step2.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/deploy-step2.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/deploy-step2.png) | ||
|
||
Figure 4. Authenticate and grant permissions | ||
|
||
:::important | ||
By clicking the allow button, you allow Cloud Create to access the following information: | ||
|
||
1. Read your email address for authentication purpose. | ||
2. List your Google projects so you can choose a Google project to deploy. | ||
3. Manage compute resources on Google Cloud (e.g., to create and delete a VM). | ||
|
||
In particular, Cloud Create requests the following OAuth scopes: | ||
|
||
* `https://www.googleapis.com/auth/userinfo.email` | ||
* `https://www.googleapis.com/auth/cloudplatformprojects.readonly` | ||
* `https://www.googleapis.com/auth/compute` | ||
::: | ||
|
||
:::tip | ||
You can revoke access any time later. See [3\. How to revoke access](#google-revoke-access). | ||
::: | ||
|
||
### Choose a Google project to deploy | ||
|
||
* Cloud Create displays a list of the Google projects, which you have the permissions to create a compute resource. | ||
* Choose one Google project you want to deploy your app into. | ||
|
||
[![../_images/deploy-step3.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/deploy-step3.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/deploy-step3.png) | ||
|
||
Figure 5. Choose a google project to deploy | ||
|
||
:::note | ||
If no projects are dislayed, it means you do not have the roles mentioned in the [1\. Prerequisites](#google-prerequisites). In such a case, ask your Google administrators to assign a role in a Google project for you. | ||
::: | ||
|
||
### Choose an availability zone and keypair (optional) | ||
|
||
1. Click **Configure cloud provider** | ||
2. Choose a **Compute**. | ||
3. Choose an availability **zone** from the dropbox. The default availability zone is `europe-west1-c` if not set. | ||
4. Choose a **keypair** from the dropbox. | ||
|
||
[![../_images/deploy-step4.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/deploy-step4.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/deploy-step4.png) | ||
|
||
Figure 6. Choose a zone and keypair | ||
|
||
:::tip | ||
If the keypair dropbox is empty, you can create a keypair from the Open Telekom Cloud console and refresh the page to display it. | ||
::: | ||
|
||
### Deploy | ||
|
||
* Click **Deploy** to start. | ||
|
||
How to revoke access | ||
------------------------------------------------------------------------------ | ||
|
||
In step 2, you grant Cloud Create the permissions to manage compute resources on your behalf. You can revoke this access anytime. | ||
|
||
To revoke: | ||
|
||
* Go to: 1. **Manage your Google account** / 2. **Security** / 3. **Third party apps with account access**. | ||
* Click on **Revoke access** button. | ||
|
||
[![../_images/deploy-revoke.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/deploy-revoke.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/deploy-revoke.png) | ||
|
||
Figure 7. Revoke token | ||
|
||
After the access is revoked, if you deploy your app on Google Cloud again, Cloud Create will ask you to authenticate to Google Cloud again (i.e., it will repeat step 2). |
13 changes: 13 additions & 0 deletions
13
docs/best-practices/management-and-deployment/cloud-create/google-cloud/google.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
--- | ||
id: google | ||
title: Multicloud Google Cloud | ||
tags: [multi-cloud, google, gcp, cloud-create] | ||
--- | ||
|
||
# Multicloud: Google Cloud | ||
|
||
This section shows how to deploy your application on Google Cloud. You can create your application in multiple regions. Cloud Create can auto-generate one subnet for each region or you can design the subnets manually. | ||
|
||
[![../_images/multi-regions.png](https://docs.otc.t-systems.com/cloud-create/umn/_images/multi-regions.png)](https://docs.otc.t-systems.com/cloud-create/umn/_images/multi-regions.png) | ||
|
||
Figure 1. An example to deploy an application in mutiple regions |
Oops, something went wrong.