styling
This commit is contained in:
parent
2c339a6b73
commit
6f0ac1777a
6 changed files with 33 additions and 17 deletions
|
@ -22,7 +22,7 @@ Telekom MMS & T-Systems, December 2024
|
||||||
|
|
||||||
## 📖 About the Product
|
## 📖 About the Product
|
||||||
|
|
||||||
**edpbuilder** is a tool to quickly instantiate and manage **I**nternal **D**eveloper **P**latform's (**IDP**s).
|
**edpbuilder** is a tool to quickly instantiate and manage **I**nternal **D**evelopment **P**latform's (**IDP**s).
|
||||||
The **E**dge **D**evelopment **P**latform Builder(**edp**builder) can easily setup a Kubenetes cluster (local kind cluster or OSC instance) and deploy tools to manage the Kubernetes resources and the software lifecicle of an application.
|
The **E**dge **D**evelopment **P**latform Builder(**edp**builder) can easily setup a Kubenetes cluster (local kind cluster or OSC instance) and deploy tools to manage the Kubernetes resources and the software lifecicle of an application.
|
||||||
One usecase to demonstrate the capabilities of our tool is the PetClinic Application. (LINK)
|
One usecase to demonstrate the capabilities of our tool is the PetClinic Application. (LINK)
|
||||||
|
|
||||||
|
|
|
@ -2,17 +2,25 @@
|
||||||
|
|
||||||
[Argo CD](https://argoproj.github.io/cd/) is an open-source **continuous delivery platform** that automates the deployment of applications to Kubernetes clusters. It ensures consistent deployments by minimizing human errors and increasing efficiency through **declarative** configuration management, using **Git repositories as the single source of truth** for defining application infrastructure states.
|
[Argo CD](https://argoproj.github.io/cd/) is an open-source **continuous delivery platform** that automates the deployment of applications to Kubernetes clusters. It ensures consistent deployments by minimizing human errors and increasing efficiency through **declarative** configuration management, using **Git repositories as the single source of truth** for defining application infrastructure states.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## Main features
|
## Main features
|
||||||
|
|
||||||
**1. Declarative Configuration Management**
|
1. **Declarative Configuration Management**
|
||||||
Argo CD uses declarative YAML or JSON files stored in Git repositories to manage application infrastructure. These files define the desired state, ensuring that applications are consistently deployed to Kubernetes clusters with every deployment.
|
Argo CD uses declarative YAML or JSON files stored in Git repositories to manage application infrastructure. These files define the desired state, ensuring that applications are consistently deployed to Kubernetes clusters with every deployment.
|
||||||
|
|
||||||
**2. Kubernetes-Native Integration**
|
2. **Kubernetes-Native Integration**
|
||||||
Designed specifically for Kubernetes, Argo CD integrates seamlessly within the Kubernetes ecosystem. It leverages Kubernetes’ native capabilities for managing deployments and cluster resources, aligning with GitOps principles to handle changes automatically based on the declarative configurations in Git.
|
Designed specifically for Kubernetes, Argo CD integrates seamlessly within the Kubernetes ecosystem. It leverages Kubernetes’ native capabilities for managing deployments and cluster resources, aligning with GitOps principles to handle changes automatically based on the declarative configurations in Git.
|
||||||
|
|
||||||
**3. Self-Healing and Automatic Rollbacks**
|
3. **Self-Healing and Automatic Rollbacks**
|
||||||
Argo CD detects drift (when the actual state of a cluster deviates from the desired state) and automatically reconciles changes to restore the desired state. It also supports automatic rollbacks in the event of deployment failures, provided policies are defined in Git configurations.
|
Argo CD detects drift (when the actual state of a cluster deviates from the desired state) and automatically reconciles changes to restore the desired state. It also supports automatic rollbacks in the event of deployment failures, provided policies are defined in Git configurations.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
We use ArgoCD exactly as intended by the Argo Project. For more information, please visit the [official ArgoCD documentation](https://argo-cd.readthedocs.io/en/stable/).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## 🔗 References
|
## 🔗 References
|
||||||
|
|
||||||
https://argo-cd.readthedocs.io/en/stable/
|
https://argo-cd.readthedocs.io/en/stable/
|
|
@ -4,7 +4,7 @@ Backstage is a Platform Portal for building and managing internal developer tool
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Key features of Backstage as a Platform Portal
|
## Main features of Backstage as a Platform Portal
|
||||||
|
|
||||||
### 🤝 Tool Integration
|
### 🤝 Tool Integration
|
||||||
|
|
||||||
|
@ -32,24 +32,20 @@ Backstage provides developers with centralized and convenient access to essentia
|
||||||
## How to use Backstage templates (Golden Paths) in EDP
|
## How to use Backstage templates (Golden Paths) in EDP
|
||||||
|
|
||||||
1. **Open the Backstage**
|
1. **Open the Backstage**
|
||||||
LINK
|
<https://edf-cc1.cx.fg1.ffm.osc.live/home>
|
||||||
|
|
||||||
2. **Navigate to "Create"**
|
2. **Navigate to "Create"**
|
||||||
|
|
||||||
In the left-hand menu, click on the "Create" option. This will open a page with available component templates.
|
In the left-hand menu, click on the "Create" option. This will open a page with available component templates.
|
||||||

|

|
||||||
|
|
||||||
3. **Select a template**
|
3. **Select a template**
|
||||||
|
|
||||||
Choose the template that suits your needs. For example, the "Spring PetClinic Template" may be shown in screenshots.
|
Choose the template that suits your needs. For example, the "Spring PetClinic Template" may be shown in screenshots.
|
||||||
|
|
||||||
4. **Fill out the required fields**
|
4. **Fill out the required fields**
|
||||||
|
|
||||||
Enter the necessary information that the template requires to create the component.
|
Enter the necessary information that the template requires to create the component.
|
||||||

|

|
||||||
|
|
||||||
5. **Monitor the template execution**
|
5. **Monitor the template execution**
|
||||||
|
|
||||||
After submission, you will be redirected to a page showing the status of each step. If all steps are completed successfully, your component is ready for use.
|
After submission, you will be redirected to a page showing the status of each step. If all steps are completed successfully, your component is ready for use.
|
||||||

|

|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@ Crossplane is an open-source Kubernetes add-on that extends Kubernetes' capabili
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Key features and benefits
|
## Main features and benefits
|
||||||
|
|
||||||
- **☁️ Cloud Agnostic:**
|
- **☁️ Cloud Agnostic:**
|
||||||
Crossplane can manage resources across various cloud providers, including AWS, Azure, GCP, and others.
|
Crossplane can manage resources across various cloud providers, including AWS, Azure, GCP, and others.
|
||||||
|
|
|
@ -4,7 +4,7 @@ In our EDP, we utilize Forgejo for Git hosting, Forgejo Registry for container i
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Features
|
## Main features
|
||||||
|
|
||||||
**Forgejo** is a Git server that provides version control for your code repositories. It offers:
|
**Forgejo** is a Git server that provides version control for your code repositories. It offers:
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,16 @@
|
||||||
|
# OpenBao
|
||||||
|
|
||||||
[OpenBao](https://openbao.org/) is a fork of [HashiCorp Vault](https://developer.hashicorp.com/vault) which is a centralized solution for managing and securing sensitive data like authentication credentials, usernames, API tokens, and database credentials.
|
[OpenBao](https://openbao.org/) is a fork of [HashiCorp Vault](https://developer.hashicorp.com/vault) which is a centralized solution for managing and securing sensitive data like authentication credentials, usernames, API tokens, and database credentials.
|
||||||
Beyond static secrets, OpenBao supports dynamic secrets, allowing applications to generate ephemeral credentials for enhanced security.
|
Beyond static secrets, OpenBao supports dynamic secrets, allowing applications to generate ephemeral credentials for enhanced security.
|
||||||
|
|
||||||
OpenBao's _Encrypt as a Service_ feature makes it simple to implement data encryption across your systems.
|
OpenBao's _Encrypt as a Service_ feature makes it simple to implement data encryption across your systems.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Main features
|
||||||
|
|
||||||
OpenBao's Secret Engines include:
|
OpenBao's Secret Engines include:
|
||||||
|
|
||||||
1. **Key-Value Store**
|
1. **Key-Value Store**
|
||||||
2. **PKI** (Public Key Infrastructure) for certificate management
|
2. **PKI** (Public Key Infrastructure) for certificate management
|
||||||
3. **SSH** for managing SSH credentials
|
3. **SSH** for managing SSH credentials
|
||||||
|
@ -12,6 +19,7 @@ OpenBao's Secret Engines include:
|
||||||
6. **Kubernetes Secrets** for seamless integration with containerized applications
|
6. **Kubernetes Secrets** for seamless integration with containerized applications
|
||||||
|
|
||||||
## 🔨 How to get it to run
|
## 🔨 How to get it to run
|
||||||
|
|
||||||
*Hint: To be able to use OpenBao it has to be unsealed first. This happens automatically. While unsealing an initial token is being created. To access this token just run the **./getpassword.sh** script.*
|
*Hint: To be able to use OpenBao it has to be unsealed first. This happens automatically. While unsealing an initial token is being created. To access this token just run the **./getpassword.sh** script.*
|
||||||
|
|
||||||
The External Secrets Operator needs a kubernetes secret containing the **OpenBao's initial token** (see above) to access its secrets. You can create it with:
|
The External Secrets Operator needs a kubernetes secret containing the **OpenBao's initial token** (see above) to access its secrets. You can create it with:
|
||||||
|
@ -31,7 +39,9 @@ And to add your first secret just run:
|
||||||
`kubectl exec -ti openbao-0 -n openbao -- vault kv put data/postgres POSTGRES_USER=admin POSTGRES_PASSWORD=123456`
|
`kubectl exec -ti openbao-0 -n openbao -- vault kv put data/postgres POSTGRES_USER=admin POSTGRES_PASSWORD=123456`
|
||||||
|
|
||||||
To fetch it as a kubernetes secret you'll need to create an **external-secrets.yaml** file and apply it to the cluster with `kubectl apply -f external-secrets.yaml`
|
To fetch it as a kubernetes secret you'll need to create an **external-secrets.yaml** file and apply it to the cluster with `kubectl apply -f external-secrets.yaml`
|
||||||
```
|
|
||||||
|
```yaml
|
||||||
|
|
||||||
# external-secret.yaml
|
# external-secret.yaml
|
||||||
apiVersion: external-secrets.io/v1beta1
|
apiVersion: external-secrets.io/v1beta1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
|
@ -59,6 +69,8 @@ spec:
|
||||||
|
|
||||||
After that just run `kubectl get externalsecrets -A` to check that there are no problems with synchronization. And to access the secret on your cluster run: `kubectl get secrets -n openbao`
|
After that just run `kubectl get externalsecrets -A` to check that there are no problems with synchronization. And to access the secret on your cluster run: `kubectl get secrets -n openbao`
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## 🔗 References
|
## 🔗 References
|
||||||
|
|
||||||
* https://openbao.org/docs/platform/k8s/helm/run/#initialize-and-unseal-openbao
|
* https://openbao.org/docs/platform/k8s/helm/run/#initialize-and-unseal-openbao
|
||||||
|
|
Loading…
Reference in a new issue