From 4862e17b7de26e76ab178ea74acfaeb3076f9b23 Mon Sep 17 00:00:00 2001 From: Felix Kunde Date: Mon, 8 Jul 2019 17:17:27 +0200 Subject: [PATCH] use capital letter for names + fix typos --- CONTRIBUTING.md | 16 ++++--- docs/developer.md | 2 +- docs/index.md | 2 +- docs/reference/cluster_manifest.md | 48 +++++++++---------- .../reference/command_line_and_environment.md | 4 +- docs/reference/operator_parameters.md | 47 +++++++++--------- docs/user.md | 2 +- 7 files changed, 62 insertions(+), 59 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 3a40a700b..441c32920 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -4,15 +4,19 @@ Wanna contribute to the Postgres Operator? Yay - here is how! ## Reporting issues -If you have a question about patroni or have a problem using it, please read the`README` before filing an issue. -Also double check with the current issues on our [Issues Tracker](https://github.com/zalando/postgres-operator/issues). +Before filing an issue, if you have a question about Postgres Operator or have +a problem using it, please read the [concepts](docs/index.md) page or use the +different guides that we provide for [users](docs/user.md), +[developers](docs/developer.md) or [admins](docs/administrator). Also double +check with the current issues on our [Issues Tracker](https://github.com/zalando/postgres-operator/issues). ## Contributing a pull request -1. Submit a comment to the relevant issue or create a new issue describing your proposed change. -1. Do a fork, develop and test your code changes. -1. Include documentation -1. Submit a pull request. +1. Submit a comment to the relevant issue or create a new issue describing your + proposed change. +2. Do a fork, develop and test your code changes. +3. Include documentation +4. Submit a pull request. You'll get feedback about your pull request as soon as possible. diff --git a/docs/developer.md b/docs/developer.md index 3d07de53c..6e4b707e9 100644 --- a/docs/developer.md +++ b/docs/developer.md @@ -128,7 +128,7 @@ localhost:8080 by doing: $ kubectl --context minikube port-forward $(kubectl --context minikube get pod -l name=postgres-operator -o jsonpath={.items..metadata.name}) 8080:8080 -The inner 'query' gets the name of the postgres operator pod, and the outer +The inner 'query' gets the name of the Postgres Operator pod, and the outer enables port forwarding. Afterwards, you can access the operator API with: ``` diff --git a/docs/index.md b/docs/index.md index 7d987214f..eeeba899e 100644 --- a/docs/index.md +++ b/docs/index.md @@ -28,7 +28,7 @@ manages PostgreSQL clusters on Kubernetes (K8s): ### Scope -The scope of the postgres operator is on provisioning, modifying configuration +The scope of the Postgres Operator is on provisioning, modifying configuration and cleaning up Postgres clusters that use Patroni, basically to make it easy and convenient to run Patroni based clusters on K8s. The provisioning and modifying includes K8s resources on one side but also e.g. database diff --git a/docs/reference/cluster_manifest.md b/docs/reference/cluster_manifest.md index cef16dd77..5eb57c673 100644 --- a/docs/reference/cluster_manifest.md +++ b/docs/reference/cluster_manifest.md @@ -1,7 +1,7 @@ # Cluster manifest reference -Individual postgres clusters are described by the Kubernetes *cluster manifest* -that has the structure defined by the `postgres CRD` (custom resource +Individual Postgres clusters are described by the Kubernetes *cluster manifest* +that has the structure defined by the `postgresql` CRD (custom resource definition). The following section describes the structure of the manifest and the purpose of individual keys. You can take a look at the examples of the [minimal](https://github.com/zalando/postgres-operator/blob/master/manifests/minimal-postgres-manifest.yaml) @@ -21,7 +21,7 @@ applied. ## Manifest structure -A postgres manifest is a `YAML` document. On the top level both individual +A Postgres manifest is a `YAML` document. On the top level both individual parameters and parameter groups can be defined. Parameter names are written in camelCase. @@ -66,21 +66,21 @@ These parameters are grouped directly under the `spec` key in the manifest. It should be a [Spilo](https://github.com/zalando/spilo) image. Optional. * **spiloFSGroup** - the Persistent Volumes for the spilo pods in the StatefulSet will be owned and + the Persistent Volumes for the Spilo pods in the StatefulSet will be owned and writable by the group ID specified. This will override the **spilo_fsgroup** operator parameter. This is required to run Spilo as a non-root process, but - requires a custom spilo image. Note the FSGroup of a Pod cannot be changed + requires a custom Spilo image. Note the FSGroup of a Pod cannot be changed without recreating a new Pod. Optional. * **enableMasterLoadBalancer** boolean flag to override the operator defaults (set by the `enable_master_load_balancer` parameter) to define whether to enable the load - balancer pointing to the postgres primary. Optional. + balancer pointing to the Postgres primary. Optional. * **enableReplicaLoadBalancer** boolean flag to override the operator defaults (set by the `enable_replica_load_balancer` parameter) to define whether to enable the - load balancer pointing to the postgres standby instances. Optional. + load balancer pointing to the Postgres standby instances. Optional. * **allowedSourceRanges** when one or more load balancers are enabled for the cluster, this parameter @@ -145,20 +145,20 @@ Those parameters are grouped under the `postgresql` top-level key, which is required in the manifest. * **version** - the postgres major version of the cluster. Looks at the [Spilo + the Postgres major version of the cluster. Looks at the [Spilo project](https://github.com/zalando/spilo/releases) for the list of supported versions. Changing the cluster version once the cluster has been bootstrapped is not supported. Required field. * **parameters** - a dictionary of postgres parameter names and values to apply to the resulting + a dictionary of Postgres parameter names and values to apply to the resulting cluster. Optional (Spilo automatically sets reasonable defaults for parameters like work_mem or max_connections). ## Patroni parameters -Those parameters are grouped under the `patroni` top-level key. See the [patroni +Those parameters are grouped under the `patroni` top-level key. See the [Patroni documentation](https://patroni.readthedocs.io/en/latest/SETTINGS.html) for the explanation of `ttl` and `loop_wait` parameters. @@ -180,25 +180,25 @@ explanation of `ttl` and `loop_wait` parameters. authentication. Optional. * **ttl** - patroni `ttl` parameter value, optional. The default is set by the Spilo + Patroni `ttl` parameter value, optional. The default is set by the Spilo docker image. Optional. * **loop_wait** - patroni `loop_wait` parameter value, optional. The default is set by the + Patroni `loop_wait` parameter value, optional. The default is set by the Spilo docker image. Optional. * **retry_timeout** - patroni `retry_timeout` parameter value, optional. The default is set by the + Patroni `retry_timeout` parameter value, optional. The default is set by the Spilo docker image. Optional. * **maximum_lag_on_failover** - patroni `maximum_lag_on_failover` parameter value, optional. The default is + Patroni `maximum_lag_on_failover` parameter value, optional. The default is set by the Spilo docker image. Optional. * **slots** permanent replication slots that Patroni preserves after failover by re-creating them on the new primary immediately after doing a promote. Slots - could be reconfigured with the help of `patronictl edit-config`. It is the + could be reconfigured with the help of `Patronictl edit-config`. It is the responsibility of a user to avoid clashes in names between replication slots automatically created by Patroni for cluster members and permanent replication slots. Optional. @@ -206,31 +206,31 @@ explanation of `ttl` and `loop_wait` parameters. ## Postgres container resources Those parameters define [CPU and memory requests and limits](https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/) -for the postgres container. They are grouped under the `resources` top-level +for the Postgres container. They are grouped under the `resources` top-level key with subgroups `requests` and `limits`. ### Requests -CPU and memory requests for the postgres container. +CPU and memory requests for the Postgres container. * **cpu** - CPU requests for the postgres container. Optional, overrides the + CPU requests for the Postgres container. Optional, overrides the `default_cpu_requests` operator configuration parameter. Optional. * **memory** - memory requests for the postgres container. Optional, overrides the + memory requests for the Postgres container. Optional, overrides the `default_memory_request` operator configuration parameter. Optional. ### Limits -CPU and memory limits for the postgres container. +CPU and memory limits for the Postgres container. * **cpu** - CPU limits for the postgres container. Optional, overrides the + CPU limits for the Postgres container. Optional, overrides the `default_cpu_limits` operator configuration parameter. Optional. * **memory** - memory limits for the postgres container. Optional, overrides the + memory limits for the Postgres container. Optional, overrides the `default_memory_limits` operator configuration parameter. Optional. ## Parameters defining how to clone the cluster from another one @@ -290,7 +290,7 @@ archive is supported. ## EBS volume resizing Those parameters are grouped under the `volume` top-level key and define the -properties of the persistent storage that stores postgres data. +properties of the persistent storage that stores Postgres data. * **size** the size of the target EBS volume. Usual Kubernetes size modifiers, i.e. `Gi` @@ -309,7 +309,7 @@ properties of the persistent storage that stores postgres data. Those parameters are defined under the `sidecars` key. They consist of a list of dictionaries, each defining one sidecar (an extra container running -along the main postgres container on the same pod). The following keys can be +along the main Postgres container on the same pod). The following keys can be defined in the sidecar dictionary: * **name** diff --git a/docs/reference/command_line_and_environment.md b/docs/reference/command_line_and_environment.md index 7324e8a39..210956e47 100644 --- a/docs/reference/command_line_and_environment.md +++ b/docs/reference/command_line_and_environment.md @@ -50,9 +50,9 @@ The following environment variables are accepted by the operator: `scalyr_api_key` operator parameter. * **CRD_READY_WAIT_TIMEOUT** - defines the timeout for the complete postgres CRD creation. When not set + defines the timeout for the complete `postgresql` CRD creation. When not set default is 30s. * **CRD_READY_WAIT_INTERVAL** - defines the interval between consecutive attempts waiting for the postgres + defines the interval between consecutive attempts waiting for the postgresql CRD to be created. The default is 5s. diff --git a/docs/reference/operator_parameters.md b/docs/reference/operator_parameters.md index 1a8cf6e3c..c4e685bda 100644 --- a/docs/reference/operator_parameters.md +++ b/docs/reference/operator_parameters.md @@ -77,7 +77,7 @@ Those are top-level keys, containing both leaf keys and groups. Kubernetes-native DCS). * **docker_image** - Spilo docker image for postgres instances. For production, don't rely on the + Spilo docker image for Postgres instances. For production, don't rely on the default image, as it might be not the most up-to-date one. Instead, build your own Spilo image from the [github repository](https://github.com/zalando/spilo). @@ -100,12 +100,12 @@ Those are top-level keys, containing both leaf keys and groups. create/update/delete/sync clusters concurrently. The default is `4`. * **max_instances** - operator will cap the number of instances in any managed postgres cluster up + operator will cap the number of instances in any managed Postgres cluster up to the value of this parameter. When `-1` is specified, no limits are applied. The default is `-1`. * **min_instances** - operator will run at least the number of instances for any given postgres + operator will run at least the number of instances for any given Postgres cluster equal to the value of this parameter. When `-1` is specified, no limits are applied. The default is `-1`. @@ -121,11 +121,11 @@ Parameters describing Postgres users. In a CRD-configuration, they are grouped under the `users` key. * **super_username** - postgres `superuser` name to be created by `initdb`. The default is + Postgres `superuser` name to be created by `initdb`. The default is `postgres`. * **replication_username** - postgres username used for replication between instances. The default is + Postgres username used for replication between instances. The default is `standby`. ## Kubernetes resources @@ -150,7 +150,7 @@ configuration they are grouped under the `kubernetes` key. This definition must bind pod service account to a role with permission sufficient for the pods to start and for Patroni to access k8s endpoints; service account on its own lacks any such rights starting with k8s v1.8. If - not excplicitly defined by the user, a simple definition that binds the + not explicitly defined by the user, a simple definition that binds the account to the operator's own 'zalando-postgres-operator' cluster role will be used. The default is empty. @@ -159,7 +159,7 @@ configuration they are grouped under the `kubernetes` key. after this timeout. The default is `5m`. * **watched_namespace** - The operator watches for postgres objects in the given namespace. If not + The operator watches for Postgres objects in the given namespace. If not specified, the value is taken from the operator namespace. A special `*` value makes it watch all namespaces. The default is empty (watch the operator pod namespace). @@ -188,7 +188,7 @@ configuration they are grouped under the `kubernetes` key. * **cluster_domain** defines the default dns domain for the kubernetes cluster the operator is running in. The default is `cluster.local`. Used by the operator to connect - to the postgres clusters after creation. + to the Postgres clusters after creation. * **oauth_token_secret_name** a name of the secret containing the `OAuth2` token to pass to the teams API. @@ -208,9 +208,8 @@ configuration they are grouped under the `kubernetes` key. * **inherited_labels** list of labels that can be inherited from the cluster manifest, and added to each child objects (`StatefulSet`, `Pod`, `Service` and `Endpoints`) created - by the opertor. - Typical use case is to dynamically pass labels that are specific to a given - postgres cluster, in order to implement `NetworkPolicy`. + by the operator. Typical use case is to dynamically pass labels that are + specific to a given Postgres cluster, in order to implement `NetworkPolicy`. The default is empty. * **cluster_name_label** @@ -234,7 +233,7 @@ configuration they are grouped under the `kubernetes` key. * **pod_environment_configmap** a name of the ConfigMap with environment variables to populate on every pod. - Right now this ConfigMap is searched in the namespace of the postgres cluster. + Right now this ConfigMap is searched in the namespace of the Postgres cluster. All variables from that ConfigMap are injected to the pod's environment, on conflicts they are overridden by the environment variables generated by the operator. The default is empty. @@ -245,9 +244,9 @@ configuration they are grouped under the `kubernetes` key. be defined in advance. Default is empty (use the default priority class). * **spilo_fsgroup** - the Persistent Volumes for the spilo pods in the StatefulSet will be owned and + the Persistent Volumes for the Spilo pods in the StatefulSet will be owned and writable by the group ID specified. This is required to run Spilo as a - non-root process, but requires a custom spilo image. Note the FSGroup of a Pod + non-root process, but requires a custom Spilo image. Note the FSGroup of a Pod cannot be changed without recreating a new Pod. * **spilo_privileged** @@ -283,19 +282,19 @@ Those parameters are grouped under the `postgres_pod_resources` key in a CRD-based configuration. * **default_cpu_request** - CPU request value for the postgres containers, unless overridden by + CPU request value for the Postgres containers, unless overridden by cluster-specific settings. The default is `100m`. * **default_memory_request** - memory request value for the postgres containers, unless overridden by + memory request value for the Postgres containers, unless overridden by cluster-specific settings. The default is `100Mi`. * **default_cpu_limit** - CPU limits for the postgres containers, unless overridden by cluster-specific + CPU limits for the Postgres containers, unless overridden by cluster-specific settings. The default is `3`. * **default_memory_limit** - memory limits for the postgres containers, unless overridden by cluster-specific + memory limits for the Postgres containers, unless overridden by cluster-specific settings. The default is `1Gi`. * **set_memory_request_to_limit** @@ -336,11 +335,11 @@ CRD-based configuration. cluster or recreating pods. The default is `10m`. * **ready_wait_interval** - the interval between consecutive attempts waiting for the postgres CRD to be - created. The default is `5s`. + the interval between consecutive attempts waiting for the `postgresql` CRD to + be created. The default is `5s`. * **ready_wait_timeout** - the timeout for the complete postgres CRD creation. The default is `30s`. + the timeout for the complete `postgresql` CRD creation. The default is `30s`. ## Load balancer related options @@ -396,7 +395,7 @@ yet officially supported. Spilo are S3 and GCS. The default is empty. * **log_s3_bucket** - S3 bucket to use for shipping postgres daily logs. Works only with S3 on AWS. + S3 bucket to use for shipping Postgres daily logs. Works only with S3 on AWS. The bucket has to be present and accessible by Postgres pods. The default is empty. @@ -447,7 +446,7 @@ Options to aid debugging of the operator itself. Grouped under the `debug` key. * **enable_database_access** boolean parameter that toggles the functionality of the operator that require - access to the postgres database, i.e. creating databases and users. The + access to the Postgres database, i.e. creating databases and users. The default is `true`. ## Automatic creation of human users in the database @@ -466,7 +465,7 @@ key. `https://teams.example.com/api/`. * **team_api_role_configuration** - postgres parameters to apply to each team member role. The default is + Postgres parameters to apply to each team member role. The default is '*log_statement:all*'. It is possible to supply multiple options, separating them by commas. Options containing commas within the value are not supported, with the exception of the `search_path`. For instance: diff --git a/docs/user.md b/docs/user.md index 966fe9c08..94e966ceb 100644 --- a/docs/user.md +++ b/docs/user.md @@ -300,7 +300,7 @@ Things to note: - An empty string is provided in `s3_wal_path` of the standby cluster will result in error and no statefulset will be created. - Only one pod can be deployed for stand-by cluster. -- To manually promote the standby_cluster, use patronictl and remove config +- To manually promote the standby_cluster, use `patronictl` and remove config entry. - There is no way to transform a non-standby cluster to become a standby cluster through operator. Hence, if a cluster is created without standby section in