Mengonfigurasi RHEL

Anda harus mengonfigurasi sistem operasi dasar mesin node untuk menggunakan Google Distributed Cloud. Halaman ini berisi langkah-langkah yang perlu Anda lakukan untuk menyelesaikan konfigurasi yang diperlukan. Untuk mengetahui informasi selengkapnya tentang pemecahan masalah Google Distributed Cloud, lihat panduan pemecahan masalah.

Sebelum memulai

Pastikan Anda menggunakan versi sistem operasi yang didukung. Untuk daftar versi yang didukung, lihat Pilih sistem operasi Anda.

Mengaktifkan compiler Just In Time 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 akses root ke mesin yang Anda konfigurasi. Validasi Pengelola paket dengan langkah-langkah berikut:

  1. Jika Anda belum mendaftarkan sistem operasi, daftar ke RedHat menggunakan nama pengguna dan sandi RedHat Anda untuk mendownload update:

    sudo subscription-manager register
    
    sudo subscription-manager refresh
    
    sudo subscription-manager attach --auto
    
  2. Periksa update:

    sudo dnf check-update
    

    Pastikan output tidak memiliki error dan menyertakan pemeriksaan masa berlaku metadata terakhir. Contoh:

    Updating Subscription Management repositories.
    ...
    # Last metadata expiration check: ...
    ...
    

Mengonfigurasi atau menonaktifkan firewalld

Firewalld dapat dikonfigurasi untuk digunakan dengan Google Distributed Cloud atau dinonaktifkan. Untuk mengetahui informasi tentang cara mengonfigurasi firewalld, lihat Mengonfigurasi port firewalld di halaman Persyaratan jaringan.

Petunjuk berikut akan menonaktifkan firewalld.

  1. Nonaktifkan firewalld:

    sudo systemctl stop firewalld
    
    sudo systemctl disable firewalld
    
  2. Periksa status firewalld untuk memastikan bahwa firewalld 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:

  1. Hapus versi Docker sebelumnya:

    sudo dnf remove docker \
        docker-client \
        docker-client-latest \
        docker-common \
        docker-latest \
        docker-latest-logrotate \
        docker-logrotate \
        docker-engine
    
  2. Hapus podman-manpages:

    sudo dnf remove podman-manpages
    
  3. 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
    
  4. Pastikan Anda sekarang 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
    
  6. Verifikasi Docker berjalan:

    docker run hello-world
    

    Anda akan melihat sesuatu yang mirip dengan ini:

    Hello from Docker!
    

    This message shows that your installation appears to be working correctly.

Menyiapkan sinkronisasi waktu

Sinkronisasi waktu terdiri dari menyetel jam di komputer node Anda, menggunakan referensi waktu eksternal yang ditentukan. Sinkronisasi waktu penting untuk aktivitas cluster yang sensitif terhadap waktu, seperti pencatatan peristiwa dan pengumpulan metrik. Kernel mesin node Anda mengontrol clock di container yang berjalan di node. Untuk memastikan sinkronisasi waktu yang tepat, instal layanan Network Time Protocol (NTP) di mesin Anda, menggunakan salah satu layanan yang tersedia: chrony, systemd-timesyncd, ntp, atau ntpdate. Jalankan timedatectl untuk memverifikasi bahwa jam sistem telah disinkronkan. Output timedatectl harus berisi status berikut:

System clock synchronized: yes

Pastikan batas inotify kernel Linux sama dengan atau lebih tinggi dari minimum

Untuk mesin yang menjalankan RHEL 9 dan 8.10, batas inotify kernel Linux untuk instance pengguna maksimum dan pengamatan pengguna harus lebih besar dari atau sama dengan berikut:

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

Pastikan nilai ini disetel dengan benar di mesin node Anda:

  1. Periksa nilai max_user_instances:

    cat /proc/sys/fs/inotify/max_user_instances
    
  2. Jika perlu, perbarui 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 perlu, perbarui max_user_watches ke nilai minimum:

    echo 'fs.inotify.max_user_watches=524288' | sudo tee --append /etc/sysctl.conf
    
  5. Jika Anda memperbarui salah satu nilai, reboot komputer.

Praktik Terbaik

Untuk menyederhanakan penginstalan, sebaiknya konfigurasikan RHEL menggunakan penginstalan minimal dengan pengelolaan tanpa monitor. Selain itu, pastikan untuk mengaktifkan koneksi jaringan dan menggunakan DHCP default atau memberikan alamat IP statis yang valid dan informasi jaringan. Pastikan mesin dapat terhubung ke resource eksternal yang diperlukan, seperti cloud.google.com.

Jika Docker gagal berjalan, periksa apakah daemon Docker berjalan dengan perintah berikut:

sudo systemctl start docker