„Cloud for Education/LBaaS cli” változatai közötti eltérés
a (→SSL terminated HTTPS LoadBalancer) |
a (→SSL terminated HTTPS LoadBalancer) |
||
9. sor: | 9. sor: | ||
* Szeretnénk egy SSL terminá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. | * Szeretnénk egy SSL terminá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 | + | * Adott egy előre igényelt certificate, valamint egy projekthez allokált lebegő IP cím. |
'''Példa megoldása:''' | '''Példa megoldása:''' |
A lap 2020. május 7., 02:16-kori változata
SSL terminated HTTPS LoadBalancer
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 SSL terminá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:
openstack loadbalancer create --name s3_edu_lb --vip-subnet-id b9bb709a-7249-42ad-96b7-c517204871af
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).
openssl pkcs12 -export -inkey s3_edu_hu.key -in s3_edu_hu_cert.cer -certfile sectigo_ca_ov.pem -passout pass: -out server.p12 openstack secret store --name='s3_edu_hu_cert' -t 'application/octet-stream' -e 'base64' --payload="$(base64 < server.p12)"
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.
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
Következő lépésként hozzuk létre a pool-t amelyben a backend szerverek fognak elhelyezkedni.
openstack loadbalancer pool create --name s3_edu_pool_https --lb-algorithm ROUND_ROBIN --listener s3_edu_listener_https --protocol HTTP
Sikeres pool létrehozás után, rendeljük a két backend szervert az előző lépésben létrehozott pool-hoz.
openstack loadbalancer member create --subnet-id b9bb709a-7249-42ad-96b7-c517204871af --address 10.10.1.13 --protocol-port 80 s3_edu_pool_https openstack loadbalancer member create --subnet-id b9bb709a-7249-42ad-96b7-c517204871af --address 10.10.1.18 --protocol-port 80 s3_edu_pool_https
Végül rendeljük hozzá a korábban létrehozott publikus lebegő címet a terheléselosztóhoz.
openstack floating ip set --port f85476bd-dceb-44a0-b10b-652f5ca45ee9 ee72cb6c-aaac-442d-b062-bd575983f994