# Configuration of Services

Planeo was built to make service configuration trivial using the combination of our abstraction model and Planeobot. While the configuration of Kubernetes resources such as Deployments, Services, HPA, and CRDs can be mired in seemingly endless complexity, our goal is to accelerate the delivery of cloud native services by streamlining the path to production.

Services are configured through two resources

* Templates which wrap Helm charts and define a simple configuration interface
* Stacks which reference specific Templates and define parameters to drive values templates

A change to a template could either provide

1. a specific values file parameter that the Helm chart supports
2. a templated values file parameter that is tied to a Stack level argument, and can be configured in each Stack
3. an automatic templated value such as the namespace, stack name, etc, to allow the template to be consumed by many stacks

Changes to Templates are automatically applied to Stacks, so defining sensible and working defaults is encourged.

As always, Planeobot is a indisposable resource for configuring services, and can help with troubleshooting, configuration, best pracitces and more! Some potential requests include

* Map my postgres port to 5433 for my transaction service
* Change my database password to "secretpass" in my user service
* When I use my service I get the following error, how can I fix this?
* Is my Kubernetes Service routing set up correctly?
* How can I scale my service?


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://documentation.planeo.dev/configuration-of-services.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
