סקירה כללית
Apigee hybrid תומך בערך יעד של io.timeout.millis עד 55,000 אלפיות השנייה כברירת מחדל. אפשר לקרוא מידע נוסף במאמר מפרט ההעברה של נקודת הקצה (endpoint) לטירגוט.
כדי להגדיל את מגבלת הזמן הקצוב לתפוגה של נקודות קצה איטיות, צריך לבצע את השינויים הבאים בהגדרות של סביבת זמן הריצה:
- מגדירים את
virtualhosts[].requestTimeoutבין Istio לבין מעבד הבקשות(MP). מארחים וירטואליים - הגדרת
conf_http_HTTPTransport.io.timeout.millisבין MP לבין היעדים
אתם יכולים לקבוע את ההגדרות האלה לסביבות ספציפיות או לכל הסביבות בהתקנה.
הגדרת virtualhost כדי לשנות את מגבלת הזמן הקצוב לתפוגה של בקשות
הערך requestTimeout הוא משך הזמן המקסימלי (בשניות) שמוגדר במארח וירטואלי לעיבוד בקשה על ידי ה-MP.
כדי להגדיר את מגבלת הזמן הקצוב לתפוגה של הבקשה, אפשר להשתמש במאפיינים של virtualhosts[].requestTimeout. מבצעים את השינויים הבאים בקובץ overrides.yaml:
- מוסיפים את הבית הבא לקובץ
overrides.yaml:virtualhosts: - name: ENV_GROUP_NAME requestTimeout: 600 # Increase requestTimeout to 600 seconds
- צריך לשדרג קבוצת סביבות (virtualhost) אחת בכל פעם. מציינים את קבוצת הסביבות באמצעות
--set envgroup=ENV_GROUP_NAME. חוזרים על הפקודות הבאות לכל קבוצת סביבות שמוזכרת בקובץ overrides.yaml:הרצת בדיקה:
helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \ --install \ --namespace APIGEE_NAMESPACE \ --set envgroup=ENV_GROUP_NAME \ -f OVERRIDES_FILE \ --dry-run=server
ENV_GROUP_RELEASE_NAME הוא השם שבו התקנתם בעבר את התרשים
apigee-virtualhost. בדרך כלל זה ENV_GROUP_NAME.כדי לשדרג את התרשים:
helm upgrade ENV_GROUP_RELEASE_NAME apigee-virtualhost/ \ --install \ --namespace APIGEE_NAMESPACE \ --set envgroup=ENV_GROUP_NAME \ -f OVERRIDES_FILE
- בודקים את המצב של ApigeeRoute (AR).
התקנת
virtualhostsיוצרת את ApigeeRouteConfig (ARC), שיוצר באופן פנימי את ApigeeRoute (AR) אחרי שה-watcher של Apigee שולף פרטים שקשורים לקבוצת הסביבות ממישור הבקרה. לכן, צריך לבדוק שהמצב של ה-AR התואם הוא "פועל":kubectl -n APIGEE_NAMESPACE get arc
NAME STATE AGE apigee-org1-dev-egroup 2d
kubectl -n APIGEE_NAMESPACE get ar
NAME STATE AGE apigee-org1-dev-egroup-cb9a8a running 2d
הגדרת סביבות ספציפיות כדי לשנות את מגבלת הזמן הקצוב לתפוגה של היעד
אם שרתי ה-Proxy עם נקודות הקצה האיטיות נמצאים רק בסביבה אחת או בכמה סביבות בהתקנה, אתם יכולים להגדיר את הסביבות בנפרד כדי לשנות את מגבלת הזמן הקצוב לתפוגה של היעד. כך אפשר להימנע מהשפעה על סביבות אחרות.
כדי להגדיר סביבות ספציפיות לשינוי מגבלת הזמן הקצוב לתפוגה של היעד, אפשר להשתמש במאפיינים של envs[].components.runtime. מבצעים את השינויים הבאים בקובץ overrides.yaml:
-
מוסיפים את הבית הבא לקובץ
overrides.yaml:envs: - name: ENV_NAME components. runtime: cwcAppend: conf_http_HTTPTransport.io.timeout.millis: 600000 # Increase io.timeout.millis to 600000 milliseconds -
צריך לשדרג סביבה אחת בכל פעם. משדרגים את תרשים ה-
apigee-envלכל סביבה שמעדכנים:הרצת בדיקה:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --set env=ENV_NAME \ -f OVERRIDES_FILE \ --dry-run=server
- ENV_RELEASE_NAME הוא שם שמשמש למעקב אחרי ההתקנה והשדרוגים של התרשים
apigee-env. השם הזה חייב להיות ייחודי ושונה משמות אחרים של גרסאות Helm בהתקנה. בדרך כלל זהה ל-ENV_NAME. עם זאת, אם לסביבה יש שם זהה לקבוצת הסביבות, צריך להשתמש בשמות שונים לגרסאות של הסביבה ושל קבוצת הסביבות, לדוגמהdev-env-releaseו-dev-envgroup-release. מידע נוסף על גרסאות ב-Helm זמין במאמר Three big concepts class="external" במאמרי העזרה של Helm. - ENV_NAME הוא שם הסביבה שמשדרגים.
- OVERRIDES_FILE הוא הקובץ הערוך של
overrides.yaml.
- ENV_RELEASE_NAME הוא שם שמשמש למעקב אחרי ההתקנה והשדרוגים של התרשים
-
כדי לשדרג את התרשים:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --set env=ENV_NAME \ -f OVERRIDES_FILE
-
כדי לוודא שהיא פועלת, בודקים את המצב של הסביבה הרלוונטית:
kubectl -n APIGEE_NAMESPACE get apigeeenv
NAME STATE AGE GATEWAYTYPE my-org-my-env-123abc running 2d
הגדרת כל הסביבות לשינוי מגבלת הזמן הקצוב לתפוגה של היעד
שינויים בבית runtime ישנו את מגבלת הזמן הקצוב לתפוגה של היעד בכל הסביבות בהתקנה. אפשר לשנות את ההגדרות האלה לסביבות ספציפיות באמצעות המאפיינים של runtime.
-
מוסיפים את הבית הבא לקובץ
overrides.yaml:runtime: cwcAppend: conf_http_HTTPTransport.io.timeout.millis: 600000 # Increase io.timeout.millis to 600000 milliseconds -
משדרגים את התרשים של
apigee-envלכל סביבה בהתקנה:הרצת בדיקה:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --set env=ENV_NAME \ -f OVERRIDES_FILE \ --dry-run=server
כדי לשדרג את התרשים:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --set env=ENV_NAME \ -f OVERRIDES_FILE