Kuidas luua ja konfigureerida L4xNAT talu ZAPI v1iga

Postitaja Zevenet | 16 oktoober, 2015 Tehniline

Tere Zen Masters, see artikkel tutvustab L4i (kiht 4) loomist ja konfigureerimist, paari taustaprogrammi (veebiserver) ja talu eestkostjat Zen Load Balancer API (ZAPI) kaudu.

L4xNAT profiil
L4xNATi taluprofiil võimaldab teil luua L4i talu, millel on väga kõrge jõudlus ja palju rohkem samaaegseid ühendusi kui koormuse tasakaalustussüdamikud kihis 7 nagu TCP, UDP või HTTP taluprofiilid. See kiht 4 jõudluse parandamine on vastuolus täiustatud sisuhaldusega, mida kiht 7 profiilid suudavad hallata.

Lisaks võiksid L4xNAT-farmid siduda terve rea porde, mitte ainult ühte virtuaalset porti, nagu seda kasutatakse teiste 7. kihi profiilidega. Selleks, et saaksite L4xNAT-i farmides valida virtuaalse pordi vahemiku või konkreetse virtuaalse pordi, on kohustuslik valida protokolli tüüp. Muul juhul kuulab farm kõiki sadamaid virtuaalsest IP-st.

Alusta ZAPI
Nagu me eelmises artiklis arutlesime, peate lubama zapi kasutaja ja seadma oma ZAPI kasutamise alustamiseks võtme ja parooli.
Järgmiste näidete puhul kasutatakse neid parameetreid:

Key: CiEuYlS4GtfSq3yrknv0YMnA7j5fhm4piVZh49yt5JcjQ0aDyxImz2Y7DAUhstce5
Password: admin
Zen Load Balancer IP: 192.168.101.25
Zen Web Port: 444

Kui ZAPI on konfigureeritud ... alustame!

Kuidas luua ZAPI-ga L4xNATi talu
Esiteks peate looma L4xNAT profiili talu, millel on vastav käsk:

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, mida kasutatakse põllumajandusettevõtete, taustaprogrammide, teenuste loomiseks ...
JSON-parameetrid: liides, vip ja profiil (L4xNAT-profiili puhul pole vport vajalik).
URI parameetrid: farmname -> L4FARM, see on farmile valitud nimi.

Kui see käsk on käivitatud, kuvatakse järgmine vastus:

{
    "description" : "New farm L4FARM",
    "params" : [
        {
            "interface" : "eth0",
            "name" : "L4FARM",
            "profile" : "L4xNAT",
            "vip" : "192.168.101.25",
            "vport" : 0
        }
    ]
}

See vastus näitab peamisi põllumajandusettevõtte parameetreid. Mida tähendab vport: 0? Kui luuakse L4xNATi talu, kuulab see vaikimisi kõiki virtuaalseid IP-porte ja seda näidatakse kui 0 või *.

Kuidas seadistada L4xNAT talu ZAPI-ga

Kui farm L4xNAT on loodud, saate talu parameetreid muuta. Võimalik on muuta kõiki parameetreid, mõnda või ainult ühte.
Kõigepealt leiame GET-päringuga talu parameetrid:

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 verb: GET, mida kasutatakse põllumajandusettevõtete, taustaprogrammide, teenuste parameetrite saamiseks ...
JSON-parameetrid: Puudub.
URI parameetrid: talunimi -> L4FARM.

Kui see käsk on käivitatud, kuvatakse järgmine vastus:

{
    "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
        }
    ]
}

See vastus näitab arenenud talu parameetreid. Neid parameetreid saab muuta ZAPI abil. Muudame mõningaid parameetreid:

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 verb: PUT, mida kasutatakse põllumajandusettevõtete, taustaprogrammide, teenuste parameetrite muutmiseks…
JSON parameetrid: protokoll, nattype ja port.
URI parameetrid: talunimi -> L4FARM.

Kui see käsk on käivitatud, kuvatakse järgmine vastus:

{
    "description" : "Modify farm L4FARM",
    "params" : [
        {
            "protocol" : "tcp"
        },
        {
            "port" : "80"
        },
        {
            "nattype" : "nat"
        }
    ]
}

Kui käivitame teise GET-i taotluse, kuvatakse vastuses kõik parameetrid uute muudatustega:

