docs(clustered): add section for troubleshooting licensing (#5534)
* docs: troubleshooting licensing * fix(clustered): Licensing - Revise install and licensing docs. * chore(ci): Skip kubectl in tests. * Update content/influxdb/clustered/admin/licensing.md Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com> --------- Co-authored-by: Jason Stirnaman <stirnamanj@gmail.com> Co-authored-by: Jason Stirnaman <jstirnaman@influxdata.com> Co-authored-by: Scott Anderson <sanderson@users.noreply.github.com>pull/5533/head^2
parent
f89c207fdd
commit
9665495460
|
@ -58,6 +58,8 @@ install your license.
|
|||
3. Use `kubectl` to apply and create the `License` resource in your InfluxDB
|
||||
namespace:
|
||||
|
||||
<!--pytest.mark.skip-->
|
||||
|
||||
```sh
|
||||
kubectl apply --filename license.yml --namespace influxdb
|
||||
```
|
||||
|
@ -85,21 +87,22 @@ per hour) while running.
|
|||
|
||||
## Recover from a license misconfiguration
|
||||
|
||||
If you deploy a licensed release of InfluxDB Clustered without an invalid or
|
||||
If you deploy a licensed release of InfluxDB Clustered with an invalid or
|
||||
expired license, many of the pods in your cluster will crash on startup and will
|
||||
likely enter a `CrashLoopBackoff` state without ever running or becoming healthy.
|
||||
Because the license is stored in a volume-mounted Kubernetes secret, invalid
|
||||
licenses affect both old and new pods.
|
||||
Because InfluxDB stores the license in a volume-mounted Kubernetes secret, invalid
|
||||
licenses affect old and new pods.
|
||||
|
||||
Once a valid `License` resource is applied, new pods will begin to start up normally.
|
||||
Licenses are validated when the `License` resource is applied. If the license
|
||||
is invalid when you attempt to apply it, the InfluxDB clustered license
|
||||
controller will not add or update the required secret.
|
||||
After you apply a valid `License` resource, new pods will begin to start up normally.
|
||||
|
||||
InfluxDB validates a license when you apply it.
|
||||
If the license is invalid when you try to apply it, the `license controller`
|
||||
won't add or update the required secret.
|
||||
|
||||
## Renew your license
|
||||
|
||||
In advance of your license expiration, your InfluxData sales representative will
|
||||
contact you regarding license renewal.
|
||||
Before your license expires, your InfluxData sales representative will
|
||||
contact you about license renewal.
|
||||
You may also contact your sales representative at any time.
|
||||
|
||||
---
|
||||
|
|
|
@ -40,10 +40,12 @@ To deactivate license enforcement, remove the `useLicensedBinaries` feature flag
|
|||
3. Use `kubectl` to apply and create the `License` resource in your InfluxDB
|
||||
namespace:
|
||||
|
||||
<!--pytest.mark.skip-->
|
||||
|
||||
```sh
|
||||
kubectl apply --filename license.yml --namespace influxdb
|
||||
```
|
||||
|
||||
|
||||
4. <span id="enable-feature-flag"></span>
|
||||
Update your `AppInstance` resource to enable the `useLicensedBinaries` feature flag.
|
||||
Add the `useLicensedBinaries` entry to the `.spec.package.spec.featureFlags`
|
||||
|
@ -101,4 +103,83 @@ spec:
|
|||
Replace {{% code-placeholder-key %}}`PACKAGE_VERSION`{{% /code-placeholder-key %}} with
|
||||
the version number to upgrade to.
|
||||
|
||||
## Troubleshoot licensing
|
||||
|
||||
After you have activated licensing, use the following signals to verify licensing
|
||||
and troubleshoot issues with your {{< product-name omit="Clustered" >}}
|
||||
cluster.
|
||||
|
||||
In your commands, replace the following:
|
||||
|
||||
- {{% code-placeholder-key %}}`NAMESPACE`{{% /code-placeholder-key %}}:
|
||||
your [InfluxDB namespace](/influxdb/clustered/install/configure-cluster/#create-a-namespace-for-influxdb)
|
||||
- {{% code-placeholder-key %}}`POD_NAME`{{% /code-placeholder-key %}}:
|
||||
your [InfluxDB Kubernetes pod](/influxdb/clustered/install/deploy/#inspect-cluster-pods)
|
||||
|
||||
### Verify database components
|
||||
|
||||
After you [install your license](#install-your-influxdb-license),
|
||||
run the following command to check that database pods start up and are in the
|
||||
`Running` state:
|
||||
|
||||
<!--pytest.mark.skip-->
|
||||
|
||||
{{% code-placeholders "NAMESPACE" %}}
|
||||
|
||||
```sh
|
||||
kubectl get pods -l app=iox --namespace NAMESPACE
|
||||
```
|
||||
|
||||
{{% /code-placeholders %}}
|
||||
|
||||
If a `Pod` fails to start, run the following command to view pod information:
|
||||
|
||||
<!--pytest.mark.skip-->
|
||||
|
||||
{{% code-placeholders "POD_NAME|NAMESPACE" %}}
|
||||
|
||||
```sh
|
||||
kubectl describe pod POD_NAME --namespace NAMESPACE
|
||||
```
|
||||
|
||||
{{% /code-placeholders %}}
|
||||
|
||||
### Verify the `Secret` exists
|
||||
|
||||
Run the following command to verify that the licensing activation created a
|
||||
`iox-license` secret:
|
||||
|
||||
<!--pytest.mark.skip-->
|
||||
|
||||
{{% code-placeholders "NAMESPACE" %}}
|
||||
|
||||
```sh
|
||||
kubectl get secret iox-license --namespace NAMESPACE
|
||||
```
|
||||
|
||||
If the secret doesn't exist,
|
||||
[view `license-controller` logs](#view-license-controller-logs) for
|
||||
more information or errors.
|
||||
|
||||
{{% /code-placeholders %}}
|
||||
|
||||
### View `license controller` logs
|
||||
|
||||
The `license controller` component creates a `Secret` named `iox-license` from your
|
||||
`License`.
|
||||
|
||||
To view `license controller` logs for troubleshooting, run the following
|
||||
command:
|
||||
|
||||
<!--pytest.mark.skip-->
|
||||
|
||||
{{% code-placeholders "NAMESPACE" %}}
|
||||
|
||||
```sh
|
||||
kubectl logs deployment/license-controller --namespace NAMESPACE
|
||||
```
|
||||
|
||||
{{% /code-placeholders %}}
|
||||
|
||||
|
||||
{{< page-nav prev="/influxdb/clustered/install/configure-cluster/" prevText="Configure your cluster" next="/influxdb/clustered/install/deploy/" nextText="Deploy your cluster" >}}
|
||||
|
|
Loading…
Reference in New Issue