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
|
3. Use `kubectl` to apply and create the `License` resource in your InfluxDB
|
||||||
namespace:
|
namespace:
|
||||||
|
|
||||||
|
<!--pytest.mark.skip-->
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
kubectl apply --filename license.yml --namespace influxdb
|
kubectl apply --filename license.yml --namespace influxdb
|
||||||
```
|
```
|
||||||
|
@ -85,21 +87,22 @@ per hour) while running.
|
||||||
|
|
||||||
## Recover from a license misconfiguration
|
## 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
|
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.
|
likely enter a `CrashLoopBackoff` state without ever running or becoming healthy.
|
||||||
Because the license is stored in a volume-mounted Kubernetes secret, invalid
|
Because InfluxDB stores the license in a volume-mounted Kubernetes secret, invalid
|
||||||
licenses affect both old and new pods.
|
licenses affect old and new pods.
|
||||||
|
|
||||||
Once a valid `License` resource is applied, new pods will begin to start up normally.
|
After you apply a valid `License` resource, 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
|
InfluxDB validates a license when you apply it.
|
||||||
controller will not add or update the required secret.
|
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
|
## Renew your license
|
||||||
|
|
||||||
In advance of your license expiration, your InfluxData sales representative will
|
Before your license expires, your InfluxData sales representative will
|
||||||
contact you regarding license renewal.
|
contact you about license renewal.
|
||||||
You may also contact your sales representative at any time.
|
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
|
3. Use `kubectl` to apply and create the `License` resource in your InfluxDB
|
||||||
namespace:
|
namespace:
|
||||||
|
|
||||||
|
<!--pytest.mark.skip-->
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
kubectl apply --filename license.yml --namespace influxdb
|
kubectl apply --filename license.yml --namespace influxdb
|
||||||
```
|
```
|
||||||
|
|
||||||
4. <span id="enable-feature-flag"></span>
|
4. <span id="enable-feature-flag"></span>
|
||||||
Update your `AppInstance` resource to enable the `useLicensedBinaries` feature flag.
|
Update your `AppInstance` resource to enable the `useLicensedBinaries` feature flag.
|
||||||
Add the `useLicensedBinaries` entry to the `.spec.package.spec.featureFlags`
|
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
|
Replace {{% code-placeholder-key %}}`PACKAGE_VERSION`{{% /code-placeholder-key %}} with
|
||||||
the version number to upgrade to.
|
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" >}}
|
{{< 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