{
    "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 ja protokolli parameetrid on edukalt muutunud!

Kuidas luua ja muuta taustaprogrammi
Kuidas me saame luua ja konfigureerida L4xNAT talu taustaprogrammi ZAPI kaudu? Peate lihtsalt järgima samu ülaltoodud samme, kasutades mitmeid käske, millel on curl:

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, mida kasutatakse põllumajandusettevõtete, taustaprogrammide, teenuste loomiseks ...
JSON parameetrid: ip, port, prioriteet ja kaal (kõik parameetrid on vajalikud).
URI parameetrid: farmname -> L4FARM, see on farmile valitud nimi.

Kui see käsk on käivitatud, kuvatakse järgmine vastus:

{
    "description" : "New backend 0",
    "params" : [
        {
            "id" : 0,
            "ip" : "46.120.34.160",
            "port" : 80,
            "priority" : 1,
            "weight" : 1
        }
    ]
}

See vastus näitab taustaparameetreid ja selle ID-d.
Kuidas me saame muuta L4xNAT talu taustaprogrammi? PUT HTTP verbi kasutamine curliga:

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 verb: PUT, mida kasutatakse põllumajandusettevõtete, taustaprogrammide, teenuste parameetrite muutmiseks…
JSON parameetrid: ip. sadam, prioriteet ja kaal.
URI parameetrid:
talunimi -> L4FARM.
taustaprogrammi ID -> 0.

Kui see käsk on käivitatud, kuvatakse järgmine vastus:

{
    "description" : "Modify backend 0 in farm L4FARM",
    "params" : [
        {
            "ip" : "46.120.101.65"
        },
        {
            "weight" : "3"
        },
        {
            "priority" : "2"
        },
        {
            "port" : "25"
        }
    ]
}

Kui käivitame teise GET-i taotluse, kuvatakse vastuses kõik parameetrid uute muudatustega:

{
    "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
        }
    ]
}

Kaalu, prioriteedi ja sadama parameetrid on edukalt muutunud!

Kuidas seadistada talu valvur
Sulgemiseks konfigureerime talu L4xNAT talu hooldaja. Peame kasutama järgmist lokkidega taotlust:

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 verb: PUT, mida kasutatakse põllumajandusettevõtete, taustaprogrammide, teenuste parameetrite muutmiseks…
JSON parameetrid: fgenabled, fgscript, fgtimecheck ja fglog.
URI parameetrid: talunimi -> L4FARM.

Kui see käsk on käivitatud, kuvatakse järgmine vastus:

{
    "description" : "Modify farm L4FARM",
    "params" : [
        {
            "fglog" : "false"
        },
        {
            "fgenabled" : "true"
        },
        {
            "fgscript" : "check_tcp -w 10 -c 10 -H HOST -p PORT"
        },
        {
            "fgtimecheck" : "15"
        }
    ]
}

Mida need parameetrid teevad? Parameeter 'fgenabled' lubab talu hooldaja, parameeter 'fgtimecheck' on kontrollide vaheline aeg (sekundites), 'fglog' lubab talu hooldaja logisid ja 'fgscript' on käsk kontrollida.

Zen meeskonna nimel loodame, et nautisite seda artiklit. Näeme teid järgmisel!

Jaga:

Seotud blogid

Postitanud zenweb | 01. september 2022
Koormuse tasakaalustamine on arvutimaailmas tavaline. See tekkis seetõttu, et kasutajad soovisid sisu kiiresti. See tähendas, et suure liiklusega veebisaidid, mis saavad miljoneid kasutajate taotlusi, pidid…
178 LikesComments Off teemal Kuidas koormuse tasakaalustamine töötab
Postitas zenweb | 30 august 2022
Tervishoid on turvaohtude suhtes väga haavatav, nagu iga teinegi tööstusharu. Tänapäeval on küberrünnakud tervishoius väga levinud, mis toob kaasa palju riske, eriti turvariske…
181 LikesComments Off teemal Küberturvalisuse raamistike tähtsus tervishoius
Postitas zenweb | 02 august 2022
7 põhjust, miks ZEVENET on 2022. aasta parim koormuse tasakaalustamise tarkvara Koormuse tasakaalustamise lahendus ei ole enam see, mis ta oli varem. Tehnoloogia arenedes ka ohud…
207 LikesComments Off 7 põhjust ZEVENET on 2022. aasta parim koormuse tasakaalustamise tarkvara