Create a landscape
Create a landscape to establish an operational boundary for stages and their deployment resources. Konfidence manages a dedicated namespace for each landscape.
Use Kubernetes access to create and maintain the landscape. Once its namespace is ready, configure deployment targets, registry credentials, and landscape services before creating stages.
For guidance on choosing landscape boundaries, see Landscapes and stages. To understand how a landscape connects artifacts to infrastructure, see the Deployment model.
Prerequisites
Before you begin, make sure you have:
- A project in which to create the landscape.
- Kubernetes permission to create and read
Landscaperesources in the namespace of the project. The update and delete sections also require the corresponding Kubernetes permissions. - Access to the Konfidence cluster through
kubectl.
Create a landscape
Save the following manifest as landscape.yaml. It defines a Landscape resource in the namespace managed by its project:
apiVersion: konfidence.cloud/v1alpha1
kind: Landscape
metadata:
name: prod-eu
namespace: kden-p-ecommerce-platform
spec:
displayName: Production - EU RegionApply the manifest:
kubectl apply -f landscape.yamlKonfidence creates and manages a namespace for the landscape. By default, its name starts with kden-l- and includes the landscape name and a stable suffix.
Use a specific namespace name
Konfidence normally generates a collision-resistant namespace name. If an integration requires a predetermined name, set spec.namespace when creating the landscape:
apiVersion: konfidence.cloud/v1alpha1
kind: Landscape
metadata:
name: prod-eu
namespace: kden-p-ecommerce-platform
spec:
displayName: Production - EU Region
namespace: ecommerce-prod-euThe namespace setting is immutable. Decide whether an override is necessary before creating the landscape.
Verify the landscape
Inspect the landscape to find its managed namespace:
kubectl get landscape prod-eu -n kden-p-ecommerce-platformThe output includes the managed namespace and the landscape's readiness status:
NAME DISPLAY NAME PROJECT NAMESPACE READY AGE
prod-eu Production - EU Region ecommerce-platform kden-l-prod-eu-5w54scz7 True 46hWhen the landscape is ready, the READY column shows True and the NAMESPACE column shows its managed namespace.
Update the display name
You can change the display name without changing the resource or namespace name:
kubectl patch landscape prod-eu \
--namespace=kden-p-ecommerce-platform \
--type=merge \
--patch='{"spec":{"displayName":"Production - European Union"}}'Delete a landscape
Deleting a landscape also deletes its managed namespace and the resources contained in it, including stages and deployed artifacts. Confirm that the landscape is no longer needed before deleting it.
kubectl delete landscape prod-eu \
--namespace=kden-p-ecommerce-platformKonfidence keeps the landscape in a terminating state until its managed namespace and all associated resources have been removed.
Next steps
- Configure deployment targets for a landscape makes the required deployment classes available.
- Give the deployer registry credentials in this landscape when artifacts come from private registries.
- Choose landscape services identifies services to install alongside your applications.
- Create a stage once the landscape is prepared.
- Consult the Landscape CRD reference for all fields.