אתם צריכים להגדיר את מערכת ההפעלה הבסיסית של מכונות הצמתים כדי להשתמש ב-Google Distributed Cloud. בדף הזה מפורטים השלבים שצריך לבצע כדי להשלים את ההגדרה הנדרשת. מידע נוסף על פתרון בעיות ב-Google Distributed Cloud זמין במדריכים לפתרון בעיות.
לפני שמתחילים
חשוב לוודא שאתם משתמשים בגרסה נתמכת של מערכת ההפעלה. רשימת הגרסאות הנתמכות זמינה במאמר בחירת מערכת ההפעלה.
הפעלת מהדר BPF Just In Time
הליבה של מערכת ההפעלה צריכה לכלול את האפשרות BPF Just In Time compiler (מהדר JIT של BPF) מופעלת (CONFIG_BPF_JIT=y).
כדי לבדוק אם האפשרות הזו מופעלת, מריצים את הפקודה הבאה:
grep CONFIG_BPF_JIT /boot/config-$(uname -r)
אימות מנהל החבילות
חשוב לוודא שיש לכם את שם המשתמש והסיסמה של RedHat, ושיש לכם גישת root למכונות שאתם מגדירים. כדי לאמת את מנהל החבילות, פועלים לפי השלבים הבאים:
אם לא רשמתם את מערכת ההפעלה, צריך להירשם ב-RedHat באמצעות שם המשתמש והסיסמה שלכם ב-RedHat כדי להוריד עדכונים:
sudo subscription-manager register sudo subscription-manager refresh sudo subscription-manager attach --autoבודקים אם יש עדכונים:
sudo dnf check-updateמוודאים שהפלט לא מכיל שגיאות וכולל את הבדיקה האחרונה של תפוגת המטא-נתונים. לדוגמה:
Updating Subscription Management repositories. ... # Last metadata expiration check: ... ...
הגדרה או השבתה של firewalld
אפשר להגדיר את Firewalld לשימוש עם Google Distributed Cloud או להשבית אותו. מידע על הגדרת firewalld זמין במאמר הגדרת יציאות ב-firewalld בדף דרישות הרשת.
ההוראות הבאות משביתות את firewalld.
משביתים את firewalld:
sudo systemctl stop firewalld sudo systemctl disable firewalldבודקים את הסטטוס של firewalld כדי לוודא שהוא מושבת:
sudo systemctl status firewalld | grep "Active" # Output # Active: inactive (dead)
הגדרת Docker בתחנת העבודה
כדי להתקין את Docker באופן ידני:
מסירים את הגרסה הקודמת של Docker:
sudo dnf remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engineמסירים את podman-manpages:
sudo dnf remove podman-manpagesמתקינים את 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מוודאים שאתם מריצים עכשיו את גרסה 20.10.0 ואילך:
sudo docker versionכדי לוודא שגרסאות הלקוח והשרת הן 20.10.0 ומעלה, משווים את הפלט לדוגמה הבאה:
Client: Docker Engine - Community Version: 25.0.3 ... Server: Docker Engine - Community Engine: Version: 25.0.3מוודאים ש-Docker פועל:
docker run hello-worldהפלט אמור להיראות כך:
Hello from Docker!ההודעה הזו מציינת שההתקנה שלכם פועלת כראוי.
הגדרת סנכרון זמן
סנכרון הזמן כולל הגדרת השעונים במכונות הצמתים, באמצעות הפניה חיצונית ייעודית לזמן. סנכרון הזמן חשוב לפעילויות של אשכולות שרגישות לזמן, כמו רישום אירועים ואיסוף מדדים.
הליבה של מכונת הצומת שולטת בשעון בקונטיינרים שפועלים בצומת. כדי לוודא שהשעון מסונכרן בצורה תקינה, צריך להתקין במחשבים שירות של פרוטוקול זמן ברשת (NTP) באמצעות אחד מהשירותים הזמינים: chrony, systemd-timesyncd, ntp או ntpdate. מריצים את הפקודה timedatectl כדי לוודא ששעון המערכת מסונכרן. הפלט של timedatectl צריך לכלול את הסטטוס הבא:
System clock synchronized: yes
מוודאים שהמגבלות של ליבת Linux inotify הן ברמה המינימלית או מעליה
במכונות שמופעלות באמצעות RHEL 9 ו-8.10, הגבלות ליבת Linux inotify לגבי מספר מקסימלי של מופעי משתמשים וצפיות משתמשים צריכות להיות גדולות או שוות לערכים הבאים:
fs.inotify.max_user_instances:8192fs.inotify.max_user_watches:524288
מוודאים שהערכים האלה מוגדרים בצורה נכונה במכונות הצמתים:
בודקים את הערך של
max_user_instances:cat /proc/sys/fs/inotify/max_user_instancesאם צריך, מעדכנים את
max_user_instancesלערך המינימלי:echo 'fs.inotify.max_user_instances=8192' | sudo tee --append /etc/sysctl.confבודקים את הערך של
max_user_watches:cat /proc/sys/fs/inotify/max_user_watchesאם צריך, מעדכנים את
max_user_watchesלערך המינימלי:echo 'fs.inotify.max_user_watches=524288' | sudo tee --append /etc/sysctl.confאם עדכנתם את אחד מהערכים, הפעילו מחדש את המחשב.
שיטות מומלצות
כדי לפשט את ההתקנה, מומלץ להגדיר את RHEL באמצעות התקנה מינימלית עם ניהול ללא ראש. בנוסף, צריך להפעיל את החיבור לרשת ולהשתמש ב-DHCP שמוגדר כברירת מחדל, או לספק כתובת IP סטטית תקפה ומידע על הרשת. מוודאים שהמכונה יכולה להתחבר למקורות חיצוניים נדרשים, כמו cloud.google.com.
אם Docker לא פועל, בודקים שהדמון של Docker פועל באמצעות הפקודה הבאה:
sudo systemctl start docker