Mengonfigurasi Ubuntu

Anda harus mengonfigurasi sistem operasi dasar mesin node untuk menggunakan GKE di Bare Metal. Halaman ini berisi langkah-langkah yang perlu Anda lakukan untuk menyelesaikan konfigurasi yang diperlukan. Untuk mengetahui informasi selengkapnya tentang memecahkan masalah GKE terkait persyaratan Bare Metal, lihat masalah umum.

Sebelum memulai

Pastikan Anda menggunakan versi sistem operasi yang didukung dan kernel Ubuntu Hardware Enablement (HWE). Untuk mengetahui daftar versi yang didukung, lihat Memilih sistem operasi Anda.

Aktifkan compiler Tepat Waktu BPF

Kernel untuk sistem operasi Anda harus mengaktifkan opsi compiler Just In Time BPF (CONFIG_BPF_JIT=y).

  • Untuk mengetahui apakah opsi ini diaktifkan, jalankan perintah berikut:

    grep CONFIG_BPF_JIT /boot/config-$(uname -r)
    

Memvalidasi pengelola paket

  • Gunakan perintah berikut untuk memvalidasi bahwa pengelola paket beroperasi dengan benar:

    sudo apt-get check
    

    Output seharusnya tidak menampilkan error dan terlihat mirip dengan contoh berikut:

    # Reading package lists... Done
    # Building dependency tree
    # Reading state information... Done
    

Nonaktifkan Firewall yang Tidak Kompleks (UFW)

  1. Nonaktifkan ufw:

    sudo ufw disable
    
  2. Pastikan ufw dinonaktifkan:

    sudo ufw status
    # Status: inactive
    

Mengonfigurasi Docker di workstation Anda

GKE di Bare Metal membantu Anda menginstal Docker pada mesin bare metal dalam skenario berikut:

  • Jika mesin bare metal Anda belum menginstal Docker, bmctl akan menginstal 20.10.0 atau yang lebih baru.
  • Jika mesin bare metal Anda menginstal Docker versi 19.03.5 atau yang lebih lama, bmctl akan mengupgrade Docker ke versi 20.10.0 atau yang lebih baru.

Ikuti langkah-langkah berikut untuk menginstal Docker secara manual:

  1. Hapus versi Docker sebelumnya:

    sudo apt-get remove docker docker-engine docker.io containerd runc
    
  2. Update pengelola paket Anda:

    sudo apt-get update
    
  3. Instal Docker 20.10.0+:

    sudo apt-get install \
      apt-transport-https \
      ca-certificates \
      curl \
      gnupg-agent \
      software-properties-common \
      docker.io
    
  4. Pastikan Anda saat ini menjalankan versi 20.10.0+:

    sudo docker version
    
  5. Bandingkan output Anda dengan contoh berikut untuk memastikan versi Klien dan Server adalah 20.10.0+ :

     Client: Docker Engine - Community
     Version:           25.0.3
     ...
     Server: Docker Engine - Community
      Engine:
      Version:          25.0.3
    

Menyiapkan sinkronisasi waktu

Sinkronisasi waktu terdiri dari penyetelan jam pada mesin node, dengan menggunakan referensi waktu eksternal yang ditetapkan. Sinkronisasi waktu penting untuk aktivitas cluster yang peka waktu, seperti logging peristiwa dan pengumpulan metrik. Kernel mesin node Anda mengontrol jam dalam container yang berjalan pada node. Untuk memastikan sinkronisasi waktu yang tepat, instal layanan protokol waktu jaringan (NTP) di komputer Anda, menggunakan salah satu layanan yang tersedia: chrony, systemd-timesyncd, ntp, atau ntpdate. Jalankan timedatectl untuk memastikan jam sistem telah disinkronkan. Output timedatectl harus berisi status berikut:

System clock synchronized: yes

Pastikan batas inotify kernel Linux berada pada atau lebih tinggi dari batas minimum

Untuk komputer yang menjalankan Ubuntu 22.04, batas inotify kernel Linux untuk instance pengguna maksimum dan smartwatch pengguna harus lebih besar dari atau sama dengan berikut:

  • fs.inotify.max_user_instances: 8192
  • fs.inotify.max_user_watches: 524288

Untuk memastikan nilai ini ditetapkan dengan benar pada mesin node Anda:

  1. Periksa nilai max_user_instances:

    cat /proc/sys/fs/inotify/max_user_instances
    
  2. Jika diperlukan, update max_user_instances ke nilai minimum:

    echo 'fs.inotify.max_user_instances=8192' | sudo tee --append /etc/sysctl.conf
    
  3. Periksa nilai max_user_watches:

    cat /proc/sys/fs/inotify/max_user_watches
    
  4. Jika diperlukan, update max_user_watches ke nilai minimum:

    echo 'fs.inotify.max_user_watches=524288' | sudo tee --append /etc/sysctl.conf
    
  5. Jika Anda telah memperbarui salah satu nilai tersebut, mulai ulang mesin.