From d0c9436c978d8a93f0c33138a452db5c67d6350c Mon Sep 17 00:00:00 2001 From: Branden Cobb <cobb_branden@bah.com> Date: Thu, 19 Aug 2021 22:20:46 +0000 Subject: [PATCH] Mattermost Resource Request and Limits --- chart/values.yaml | 2 +- charter/packages/mattermost/Architecture.md | 30 +++++++-------------- 2 files changed, 11 insertions(+), 21 deletions(-) diff --git a/chart/values.yaml b/chart/values.yaml index ec88e95f30..b46960a82b 100644 --- a/chart/values.yaml +++ b/chart/values.yaml @@ -919,7 +919,7 @@ addons: git: repo: https://repo1.dso.mil/platform-one/big-bang/apps/collaboration-tools/mattermost.git path: "./chart" - tag: "0.1.7-bb.1" + tag: "0.1.8-bb.1" # -- Flux reconciliation overrides specifically for the Mattermost Package flux: {} diff --git a/charter/packages/mattermost/Architecture.md b/charter/packages/mattermost/Architecture.md index f793d58673..6af1e04aae 100644 --- a/charter/packages/mattermost/Architecture.md +++ b/charter/packages/mattermost/Architecture.md @@ -90,41 +90,31 @@ The Mattermost Operator ships by default with health checks on the address `/api ## High Availability -**Important Note:** Mattermost by default handles scaling and what it interprets as your needs based upon the users it is configured for. See this note from the Mattermost Operator: - -```plaintext -Size defines the size of the Mattermost. This is typically -specified in number of users. This will override replica and resource -requests/limits appropriately for the provided number of users. -values of resources. Accepted values are: 100users, 1000users, 5000users, -10000users, and 250000users. If replicas and resource requests/limits -are not specified, and Size is not provided the configuration for -5000users will be applied. Setting ''Replicas'', ''Scheduling.Resources'', -''FileStore.Replicas'', ''FileStore.Resource'', ''Database.Replicas'', -or ''Database.Resources'' will override the values set by Size. -Setting new Size will override previous values regardless if set -by Size or manually. -``` +**To allow for defining replica count and resource requests/limits, `users` is set to `null` by default. Changing this will negate these values and mattermost may not run due to OPA Gatekeeper constraints.** -To update the "size" (`users` value) for Mattermost, you need to override the default of 100 in your values (note you do not need to include the word `users` since Big Bang handles this for you), as an example to set 1000: +To set a replica count greater than 1 requires an enterprise license, and can be configured like the following example: ```yaml addons: mattermost: values: - users: 1000 + enterprise: + enabled: true + replicaCount: 3 ``` -To override Mattermost's handling of replicas and explicitly set replicas you can specify this workaround in your values: +**Setting a user value is not supported due to OPA constraint issues** + +If you want to use Mattermost's user/size value you will need to handle OPA violations and exceptions yourself since this is **not BB supported.** If all of these considerations have been accounted for and you still want to deploy with Mattermost's user sizing it can be done by setting the value as in this example: ```yaml addons: mattermost: values: - users: null - replicaCount: 3 + users: 1000 ``` + ## Single Sign On (SSO) SSO is built in for Mattermost and Big Bang uses the [Gitlab SSO integration](https://docs.mattermost.com/deployment/sso-gitlab.html) as its implementation since this option is available at the free tier. Mattermost also provides OAuth and SAML integration as paid features for its [enterprise tiers](#licensing) if you wish to use those. -- GitLab