הדף הזה מתייחס ל-Apigee, אבל לא ל-Apigee Hybrid.
לעיון במסמכי התיעוד של
Apigee Edge
בקטע הזה מוסבר איך לנהל את כתובות ה-IP של NAT עבור מופעי Apigee.
Apigee מספק כתובות IP זמניות וכתובות IP ייעודיות. במקרים רבים, כתובות IP זמניות מספיקות. אם לא נדרש אישור של כתובות IP בבק-אנד, לא תצטרכו לנהל כתובות IP של NAT, ומערכת Apigee תקצה באופן אוטומטי כתובות IP זמניות לתעבורת נתונים יוצאת (egress).
אם אתם צריכים להשתמש ברשימת היתרים של כתובות IP, אתם יכולים לשמור ולהפעיל כתובות IP כדי שמערכת Apigee תשתמש בכתובות IP סטטיות לתעבורת נתונים יוצאת.
הגדרה של הקצאת כתובות IP ל-NAT ב-Apigee
כדי להגדיר הקצאת כתובות IP של NAT למופע Apigee:
- יוצרים את משתני הסביבה הבאים ומאכלסים אותם:
משתנים
PROJECT_ID=YOUR_PROJECT_ID
ORG_ID=YOUR_ORG_IDINSTANCE_NAME=YOUR_INSTANCE_NAMENAT_ID=1st_NAT_IP_IDדוגמה
PROJECT_ID=apigee-saas-prod
ORG_ID=apigee-saas-prodINSTANCE_NAME=prod-us-west1-instance1NAT_ID=nat-1כאשר:
- YOUR_PROJECT_ID הוא מזהה הפרויקט בענן שיצרתם במסגרת הדרישות המוקדמות.
אם אתם לא בטוחים מה מזהה הפרויקט שלכם, תוכלו להשתמש במסוף Cloud או בפקודה
gcloud projects listכדי למצוא אותו. - YOUR_ORG_ID הוא מזהה הארגון שלכם ב-Apigee.
- YOUR_INSTANCE_NAME הוא השם של מופע Apigee.
- 1st_NAT_IP_ID הוא השם שאתם מקצים לכתובת ה-IP של ה-NAT. לדוגמה,
nat-1. הערך של הפרמטר הזה לא יכול לכלול יותר מ-20 תווים.
- YOUR_PROJECT_ID הוא מזהה הפרויקט בענן שיצרתם במסגרת הדרישות המוקדמות.
אם אתם לא בטוחים מה מזהה הפרויקט שלכם, תוכלו להשתמש במסוף Cloud או בפקודה
- מזמינים כתובת IP של NAT באמצעות הפקודות הבאות:
-
בשורת הפקודה, מקבלים את פרטי הכניסה לאימות
gcloud, כמו בדוגמה הבאה:TOKEN=$(gcloud auth print-access-token)
כדי לוודא שהטוקן אוכלס, משתמשים ב-
echo, כמו בדוגמה הבאה:echo $TOKEN
האסימון יוצג כמחרוזת מקודדת.
למידע נוסף, ראו סקירה כללית של כלי שורת הפקודה של Google Cloud.
- הפקודה לשמירת כתובת ה-IP של ה-NAT מחזירה את הפעולה הממושכת. לכן הפקודה שמוצגת כאן מקצה את הפלט למשתנה
operation_name:operation_name=$(curl -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/${ORG_ID}/instances/${INSTANCE_NAME}/natAddresses" \ -X POST -H "content-type:application/json" -d "{\"name\":\"${NAT_ID}\"}" | jq -r '.name') - דוגמים את הפעולה הממושכת עד שהסטטוס שלה הוא
done: true. לשם כך, מריצים את הבקשה הבאה:curl -s -H "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/$operation_name"
-
- אחרי שהפעולה מסתיימת, מפעילים את כתובת ה-IP של ה-NAT באמצעות הפקודות הבאות:
- מפעילים את כתובת ה-IP ומקצים את שם הפעולה הממושכת ל-
operation_name:operation_name=$(curl -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/${ORG_ID}/instances/${INSTANCE_NAME}/natAddresses/${NAT_ID}:activate" \ -X POST -H "content-type:application/json" -d "{}" | jq -r '.name') - דוגמים את הפעולה הממושכת עד שהסטטוס שלה הוא
done: true:curl -s -H "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/$operation_name"
- מפעילים את כתובת ה-IP ומקצים את שם הפעולה הממושכת ל-
- חוזרים על התהליך הזה עם שם חדש של כתובת IP של NAT לכל כתובת IP של NAT שצריך להגדיר.
אחזור כתובות IP של NAT
כדי להציג את כתובות ה-NAT של מכונה, מריצים את הפקודה הבאה:
curl -H "Authorization: Bearer $TOKEN" \
"https://apigee.googleapis.com/v1/organizations/${ORG_ID}/instances/${INSTANCE_NAME}/natAddresses"דוגמה לתגובה:
{
"natAddresses": [
{
"name": "nat-1",
"ipAddress": "35.203.160.18",
"state": "ACTIVE"
},
{
"name": "nat-2",
"ipAddress": "35.230.14.174",
"state": "RESERVED"
},
{
"name": "nat-3",
"state": "CREATING"
}
]
}מצבים של כתובת IP של NAT
-
CREATING: יצירת כתובת ה-IP של NAT נמצאת בהמתנה. לא מוכן לשימוש. -
RESERVED: כתובת ה-IP של ה-NAT נוצרה אבל לא נעשה בה שימוש. כך תוכלו להוסיף את כתובת ה-IP הזו לרשימת ההיתרים לפני שתפעילו אותה. -
ACTIVE: כתובת ה-IP של ה-NAT משמשת לשליחת תנועת יציאה. -
DELETING: כתובת ה-IP של ה-NAT נמחקת.
מחיקת כתובות IP של NAT
כדי למחוק כתובות IP של NAT, מריצים את הפקודה הבאה:
- מחיקת כתובת ה-IP והקצאת הפלט ל-
operation_name.operation_name=$(curl -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/${ORG_ID}/instances/${INSTANCE_NAME}/natAddresses/${NAT_ID}" \ -X DELETE | jq -r '.name') - דוגמים את הפעולה הממושכת עד שמוצג הסטטוס
done: true.curl -s -H "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/$operation_name"