Skip to content

Gestire una licenza ​

Una licenza è un JWT firmato verificato offline tramite una chiave pubblica compilata nell'operatore. La applichi come Secret referenziato dalla risorsa cluster-scoped License. Questa pagina spiega come applicare, ispezionare e rinnovare i token e (per lo sviluppo) come generarli.

Ottenere una licenza ​

Ottieni le licenze dal portale clienti Navique all'indirizzo portal.navique.dev. Lì puoi:

  • avviare una prova — una licenza a tempo limitato per valutare le funzionalità soggette a licenza;
  • acquistare una licenza per l'edizione e gli add-on di cui hai bisogno;
  • scaricare il tuo token di licenza (license.lic) — compresi quelli rinnovati — in qualsiasi momento.

Il token è un file che applichi tu stesso al cluster (vedi sotto): l'operatore non contatta mai il portale, quindi i cluster air-gapped funzionano allo stesso modo.

Applicare una licenza ​

  1. Scarica il tuo token firmato (un file license.lic) dal portale clienti.

  2. Crea il Secret nel namespace di sistema dell'operatore:

    bash
    kubectl -n navique-system create secret generic navique-license \
      --from-file=license=./license.lic
  3. Crea la risorsa License (è un singleton e deve chiamarsi cluster):

    yaml
    apiVersion: core.navique.com/v1alpha1
    kind: License
    metadata:
      name: cluster
    spec:
      secretRef:
        name: navique-license
        key: license
        namespace: navique-system

Il controller License verifica il token, scrive gli entitlement nello status e li pubblica a ogni controller dei workload. Il gating delle funzionalità e i limiti di istanze hanno effetto al reconcile successivo.

Preferisci il browser? Attiva dalla console

La console del management plane può attivare una licenza per te: incolla o carica il token, visualizza in anteprima gli entitlement decodificati e conferma — la console crea la risorsa License e il relativo Secret. È l'unica azione di scrittura della console.

Ispezionare la licenza attiva ​

bash
# Full status: validity, licensee, tier, expiry, features, limits.
kubectl get license cluster -o jsonpath='{.status}' | jq

# Just the features and limits in effect.
kubectl get license cluster -o jsonpath='{.status.enabledFeatures}'; echo
kubectl get license cluster -o jsonpath='{.status.limits}'; echo

Se status.valid è false, status.reason ne spiega il motivo (firma non valida, scaduta, Secret mancante, alg: none, …). In tal caso l'operatore ripiega sui valori predefiniti Community — la piattaforma di base resta attiva.

Rinnovare ​

Il rinnovo consiste semplicemente nel riemettere il token firmato con una nuova scadenza: scarica il token rinnovato dal portale clienti, sostituisci il contenuto del Secret e il controller lo recepisce:

bash
kubectl -n navique-system create secret generic navique-license \
  --from-file=license=./renewed-license.lic \
  --dry-run=client -o yaml | kubectl apply -f -

Il controller rimette in coda il reconcile in prossimità della scadenza, così il gating cambia puntualmente; riapplicare un token valido ripristina immediatamente gli entitlement declassati. Vedi Scadenza → downgrade graduale.

Ambienti ​

La licenza contiene un claim environment (prod / nonprod), che consente a Navique di emettere licenze non di produzione / NFR più economiche o gratuite per cluster di staging e interni, distinte dalle licenze di produzione.

Ore di supporto ​

La licenza riporta un valore includedSupportHours a titolo di riferimento. Poiché l'operatore è air-gapped e non può contattare l'esterno, questo saldo viene conteggiato fuori dal cluster da Navique — il valore nella licenza è puramente informativo.

Come vengono emessi i token ​

Le licenze sono firmate ed emesse da Navique con uno strumento di firma offline, quindi ti vengono consegnate come token .lic. La chiave pubblica corrispondente è compilata nell'operatore (e nella console di gestione), quindi la verifica è completamente offline — la chiave privata di firma non lascia mai Navique e non fa mai parte del tuo deployment. Per ottenere, modificare o rinnovare una licenza, usa il portale clienti; vedi Edizioni e licenze per i tier e gli add-on.

Revoca ​

Una licenza può essere revocata prima della sua scadenza — per esempio se il suo token è trapelato o è stato emesso per errore. L'operatore include un elenco di revoca compilato nel binario, quindi la revoca viene applicata completamente offline, senza alcun controllo online. Una licenza revocata viene rifiutata anche se la sua firma è valida, e l'operatore ripiega sui valori predefiniti Community — lo stesso downgrade graduale della scadenza, quindi la piattaforma di base continua a funzionare.

bash
# Is the active license revoked, and why?
kubectl get license cluster -o jsonpath='{.status.revoked}'; echo
kubectl get license cluster -o jsonpath='{.status.revokedReason}'; echo

Quando la licenza è revocata, status.revoked è true, status.revokedReason contiene la categoria (compromised / superseded / non-compliance / issued-in-error / unspecified) e la condition Ready riporta LicenseRevoked. Poiché l'elenco fa parte del binario dell'operatore, mantenere l'operatore aggiornato è il modo per recepire le revoche (e le correzioni di sicurezza distribuite insieme a esse). Se una tua licenza risulta revocata inaspettatamente, contatta Navique.

Risoluzione dei problemi ​

Se le funzionalità non si sbloccano dopo aver applicato una licenza, controlla:

  • kubectl get license cluster -o jsonpath='{.status.reason}' — il motivo del fallimento della verifica.
  • kubectl get license cluster -o jsonpath='{.status.revoked}' — se il token è stato revocato (vedi Revoca).
  • Che nome/chiave/namespace del Secret in spec.secretRef corrispondano al Secret creato.
  • Che la risorsa si chiami esattamente cluster (altri nomi vengono rifiutati).
  • I log dell'operatore: kubectl -n navique-system logs deploy/navique-ai-core-operator.

Vedi anche Risoluzione dei problemi.

Nucleo open source sotto AGPL-3.0. I componenti Enterprise sono proprietari e soggetti a licenza.