תיעוד 178
עדכון cloudflared
עדכונים יגרמו ל-cloudflared לבצע הפעלה מחדש, וזה ישפיע על תעבורה שמטופלת כרגע. אפשר לבצע שדרוגים בלי זמן השבתה באמצעות מוצר Load Balancer של Cloudflare או באמצעות מספר מופעים של cloudflared.
#עדכון שירות cloudflared
עיינו בפקודות הבאות כדי לעדכן את cloudflared עבור מנהרה שמנוהלת מרחוק או מנהרה שמנוהלת מקומית. מנהרות שמנוהלות מקומית חייבות להיות מוגדרות לרוץ כשירות כדי שהפקודות הבאות יבוצעו בהצלחה.
הריצו את הפקודה הבאה:
cloudflared updateאחרי הרצת cloudflared update כדי לעדכן את cloudflared, יש להפעיל מחדש את השירות כדי שהעדכון ייכנס לתוקף. הריצו:
net start cloudflared- עדכנו את חבילת
cloudflared:
brew upgrade cloudflared- הפעילו מחדש את השירות:
sudo launchctl stop com.cloudflare.cloudflared
sudo launchctl unload /Library/LaunchDaemons/com.cloudflare.cloudflared.plist
sudo launchctl load /Library/LaunchDaemons/com.cloudflare.cloudflared.plist
sudo launchctl start com.cloudflare.cloudflaredאם ההתקנה בוצעה באמצעות apt:
- עדכנו את חבילת
cloudflared:
sudo apt-get update && sudo apt-get install --only-upgrade cloudflared- הפעילו מחדש את השירות:
sudo systemctl restart cloudflared.serviceאם ההתקנה בוצעה באמצעות dpkg -i:
השתמשו בפקודות הבאות אם התקנתם את cloudflared באמצעות מנהל החבילות dpkg.
אפשר לבדוק אם cloudflared הותקן על ידי מנהל חבילות על ידי הרצת ls -la /usr/local/etc/cloudflared/ וחיפוש .installedFromPackageManager בפלט.
- עדכנו את חבילת
cloudflared:
curl --location --output cloudflared.deb "https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-$(dpkg --print-architecture).deb" && sudo dpkg -i cloudflared.deb- הפעילו מחדש את השירות:
sudo systemctl restart cloudflared.service- עדכנו את חבילת
cloudflared:
sudo yum update cloudflared- הפעילו מחדש את השירות:
sudo systemctl restart cloudflared.serviceאם יצרתם מנהרה שמנוהלת מרחוק באמצעות לוח הבקרה:
- בלוח הבקרה של Cloudflare, עברו אל Networking > Tunnels. עברו אל Tunnels ↗
- בחרו את המנהרה כדי לפתוח את דף הפרטים שלה.
- בלשונית Overview, העתיקו את פקודת ההתקנה של Docker. הפקודה שהועתקה תכיל את האסימון שלכם.
- הדביקו את הפקודה הזו בחלון מסוף.
הפקודה הזו יוצרת קונטיינר חדש מתמונת cloudflared העדכנית. אפשר עכשיו למחוק את הקונטיינר הישן.
זהירות
Cloudflare ממליצה ליצור מנהרות שמנוהלות מרחוק כשעובדים עם Docker.
אם יצרתם מנהרה שמנוהלת מרחוק או מקומית באמצעות ה-API, הריצו את הפקודה הבאה:
docker run --pull always cloudflare/cloudflared:latest tunnel --no-autoupdate run --token <TOKEN>אם יצרתם מנהרה שמנוהלת מקומית באמצעות ה-CLI:
עגנו את ספריית
.cloudflaredהמקומית שלכם לתוך קונטיינר Docker באמצעות volume.הריצו את הפקודה הבאה כדי לעדכן את
cloudflared:docker run --pull always -v <PATH-TO-YOUR-LOCAL-CLOUDFLARED>:/home/nonroot/.cloudflared cloudflare/cloudflared:latest tunnel --no-autoupdate run <TUNNEL-ID>
אם התקנתם את cloudflared מקבצים בינאריים שסופקו ב-GitHub או מקוד מקור, הריצו את הפקודה הבאה:
cloudflared updateאם התקנתם את cloudflared באמצעות מנהל חבילות, יש לעדכן אותו באמצעות אותו מנהל חבילות.
אפשר לבדוק אם cloudflared הותקן על ידי מנהל חבילות על ידי הרצת ls -la /usr/local/etc/cloudflared/ וחיפוש .installedFromPackageManager בפלט.
#עדכון עם Cloudflare Load Balancer
אפשר לעדכן את cloudflared בלי זמן השבתה באמצעות מוצר Load Balancer של Cloudflare עם פריסת Cloudflare Tunnel שלכם.
- התקינו מופע חדש של
cloudflaredוצרו מנהרה חדשה. - הגדירו את המופע כך שיפנה תעבורה לאותו שירות שזמין מקומית כמו המופע הפעיל הנוכחי של
cloudflared. - הוסיפו את הכתובת של המופע החדש של
cloudflaredלמאגר Load Balancer שלכם בעדיפות 2. - החליפו את העדיפות כך שהמופע החדש יהיה עכשיו בעדיפות 1, ועקבו כדי לאשר שהתעבורה מטופלת.
- אחרי האישור, אפשר להסיר את הגרסה הישנה יותר ממאגר Load Balancer.
#עדכון עם מספר מופעים של cloudflared
אם אינכם משתמשים ב-Load Balancer של Cloudflare, אפשר להשתמש במספר מופעים של cloudflared כדי לעדכן בלי סיכון לזמן השבתה.
- התקינו מופע חדש של
cloudflaredוצרו מנהרה חדשה. - הגדירו את המופע כך שיפנה תעבורה לאותו שירות שזמין מקומית כמו המופע הפעיל הנוכחי של
cloudflared. - בלוח הבקרה של DNS של Cloudflare, החליפו את הכתובת של המופע הנוכחי של
cloudflaredבכתובת של המופע החדש. שמרו את הרשומה. - הסירו את המופע של
cloudflaredשכבר אינו פעיל.
טיפול בתעבורה
כשהעותק הישן נעצר, הוא ישמיט בקשות HTTP ארוכות טווח (לדוגמה, WebSocket) וחיבורי TCP (לדוגמה, SSH). גם זרימות UDP יושמטו, כי הן ממודלות על בסיס פסקי זמן. כשהעותק החדש מתחבר, הוא יטפל בכל התעבורה החדשה, כולל בקשות HTTP חדשות, חיבורי TCP וזרימות UDP.
#הרצת מספר מופעים ב-Windows
מערכות Windows דורשות שלשירותים יהיו שם ייחודי ושם תצוגה. אפשר להריץ מספר מופעים של cloudflared על ידי יצירת שירותי cloudflared עם שמות ייחודיים.
- התקינו והגדירו את
cloudflared. - לאחר מכן, צרו שירות עם שם ייחודי והצביעו אל קובץ ההרצה של
cloudflaredואל קובץ התצורה.
sc.exe create <unique-name> binPath='<path-to-exe>' --config '<path-to-config>' displayname="Unique Name"- המשיכו ליצור שירותים נוספים עם שמות ייחודיים.
- אפשר עכשיו להפעיל כל שירות ייחודי.
sc.exe start <unique-name>