
Kubectl è uno strumento della riga di comando molto efficace per Kubernetes, che utilizziamo ogni giorno. Ha molte funzionalità e consente di distribuire un sistema Kubernetes o le sue funzionalità di base.
Ecco alcuni consigli utili per codificare e distribuire più velocemente su Kubernetes.
Autocompletamento kubectl
Utilizzerai spesso kubectl, quindi con l'autocompletamento non dovrai premere i tasti più del necessario.
Inizia installando il pacchetto bash-completion (non è installato di default).
- Linux
## Install
apt-get install bash-completion
## Bash
echo 'source <(kubectl completion bash)' >>~/.bashrc
## Zsh
source <(kubectl completion zsh)- MacOS
## Install
brew install bash-completion@2Come indicato nelle informazioni di output di brew install (sezione Caveats), è necessario aggiungere le seguenti righe al file ~/.bashrc o ~/.bash_profile:
export BASH_COMPLETION_COMPAT_DIR=/usr/local/etc/bash_completion.d
[[ -r /usr/local/etc/profile.d/bash_completion.sh ]] && . /usr/local/etc/profile.d/bash_completion.shAlias di kubectl
Quando inizi a usare kubectl, la cosa più piacevole è che ci sono molti alias, iniziando proprio da questo:
alias k='kubectl'Una volta aggiunto, dai un'occhiata a kubectl-aliases su Github. Ahmet Alp Balkan () sa il fatto suo al riguardo, scopri di più sui suoi alias su github

Ma non impostare l'alias kubectl per i principianti, altrimenti non capiranno mai tutti i comandi. Lasciali praticare per una settimana o due.
Kubernetes + Helm charts
« — è il modo migliore per trovare, distribuire e utilizzare software progettato per Kubernetes.
Quando hai un gran numero di applicazioni Kubernetes, il loro deployment e aggiornamento diventano complicati, soprattutto se devi aggiornare il tag dell'immagine Docker prima del deployment. I chart Helm creano pacchetti che consentono di definire, installare e aggiornare applicazioni e configurazioni mentre sono in esecuzione su un cluster tramite il sistema di rilascio.

Un pacchetto Kubernetes in Helm è chiamato chart e contiene molte informazioni su come creare un'istanza di Kubernetes.
La configurazione è molto utile: contiene informazioni dinamiche sulle impostazioni del chart. Un rilascio è un'istanza esistente nel cluster abbinata a una specifica configurazione.
A differenza di apt o yum, i chart Helm (cioè i pacchetti) sono costruiti sopra Kubernetes e sfruttano tutti i vantaggi della sua architettura cluster, e il più interessante di questi è la capacità di considerare la scalabilità fin dall'inizio. I chart di tutte le immagini utilizzate da Helm sono memorizzati in un registro chiamato Helm Workspace. Dopo il deployment, i tuoi team DevOps potranno trovare facilmente i chart e integrarli nei loro progetti.
Esistono altri modi per installare Helm:
- Snap / Linux :
sudo snap install helm --classic- Homebrew / macOS :
brew install kubernetes-helm- Script:
curl -L https://git.io/get_helm.sh | bash- File:
- Inizializzare Helm e installare Tiller nel cluster:
helm init --history-max 200- Installare un chart di esempio:
helm repo update
helm install --name releasemysql stable/mysqlQueste comandi rilasciano il chart stable/mysql, mentre il rilascio si chiama releasemysql.
Controlla il rilascio di helm usando helm list.
- Infine, il rilascio può essere eliminato:
helm delete --purge releasemysqlSegui questi consigli e il lavoro con Kubernetes sarà più fluido. Dedica il tempo risparmiato al tuo obiettivo principale nelle applicazioni Kubernetes nel cluster. Se hai domande su Kubernetes o Helm, .
Fonte: habr.com
