Módosítások

Cloud for Education/LBaaS cli

4 107 bájt hozzáadva, 2020. november 13., 11:23
SSL terminated HTTPS LoadBalancer
TCP= SSL terminated HTTPS LoadBalancer =
HTTP'''Példa leírása:'''
* Adott egy publikus (esetünkben Smart1) hálózat, amelyből lebegő publikus IP címet allokálunk a loadbalancer-nek, valamint egy privát subnet. * Adott két backend server 10.10.1.13 és 10.10.1.18 privát IP címekkel. A gépeken az apache2 hallgat a TCP 80-as porton. * Szeretnénk egy SSLterminált loadbalancer-t, amely elérhető a külvilág felől és segítségével eloszthatók a webes kérések a backend (nem SSL) szerverek között. * Adott egy előre igényelt certificate, valamint egy projekthez allokált lebegő IP cím. '''Példa megoldása:''' Első lépésben hozzuk létre a terheléselosztót az alábbi módon, ahol a vip-subnet-id az a subnet, amelyben a backend gépek elhelyezkednek:<pre>openstack loadbalancer create --name s3_edu_lb --vip-subnet-id b9bb709a-7249-42ad-96b7-c517204871af</pre> A következő két parancs segítségével létrehozzuk a szükséges pkcs12 tanúsítványt, valamint feltöltjük a secret store-ba (Barbican).<pre>openssl pkcs12 -export -inkey s3_edu_hu.key -in s3_edu_hu_cert.cer -certfile sectigo_ca_ov.pem -passout pass: -out server.p12openstack secret store --name='s3_edu_hu_cert' -t 'application/octet-stream' -e 'base64' --payload="$(base64 < server.p12)"</pre> Miután sikeresen feltöltöttük a tanúsítványt, következő lépésben látható parancs segítségével adjunk meg néhány nagyon fontos információt, többek között, hogy milyen protokollt szeretnénk használni, illetve adjuk meg az előzőleg feltöltött tanúsítványt.<pre>openstack loadbalancer listener create --protocol-port 443 --protocol TERMINATED_HTTPS --name s3_edu_listener_https --default-tls-container=$(openstack secret list | awk '/ s3_edu_hu_cert / {print $2}') s3_edu_lb</pre> Következő lépésként hozzuk létre a pool-t amelyben a backend szerverek fognak elhelyezkedni.<pre>openstack loadbalancer pool create --name s3_edu_pool_https --lb-algorithm ROUND_ROBIN --listener s3_edu_listener_https --protocol HTTP</pre> Sikeres pool létrehozás után, rendeljük a két backend szervert az előző lépésben létrehozott pool-hoz.<pre>openstack loadbalancer member create --subnet-id b9bb709a-7249-42ad-96b7-c517204871af --address 10.10.1.13 --protocol-port 80 s3_edu_pool_httpsopenstack loadbalancer member create --subnet-id b9bb709a-7249-42ad-96b7-c517204871af --address 10.10.1.18 --protocol-port 80 s3_edu_pool_https</pre> Végül rendeljük hozzá a korábban létrehozott publikus lebegő címet a terheléselosztóhoz.<pre>openstack floating ip set --port f85476bd-dceb-44a0-b10b-652f5ca45ee9 ee72cb6c-aaac-442d-b062-bd575983f994</pre>  '''Probléma:''' Szeretnénk a C4E-ben létrehozott Kubernetes cluster-ben futó konténerekben azonosíti a klienesek IP címeit, a korábbi megoldás nem adta vissza megfelelően az IP címet.  A leírás a C4E-ben található LBaaS szolgáltatást részletezi.  '''Probléma megoldása:''' Ennek beállításához cli használata szükséges.Az alábbi péládban egy loadbalancer létrehozást következik: ==== Loadbalncer létrehozása ====<pre>openstack loadbalancer create --name <name> --vip-subnet-id <subnet_id></pre> ==== Floating IP csatolása ====<pre>openstack floating ip set --port <load_balancer_vip_port_id> <floating_ip_id></pre> ==== Listener létrehozása ====<pre>openstack loadbalancer listener create --name <name> --protocol <proto> --protocol-port <port> loadbalancer_id</pre> ==== Pool/poolok létrehozása ====<pre>openstack loadbalancer pool create --name <name> --protocol PROXY --listener e4cca438-3fb7-4134-a135-65830175e724 --lb-algorithm <algorithm></pre> ==== Health monitor létrehozása ====<pre>openstack loadbalancer healthmonitor create --type <type> --delay <delay> --timeout <timeout> --max-retries <max-retries> --name <name> pool_id</pre> ==== Members (nodeok) hozzáadása ====<pre>openstack loadbalancer member create --subnet-id private-subnet --name <nodename> --address address --protocol-port port pool_id</pre>

Navigációs menü