-
Käänteisen välityspalvelimen tunnistautuminen sivukontin avulla
Edistynyt taso
Tarvitset hyvää Kubernetes-/OpenShift-ympäristön sekä käytettävän työkalun tuntemusta. Tässä tapauksessa oc
Verkkojen tuntemus on hyödyksi tässä ohjeessa
Käänteisen välityspalvelimen todennus sidecar-säiliön avulla
Säiliötä kutsutaan sidecariksi, kun se sijaitsee samassa Podissa kuin toinen "pääsäiliö" ja tarjoaa toiminnallisuutta tälle toiselle säiliölle. Kun säiliöt ovat samassa Podissa, ne jakavat saman verkon, sijaitsevat aina samalla noodilla ja ne luodaan ja tuhotaan samaan aikaan.
Yksi tämän suunnittelumallin käyttötarkoituksista on käyttää käänteistä välityspalvelinta, joka hoitaa todennuksen. Ajatuksena on, että meillä on Flask-sovellus käynnissä säiliössä Podissa. Samassa Podissa luomme nginx-säiliön. Tämä nginx-palvelin yhdistää Flask-sovellukseen Podin sisäisen verkon kautta ja toteuttaa todennuksen. Tässä tapauksessa käytetään oletuskäyttäjänimeä ja -salasanaa.
Käyttöönotto
Luo ensin projekti:
oc new-project <OPEN_SHIFT_PROJECT_NAME> --description="csc_project: <CSC_PROJECT_NUMBER>" \
--display-name="Sidecar test tutorial"
Kloonaa sitten tämän ohjeen repositorio:
Repositoriossa on kansio nimeltä templates, ja luomme objektit yksi kerrallaan:
- Ensin Deployment, joka luo
Podin:
- Sitten Service, joka yhdistää nginxin porttiin 8081:
- Luo lopuksi reitti:
oc create route edge sidecar --service=python-and-sidecar --insecure-policy='Redirect'
oc get route sidecar
Ensimmäinen komento luo reitin, ja toinen antaa sinulle OpenShiftin sille valitseman DNS-nimen.
Testaus
Jos kaikki meni odotetusti, kun avaat edellisessä vaiheessa saadun DNS-nimen, selain pyytää käyttäjänimeä ja salasanaa (admin/admin1041), minkä jälkeen näytetään viesti "Hello World".
Yhteenveto
Tämä on vain yksinkertainen esimerkki tästä suunnittelumallista. Kaksi tai useampi säiliö toimii yhdessä samassa paikallisverkossa siten, että tavallisesti yksi säiliöistä on "pääsäiliö" ja muut tarjoavat sille lisätoiminnallisuutta. Tätä konseptia voidaan laajentaa käyttämällä muitakin todennusmenetelmiä, kuten LDAPia tai OpenID:tä. Tämä malli on hyödyllinen myös tiedostojen tarjoilussa, jossa tiedostot sijaitsevat "hitaassa mutta turvallisessa" tiedostojärjestelmässä ja sidecar-säiliö hakee nämä tiedostot emptyDiriin, joka on Rahtin tarjoama väliaikainen nopea tiedostojärjestelmä.