-
Perustaso
-
HTTP-uudelleenohjauksen määritys
Perustaso
HTTP-uudelleenohjauksen määrittäminen Rahdissa on hyvin yksinkertaista käyttämällä verkkopalvelinta, kuten nginxiä. Voimme uudelleenohjata käytännössä mihin tahansa URL-osoitteeseen hyvinkin monimutkaisella logiikalla. Tässä ohjeessa pidämme asiat yksinkertaisina ja ohjaamme vain toiseen isäntänimeen säilyttäen URL-osoitteen polun.
Määritä HTTP-uudelleenohjaus Rahdissa
Menettely
-
Ota käyttöön NGINX-image. Aloita napsauttamalla oikeassa yläkulmassa olevaa '+ Add' -painiketta ja valitse
Container images-vaihtoehto.
-
Tässä harjoituksessa on suositeltavaa käyttää imagea
bitnami/nginx
-
Lisää reitti siirtymällä kohtaan Networking -> Routes ja napsauttamalla Create Route. Käytä URL-osoitetta, jonka haluat uudelleenohjata. Jos vierailet URL-osoitteessa, sinun pitäisi nähdä "nginx welcome page".

-
Lisää ConfigMap palvelimen uudelleenohjauslohkolla. Siirry kohtaan Workloads > ConfigMaps ja napsauta Create ConfigMap. Name käytetään myöhemmin ConfigMapin liittämisessä. Key on tiedoston nimi (esim.
nginx.conf) ja Value tiedoston sisältö.#nginx.conf server { listen 8080; server_name test.com; return 301 $scheme://test2.com$request_uri; }Tässä esimerkissä
test.comon alkuperäinen URL-osoite jatest2.comse osoite, johon käyttäjä uudelleenohjataan. -
Liitä ConfigMap taltiona nginx-deploymentiin. Siirry deploymentiin ja tee seuraavat lisäykset YAML-tiedostoon.
spec: # [possibly other values] template: # [even more other values] spec: volumes: - name: nginx-conf configMap: name: nginx-conf defaultMode: 420 containers: - name: nginx # [again, more values] volumeMounts: - name: nginx-conf mountPath: /opt/bitnami/nginx/conf/server_blocksTässä esimerkissä nginx-conf on ConfigMapin name, nginx-config on key, ja ConfigMap on liitettävä polkuun
/opt/bitnami/nginx/conf/server_blocks/. Muut imaget voivat tallentaa nginxin asetukset eri kansioihin.
Tarkkuutta vaaditaan
Yllä oleva YAML sisältää lisäykset, joita tarvitaan tämän esimerkin toimimiseksi. Esimerkki ei kuitenkaan sisällä mahdollisia muita rivejä, joita sinulla saattaa olla, ja uusien rivien lisääminen vaatii hieman huolellisuutta.
Jos haluat kokeilla jotain edistyneempää tai YAMLin muokkaaminen käsin tuntuu työläältä, ConfigMapin ja VolumeMountin voi luoda myös oc-komennolla.
echo '#nginx.conf
server {
listen 8080;
server_name test.com;
return 301 $scheme://test2.com$request_uri;
}' | oc create configmap nginx-conf --from-file=nginx.conf=/dev/stdin
<deployment-name> ympäristöösi sopivalla arvolla.
oc set volume deployment/<deployment-name> --add \
--name=nginx-conf \
--type=configmap \
--configmap-name=nginx-conf \
--mount-path=/opt/bitnami/nginx/conf/server_blocks \
--containers=nginx
Tässä ohjeessa ei käsitellä oc-komentoa yksityiskohtaisesti, mutta voit aloittaa toisella ohjeella: Komentorivityökalun käyttö.
Lisää useampia isäntänimiä
Jos sinun täytyy uudelleenohjata useampi kuin yksi isäntänimi, voit käyttää samaa nginxiä. Sinun tarvitsee vain (1) lisätä uusi Route uudella isäntänimellä ja (2) lisätä uusi server-lohko olemassa olevaan ConfigMapiin. Jotta nginx ottaa uuden asetuksen käyttöön, voit poistaa Podin tai siirtyä podin terminaaliin ja suorittaa komennon nginx -s reload.
Terminal
Jos et näe komentoja terminaalissa, laajenna se napsauttamalla oikean yläkulman "Expand"-painiketta. Voit myös pienentää sen takaisin, ja komennot näkyvät silti.
Yhteenveto ja lisätietoa
Nginx on tehokas verkkopalvelin. Voit käyttää sitä myös HTTP-välityspalvelimena ja kuormantasaajana. Lisätietoja on dokumentaatiossa osoitteessa https://nginx.org/en/docs/.