Minggu, 17 Mei 2020

KUBERNETES-all OS

Menginstal dan Menyiapkan kubectl

Kubectl adalah alat baris perintah (command line tool) Kubernetes yang digunakan untuk menjalankan berbagai perintah untuk klaster Kubernetes. Kamu dapat menggunakan kubectl untuk men-deploy aplikasi, mengatur sumber daya klaster, dan melihat log. Daftar operasi kubectl dapat dilihat di Ikhtisar kubectl.

Sebelum mulai

Kamu harus menggunakan kubectl dengan perbedaan maksimal satu versi minor dengan klaster kamu. Misalnya, klien v1.2 masih dapat digunakan dengan master v1.1, v1.2, dan 1.3. Menggunakan versi terbaru kubectl dapat menghindari permasalahan yang tidak terduga.

Menginstal kubectl pada Linux

Menginstal program kubectl menggunakan curl pada Linux

  1. Unduh versi terbarunya dengan perintah:
    curl -LO https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt`/bin/linux/amd64/kubectl
    
    Untuk mengunduh versi spesifik, ganti bagian curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt dengan versi yang diinginkan.
    Misalnya, untuk mengunduh versi v1.18.0 di Linux, ketik:
    curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.18.0/bin/linux/amd64/kubectl
    
  2. Jadikan program kubectl dapat dieksekusi.
    chmod +x ./kubectl
    
  3. Pindahkan ke PATH kamu.
    sudo mv ./kubectl /usr/local/bin/kubectl
    
  4. Pastikan instalasinya sudah berhasil dengan melakukan pengecekan versi:
    kubectl version --client
    

Menginstal dengan manajer paket (package manager) bawaan


sudo apt-get update && sudo apt-get install -y apt-transport-https gnupg2
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee -a /etc/apt/sources.list.d/kubernetes.list
sudo apt-get update
sudo apt-get install -y kubectl

Menginstal dengan manajer paket lain

Jika kamu menggunakan Ubuntu atau versi Linux lain yang mendukung manajer paket snapkubectl tersedia dalam bentuk aplikasi di snap.
snap install kubectl --classic
kubectl version –client
Jika kamu menggunakan Linux dengan manajer paket Homebrewkubectl sudah tersedia untuk diinstal di Homebrew.
brew install kubectl
kubectl version –client

Menginstal kubectl pada macOS

Menginstal program kubectl dengan curl pada macOS

  1. Unduh versi terbarunya dengan perintah:
    curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/darwin/amd64/kubectl"
    
    Untuk mengunduh versi spesifik, ganti bagian curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt dengan versi yang diinginkan.
    Misalnya, untuk mengunduh versi v1.18.0 pada macOS, ketik:
    curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.18.0/bin/darwin/amd64/kubectl
    
  2. Buat agar program kubectl dapat dijalankan.
    chmod +x ./kubectl
    
  3. Pindahkan ke PATH kamu.
    sudo mv ./kubectl /usr/local/bin/kubectl
    
  4. Pastikan instalasinya sudah berhasil dengan melakukan pengecekan versi:
    kubectl version --client
    

Menginstal dengan Homebrew pada macOS

Jika kamu menggunakan macOS dan manajer paket Homebrew, kamu dapat menginstal kubectl langsung dengan Homebrew.
  1. Jalankan perintah:
    brew install kubectl 
    
    atau
    brew install kubernetes-cli
    
  2. Pastikan instalasinya sudah berhasil dengan melakukan pengecekan versi:
    kubectl version --client
    

Menginstal dengan Macports pada macOS

Jika kamu menggunakan macOS dan manajer paket Macports, kamu dapat menginstal kubectl langsung dengan Macports.
  1. Jalankan perintah:
    sudo port selfupdate
    sudo port install kubectl
    
  2. Pastikan instalasinya sudah berhasil dengan melakukan pengecekan versi:
    kubectl version --client
    

Menginstal kubectl pada Windows

Menginstal program kubectl dengan curl pada Windows

  1. Unduh versi terbarunya v1.18.0 dari tautan ini.
    Atau jika sudah ada curl pada mesin kamu, jalankan perintah ini:
    curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.18.0/bin/windows/amd64/kubectl.exe
    
    Untuk mendapatkan versi stabil terakhir (misalnya untuk scripting), lihat di https://storage.googleapis.com/kubernetes-release/release/stable.txt.
  2. Tambahkan program yang sudah diunduh tersebut ke PATH kamu.
  3. Pastikan instalasinya sudah berhasil dengan melakukan pengecekan versi:
    kubectl version --client
    
Catatan: Docker Desktop untuk Windows sudah menambahkan versi kubectl-nya sendiri ke PATH. Jika kamu sudah menginstal Docker Desktop, kamu harus menambahkan entrinya ke PATH sebelum yang ditambahkan oleh penginstal (installer) Docker Desktop atau kamu dapat menghapus kubectl bawaan dari Docker Desktop.

Menginstal dengan Powershell dari PSGallery

Jika kamu menggunakan Windows dan manajer paket Powershell Gallery, kamu dapat menginstal dan melakukan pembaruan kubectl dengan Powershell.
  1. Jalankan perintah berikut (jangan lupa untuk memasukkan DownloadLocation):
    Install-Script -Name install-kubectl -Scope CurrentUser -Force
    install-kubectl.ps1 [-DownloadLocation <path>]
    
Catatan: Jika kamu tidak menambahkan DownloadLocationkubectl akan diinstal di dalam direktori temp pengguna.
Penginstal akan membuat `$HOME/.kube` dan membuat berkas konfigurasi
  1. Pastikan instalasinya sudah berhasil dengan melakukan pengecekan versi:
    kubectl version --client
    
Catatan: Proses pembaruan dapat dilakukan dengan menjalankan ulang dua perintah yang terdapat pada langkah 1.

Menginstal pada Windows menggunakan Chocolatey atau Scoop

Untuk menginstal kubectl pada Windows, kamu dapat menggunakan manajer paket Chocolatey atau penginstal baris perintah Scoop.
choco install kubernetes-cli
1. Pastikan instalasinya sudah berhasil dengan melakukan pengecekan versi:
```
kubectl version --client
```
  1. Pindah ke direktori utama:
    cd %USERPROFILE%
    
  2. Buat direktori .kube:
    mkdir .kube
    
  3. Pindah ke direktori .kube yang baru saja dibuat:
    cd .kube
    
  4. Lakukan konfigurasi kubectl untuk menggunakan klaster Kubernetes remote:
    New-Item config -type file
    
Catatan: Ubah berkas konfigurasi dengan penyunting (editor) teks pilihanmu, misalnya Notepad.

Mengunduh sebagai bagian dari Google Cloud SDK

Kamu dapat menginstal kubectl sebagai bagian dari Google Cloud SDK.
  1. Jalankan perintah instalasi kubectl:
    gcloud components install kubectl
    
  2. Pastikan instalasinya sudah berhasil dengan melakukan pengecekan versi:
    kubectl version --client
    

Memeriksa konfigurasi kubectl

Agar kubectl dapat mengakses klaster Kubernetes, dibutuhkan sebuah berkas kubeconfig, yang akan otomatis dibuat ketika kamu membuat klaster baru menggunakan kube-up.sh atau setelah berhasil men-deploy klaster Minikube. Secara bawaan, konfigurasi kubectl disimpan di ~/.kube/config.
Kamu dapat memeriksa apakah konfigurasi kubectl sudah benar dengan mengambil keadaan klaster:
kubectl cluster-info
Jika kamu melihat respons berupa URL, maka konfigurasi klaster kubectl sudah benar.
Tetapi, jika kamu melihat pesan seperti di bawah, maka kubectl belum dikonfigurasi dengan benar atau tidak dapat terhubung ke klaster Kubernetes.
The connection to the server <server-name:port> was refused - did you specify the right host or port?
Selanjutnya, jika kamu ingin menjalankan klaster Kubernetes di laptop (lokal) kamu, kamu memerlukan sebuah perangkat seperti Minikube sebelum menjalankan ulang perintah yang ada di atas.
Jika kubectl cluster-info mengembalikan respons URL tetapi kamu masih belum dapat mengakses klaster, kamu bisa menggunakan perintah di bawah untuk memeriksa apakah klaster sudah dikonfigurasi dengan benar.
kubectl cluster-info dump

Konfigurasi kubectl opsional

Menyalakan penyelesaian otomatis untuk terminal

kubectl menyediakan fitur penyelesaian otomatis (auto complete) untuk Bash dan Zsh yang dapat memudahkanmu ketika mengetik di terminal.
Ikuti petunjuk di bawah untuk menyalakan penyelesaian otomatis untuk Bash dan Zsh.

Pendahuluan

Skrip penyelesaian (completion scriptkubectl untuk Bash dapat dibuat dengan perintah kubectl completion bash. Masukkan skrip tersebut ke dalam terminal sebagai sumber untuk menyalakan penyelesaian otomatis dari kubectl.
Namun, skrip penyelesaian tersebut bergantung pada bash-completion, yang artinya kamu harus menginstal program tersebut terlebih dahulu (kamu dapat memeriksa apakah kamu sudah memiliki bash-completion dengan menjalankan perintah type _init_completion).

Menginstal bash-completion

bash-completion disediakan oleh banyak manajer paket (lihat di sini). Kamu dapat menginstalnya dengan menggunakan perintah apt-get install bash-completion atau yum install bash-completion, dsb.
Perintah di atas akan membuat skrip utama bash-completion di /usr/share/bash-completion/bash_completion. Terkadang kamu juga harus menambahkan skrip tersebut ke dalam berkas ~/.bashrc, tergantung manajer paket yang kamu pakai.
Untuk memastikannya, muat ulang terminalmu dan jalankan type _init_completion. Jika perintah tersebut berhasil, maka instalasi selesai. Jika tidak, tambahkan teks berikut ke dalam berkas ~/.bashrc:
source /usr/share/bash-completion/bash_completion
Muat ulang terminalmu dan pastikan bash-completion sudah berhasil diinstal dengan menjalankan type _init_completion.

Menyalakan penyelesaian otomatis kubectl

Sekarang kamu harus memastikan bahwa skrip penyelesaian untuk kubectl sudah dimasukkan sebagai sumber penyelesaian otomatis pada semua sesi terminal. Kamu dapat melakukannya dengan dua cara:
  • Masukkan skrip penyelesaian sebagai sumber di berkas ~/.bashrc:
    echo 'source <(kubectl completion bash)' >>~/.bashrc
    
  • Tambahkan skrip penyelesaian ke direktori /etc/bash_completion.d:
    kubectl completion bash >/etc/bash_completion.d/kubectl
    
Jika kamu menggunakan alias untuk kubectl, kamu masih dapat menggunakan fitur penyelesaian otomatis dengan menjalankan perintah:
```shell
echo 'alias k=kubectl' >>~/.bashrc
echo 'complete -F __start_kubectl k' >>~/.bashrc
```
Catatan: Semua sumber skrip penyelesaian bash-completion terdapat di /etc/bash_completion.d.
Kedua cara tersebut sama, kamu bisa memilih salah satunya. Setelah memuat ulang terminal, penyelesaian otomatis dari kubectl seharusnya sudah dapat bekerja.

Tidak ada komentar:

Posting Komentar