Minikube: Configuration
Sumber: https://minikube.sigs.k8s.io/docs/handbook/config/
Mengonfigurasi cluster Anda
Basic Configuration
Sebagian besar konfigurasi minikube dilakukan melalui interface flag. Untuk melihat flag mana yang mungkin untuk perintah mulai, jalankan:
minikube start --help
Konfigurasi Persistent
minikube memungkinkan pengguna untuk dapat menyimpan nilai default baru untuk digunakan di semua profil, menggunakan perintah minikube config. Ini dilakukan dengan memberikan nama properti, dan nilai properti. Misalnya, untuk terus mengonfigurasi minikube untuk menggunakan hyperkit:
minikube config set driver hyperkit
Anda bisa mendapatkan daftar lengkap field yang dapat dikonfigurasi menggunakan:
minikube config --help
Untuk mendapatkan daftar properti konfigurasi yang saat ini ditetapkan:
minikube config view
Konfigurasi Kubernetes
minikube memungkinkan pengguna untuk mengonfigurasi komponen Kubernetes dengan nilai sembarang. Untuk menggunakan fitur ini, kita dapat menggunakan flag --extra-config pada perintah minikube start. Flag ini diulangi, sehingga Anda dapat meneruskannya beberapa kali dengan beberapa nilai berbeda untuk mengatur beberapa opsi.
Memilih versi Kubernetes
Secara default, minikube menginstal Kubernetes versi stabil terbaru yang tersedia pada saat rilis minikube. Anda dapat memilih rilis Kubernetes yang berbeda dengan menggunakan flag --kubernetes-version, misalnya:
minikube start --kubernetes-version=v1.11.10
minikube mengikuti Kebijakan Dukungan Kubernetes Version dan Version Skew, jadi kami menjamin dukungan untuk build terbaru untuk 3 rilis minor Kubernetes terakhir. Jika memungkinkan, minikube bertujuan untuk mendukung rilis yang lebih lama juga sehingga pengguna dapat meniru lingkungan lawas.
Untuk informasi terkini tentang versi yang didukung, lihat OldestKubernetesVersion dan NewestKubernetesVersion di constants.go https://github.com/kubernetes/minikube/blob/master/pkg/minikube/constants/constants.go
Enable feature-gates
Fitur alfa/eksperimental Kubernetes dapat diaktifkan atau dinonaktifkan oleh flag --feature-gates pada perintah minikube start. Dibutuhkan string dari bentuk key=value di mana key adalah nama komponen dan value adalah statusnya.
minikube start --feature-gates=EphemeralContainers=true
Modifikasi Kubernetes default
Bootstrapper kubeadm dapat dikonfigurasi dengan flag --extra-config pada perintah minikube start. Dibutuhkan string dalam bentuk component.key=value di mana komponen adalah salah satu string
- kubeadm
- kubelet
- apiserver
- controller-manager
- scheduler
dan key=value adalah pasangan flag=value untuk komponen yang sedang dikonfigurasi. Misalnya,
minikube start --extra-config=apiserver.v=10 --extra-config=kubelet.max-pods=100
Misalnya, untuk mengizinkan Kubernetes diluncurkan pada rilis Docker yang tidak didukung:
minikube start --extra-config=kubeadm.ignore-preflight-errors=SystemVerification
Konfigurasi Runtime configuration
Runtime kontainer default di minikube bervariasi. Anda dapat memilih satu secara eksplisit dengan menggunakan:
minikube start --container-runtime=docker
Option yang tersedia adalah:
- containerd
- cri-o
- docker
Lihat https://kubernetes.io/docs/setup/production-environment/container-runtimes/
Environment variable
minikube supports passing environment variables instead of flags for every value listed in minikube config. This is done by passing an environment variable with the prefix MINIKUBE_.
For example the minikube start --iso-url="$ISO_URL" flag can also be set by setting the MINIKUBE_ISO_URL="$ISO_URL" environment variable.
Exclusive environment tuning
Some features can only be accessed by minikube specific environment variables, here is a list of these features:
MINIKUBE_HOME - (string) sets the path for the .minikube directory that minikube uses for state/configuration. If you specify it to /path/to/somewhere and somewhere is not equal to .minikube, the final MINIKUBE_HOME will be /path/to/somewhere/.minikube. Defaults to ~/.minikube if unspecified. Please note: this is used only by minikube and does not affect anything related to Kubernetes tools such as kubectl. MINIKUBE_IN_STYLE - (bool) manually sets whether or not emoji and colors should appear in minikube. Set to false or 0 to disable this feature, true or 1 to force it to be turned on. CHANGE_MINIKUBE_NONE_USER - (bool) automatically change ownership of ~/.minikube to the value of $SUDO_USER MINIKUBE_ENABLE_PROFILING - (int, 1 enables it) enables trace profiling to be generated for minikube MINIKUBE_SUPPRESS_DOCKER_PERFORMANCE - (bool) suppresses Docker performance warnings when Docker is slow
Example: Disabling emoji Linux macOS Windows
export MINIKUBE_IN_STYLE=false minikube start
Making environment values persistent
To make the exported variables persistent across reboots:
- Linux and macOS: Add these declarations to ~/.bashrc or wherever your shells environment variables are stored.
- Windows: Either add these declarations to your ~\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1 or run the following in a PowerShell terminal:
[Environment]::SetEnvironmentVariable("key", "value", [EnvironmentVariableTarget]::User)