היי Zen Masters, מאמר זה מציג כיצד ליצור ולהגדיר L4 (שכבת 4) החווה, כמה backends (שרתי אינטרנט) ואת אפוטרופוס החווה באמצעות שלנו Zen Load Balancer API (ZAPI).
פרופיל L4xNAT
פרופיל החווה L4xAT מאפשר לך ליצור חוות L4 עם ביצועים גבוהים מאוד חיבורים בו זמנית הרבה יותר מאשר ליבות איזון עומס בשכבה 7 כמו TCP, UDP או HTTP פרופילים החווה. זה שיפור ביצועים 4 שכבת counteracts את הטיפול תוכן מתקדם כי פרופילי שכבת 7 יכול לנהל.
בנוסף, חוות L4xNAT יכולות לאגד מגוון של יציאות, ולא רק יציאה וירטואלית אחת כפי שמשמשת בפרופילים אחרים של שכבה 7. כדי להיות מסוגל לבחור מגוון יציאות וירטואליות או יציאה וירטואלית ספציפית בחוות L4xNAT, חובה לבחור סוג פרוטוקול. במקרה אחר, החווה תאזין לכל היציאות מה- IP הווירטואלי.
אתחל ZAPI
כפי שציינו במאמר האחרון, עליך לאפשר למשתמש zapi ולהגדיר מפתח וסיסמה כדי להתחיל להשתמש ב- ZAPI שלנו.
עבור הדוגמאות הבאות, הפרמטרים האלה ישמשו:
Key: CiEuYlS4GtfSq3yrknv0YMnA7j5fhm4piVZh49yt5JcjQ0aDyxImz2Y7DAUhstce5 Password: admin Zen Load Balancer IP: 192.168.101.25 Zen Web Port: 444
לאחר הגדרת ZAPI ... בואו נתחיל!
כיצד ליצור חוות L4xNAT עם ZAPI
ראשית, עליך ליצור חוות פרופיל L4xNAT עם הפקודה המתאימה:
curl --tlsv1 -k -X POST -H 'Content-Type: text/json' -H "ZAPI_KEY: CiEuYlS4GtfSq3yrknv0YMnA7j5fhm4piVZh49yt5JcjQ0aDyxImz2Y7DAUhstce5" -u zapi:admin -d '{"interface":"eth0","vip":"192.168.101.25","profile":"L4xNAT"}' https://192.168.101.25:444/zapi/v1/zapi.cgi/farms/L4FARM
HTTP verb: POST, המשמש ליצירת חוות, backends, שירותים ...
פרמטרים JSON: ממשק, ויפ פרופיל (vport לא הכרחי בפרופיל L4xNAT).
פרמטרים של URI: שם משק -> L4FARM, זה השם שנבחר עבור החווה.
לאחר הפעלת פקודה זו, תוצג התגובה הבאה:
{ "description" : "New farm L4FARM", "params" : [ { "interface" : "eth0", "name" : "L4FARM", "profile" : "L4xNAT", "vip" : "192.168.101.25", "vport" : 0 } ] }
תגובה זו מציגה את הפרמטרים העיקריים של החווה. מה המשמעות של נמל: 0? כאשר נוצרת חוות L4xNAT, היא מקשיבה לכל היציאות מהכתובת הווירטואלית הווירטואלית כברירת מחדל, והיא תוצג כ 0 או *.
כיצד להגדיר את החווה L4xNAT עם ZAPI
לאחר שנוצרה חוות L4xNAT, תוכלו לשנות את הפרמטרים של החווה. אפשר לשנות את כל הפרמטרים, כמה או רק אחד.
ראשית, בואו נקבל את הפרמטרים של החווה עם בקשת GET:
curl --tlsv1 -k -X GET -H 'Content-Type: text/json' -H "ZAPI_KEY: CiEuYlS4GtfSq3yrknv0YMnA7j5fhm4piVZh49yt5JcjQ0aDyxImz2Y7DAUhstce5" -u zapi:admin https://192.168.101.25:444/zapi/v1/zapi.cgi/farms/L4FARM
פועל HTTP: GET, המשמש לקבלת פרמטרים של חוות, backends, שירותים ...
פרמטרים של JSON: ללא.
פרמטרים של URI: שם משק -> L4FARM.
לאחר הפעלת פקודה זו, תוצג התגובה הבאה:
{ "backends" : [], "description" : "List farm L4FARM", "params" : [ { "algorithm" : "weight", "fgenabled" : null, "fglog" : null, "fgscript" : null, "fgtimecheck" : 0, "nattype" : "dnat", "persistence" : "none", "protocol" : "all", "ttl" : 120, "vip" : "192.168.101.25", "vport" : 0 } ] }
תגובה זו מציגה את הפרמטרים החווה המתקדמים. ניתן לשנות את הפרמטרים הללו באמצעות ZAPI. הבה נשנה מספר פרמטרים:
curl --tlsv1 -k -X PUT -H 'Content-Type: text/json' -H "ZAPI_KEY: CiEuYlS4GtfSq3yrknv0YMnA7j5fhm4piVZh49yt5JcjQ0aDyxImz2Y7DAUhstce5" -u zapi:admin -d '{"protocol":"tcp","nattype":"nat" ,"port":"80"}' https://192.168.101.25:444/zapi/v1/zapi.cgi/farms/L4FARM
פועל HTTP: PUT, המשמש לשינוי פרמטרים של חוות, backends, שירותים ...
פרמטרים של JSON: פרוטוקול, nattype ופורט.
פרמטרים של URI: שם משק -> L4FARM.
לאחר הפעלת פקודה זו, תוצג התגובה הבאה:
{ "description" : "Modify farm L4FARM", "params" : [ { "protocol" : "tcp" }, { "port" : "80" }, { "nattype" : "nat" } ] }
אם נפעיל בקשה נוספת של GET, התגובה תציג את כל הפרמטרים עם שינויים חדשים:
{ "backends" : [], "description" : "List farm L4FARM", "params" : [ { "algorithm" : "weight", "fgenabled" : null, "fglog" : null, "fgscript" : null, "fgtimecheck" : 0, "nattype" : "nat", "persistence" : "none", "protocol" : "tcp", "ttl" : 120, "vip" : "192.168.101.25", "vport" : 80 } ] }
הפרמטרים nattype, port, ו- parametrs השתנו בהצלחה!
כיצד ליצור ולשנות backend
כיצד ניתן ליצור ולהגדיר backend של L4xNAT דרך ZAPI? אתה רק צריך לבצע את אותם השלבים לעיל באמצעות מספר פקודות עם תלתל:
curl --tlsv1 -k -X POST -H 'Content-Type: text/json' -H "ZAPI_KEY: CiEuYlS4GtfSq3yrknv0YMnA7j5fhm4piVZh49yt5JcjQ0aDyxImz2Y7DAUhstce5" -u zapi:admin -d '{"ip":"46.120.34.160","port":"80","priority":"1","weight":"1"}' https://192.168.101.25:444/zapi/v1/zapi.cgi/farms/L4FARM/backends
HTTP verb: POST, המשמש ליצירת חוות, backends, שירותים ...
הפרמטרים JSON: IP, יציאה, עדיפות ומשקל (כל הפרמטרים נדרשים).
פרמטרים של URI: שם משק -> L4FARM, זה השם שנבחר עבור החווה.
לאחר הפעלת פקודה זו, תוצג התגובה הבאה:
{ "description" : "New backend 0", "params" : [ { "id" : 0, "ip" : "46.120.34.160", "port" : 80, "priority" : 1, "weight" : 1 } ] }
תגובה זו מציגה את הפרמטרים backend ואת מזהה שלה.
איך אנחנו יכולים לשנות backend של L4xNAT החווה? שימוש הפועל HTTP PUT עם תלתל:
curl --tlsv1 -k -X PUT -H 'Content-Type: text/json' -H "ZAPI_KEY: CiEuYlS4GtfSq3yrknv0YMnA7j5fhm4piVZh49yt5JcjQ0aDyxImz2Y7DAUhstce5" -u zapi:admin -d '{"ip":"46.120.101.65","port":"25","priority":"2","weight":"3"}' https://192.168.101.25:444/zapi/v1/zapi.cgi/farms/L4FARM/backends/0
פועל HTTP: PUT, המשמש לשינוי פרמטרים של חוות, backends, שירותים ...
פרמטרים של JSON: ip. יציאה, עדיפות ומשקל.
פרמטרים של URI:
שם משק -> L4FARM.
מזהה backend -> 0.
לאחר הפעלת פקודה זו, תוצג התגובה הבאה:
{ "description" : "Modify backend 0 in farm L4FARM", "params" : [ { "ip" : "46.120.101.65" }, { "weight" : "3" }, { "priority" : "2" }, { "port" : "25" } ] }
אם נפעיל בקשה נוספת של GET, התגובה תציג את כל הפרמטרים עם שינויים חדשים:
{ "backends" : [ { "id" : 0, "ip" : "46.120.101.65", "port" : 25, "priority" : 2, "weight" : 3 } ], "description" : "List farm L4FARM", "params" : [ { "algorithm" : "weight", "fgenabled" : null, "fglog" : null, "fgscript" : null, "fgtimecheck" : 0, "nattype" : "nat", "persistence" : "none", "protocol" : "tcp", "ttl" : 120, "vip" : "192.168.101.25", "vport" : 80 } ] }
המשקל, העדיפות ופרמטרים של הנמל השתנו בהצלחה!
כיצד להגדיר את החווה משק
כדי לסגור, בואו להגדיר את האפוטרופוס החווה של חוות L4xNAT. עלינו להשתמש בבקשה הבאה עם תלתל:
curl --tlsv1 -k -X PUT -H 'Content-Type: text/json' -H "ZAPI_KEY: CiEuYlS4GtfSq3yrknv0YMnA7j5fhm4piVZh49yt5JcjQ0aDyxImz2Y7DAUhstce5" -u zapi:admin -d '{"fgenabled":"true","fgscript":"check_tcp -w 10 -c 10 -H HOST -p PORT","fgtimecheck":"15","fglog":"false"}' https://192.168.101.25:444/zapi/v1/zapi.cgi/farms/L4FARM/fg
פועל HTTP: PUT, המשמש לשינוי פרמטרים של חוות, backends, שירותים ...
פרמטרים של JSON: fgenabled, fgscript, fgtimecheck ו- fglog.
פרמטרים של URI: שם משק -> L4FARM.
לאחר הפעלת פקודה זו, תוצג התגובה הבאה:
{ "description" : "Modify farm L4FARM", "params" : [ { "fglog" : "false" }, { "fgenabled" : "true" }, { "fgscript" : "check_tcp -w 10 -c 10 -H HOST -p PORT" }, { "fgtimecheck" : "15" } ] }
מה עושים הפרמטרים האלה? הפרמטר 'fgenabled' מאפשר לאפוטרופוס החווה, הפרמטר 'fgtimecheck' הוא הזמן שבין בדיקות (בשניות), 'fglog' מאפשר את יומני אפוטרופוס החווה ו 'fgscript' הוא הפקודה לבדוק.
בשם צוות Zen, אנו באמת מקווים שנהניתם במאמר זה. להתראות ב הבא!