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 pemecahan masalah GKE di Bare Metal, lihat panduan pemecahan masalah.
Sebelum memulai
Pastikan Anda menggunakan versi sistem operasi yang didukung. Untuk 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
Pastikan Anda memiliki nama pengguna dan sandi RedHat, serta memiliki akses root ke komputer yang dikonfigurasi. Validasi pengelola Paket dengan langkah-langkah berikut:
Jika Anda belum mendaftarkan sistem operasi, daftar ke RedHat menggunakan nama pengguna dan sandi RedHat untuk mendownload update:
sudo subscription-manager register sudo subscription-manager refresh sudo subscription-manager attach --auto
Periksa update:
sudo dnf check-update
Pastikan output tidak memiliki error dan menyertakan pemeriksaan akhir masa berlaku metadata terakhir. Contoh:
Updating Subscription Management repositories. ... # Last metadata expiration check: ... ...
Mengonfigurasi atau menonaktifkan firewall
Firewalld dapat dikonfigurasi agar dapat digunakan dengan GKE pada Bare Metal atau dinonaktifkan. Untuk mengetahui informasi tentang cara mengonfigurasi firewall, lihat Mengonfigurasi port firewall di halaman Persyaratan jaringan.
Berikut adalah petunjuk untuk menonaktifkan firewall.
Menonaktifkan firewall:
sudo systemctl stop firewalld sudo systemctl disable firewalld
Periksa status firewall untuk memastikan firewall dinonaktifkan:
sudo systemctl status firewalld | grep "Active" # Output # Active: inactive (dead)
Mengonfigurasi Docker di workstation Anda
Ikuti langkah-langkah berikut untuk menginstal Docker secara manual:
Hapus versi Docker sebelumnya:
sudo dnf remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
Menghapus podman-manpages:
sudo dnf remove podman-manpages
Instal Docker 20.10.0+:
sudo dnf install -y yum-utils sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/rhel/docker-ce.repo sudo dnf install -y --allowerasing docker-ce docker-ce-cli containerd.io sudo systemctl start docker
Verifikasi bahwa Anda sekarang menjalankan versi 20.10.0+:
sudo docker version
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
Pastikan Docker berjalan:
docker run hello-world
Anda akan melihat sesuatu yang mirip seperti ini:
Hello from Docker!
This message shows that your installation appears to be working correctly.
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 mesin yang menjalankan RHEL 9, batas inotify
kernel Linux
untuk instance pengguna maksimum dan smartwatch pengguna harus lebih besar dari atau sama dengan
yang berikut:
fs.inotify.max_user_instances
:8192
fs.inotify.max_user_watches
:524288
Pastikan nilai berikut disetel dengan benar di mesin node Anda:
Periksa nilai
max_user_instances
:cat /proc/sys/fs/inotify/max_user_instances
Jika diperlukan, update
max_user_instances
ke nilai minimum:echo 'fs.inotify.max_user_instances=8192' | sudo tee --append /etc/sysctl.conf
Periksa nilai
max_user_watches
:cat /proc/sys/fs/inotify/max_user_watches
Jika diperlukan, update
max_user_watches
ke nilai minimum:echo 'fs.inotify.max_user_watches=524288' | sudo tee --append /etc/sysctl.conf
Jika Anda telah memperbarui salah satu nilai tersebut, mulai ulang mesin.
Praktik Terbaik
Untuk menyederhanakan penginstalan, sebaiknya Anda mengonfigurasi RHEL menggunakan penginstalan
minimal dengan pengelolaan headless. Selain itu, pastikan untuk mengaktifkan
koneksi jaringan
dan gunakan DHCP default atau berikan alamat IP statis yang valid serta
informasi jaringan. Pastikan mesin dapat terhubung ke
resource eksternal yang diperlukan,
seperti cloud.google.com
.
Jika Docker gagal berjalan, pastikan daemon Docker berjalan dengan perintah berikut:
sudo systemctl start docker