ConfigMapit määrityksiä varten
Irrottakaa sovelluksen määritykset konttikuvista ConfigMapien avulla.
ConfigMapit määrityksiä varten on ilmainen DevOps-bootcamp-oppitunti CoddyKitissä. Tämä on oppitunti 1/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu DevOps-bootcamp-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. DevOps-bootcamp-kurssilla on yhteensä 4 oppituntia.
ConfigMaps-esittely
Sovellukset tarvitsevat usein määritystietoja, kuten tietokantayhteyksien merkkijonoja tai ominaisuuslippuja.
Jos nämä tiedot kovakoodataan suoraan container-levykuviin, niistä voi tulla jäykkiä ja vaikeasti päivitettäviä.
ConfigMaps tarjoavat tavan erottaa sovelluksen ei-arkaluonteiset määritykset sovelluksesta ja keskittää ne, jolloin levykuvat pysyvät joustavina.
Mikä on ConfigMap?
ConfigMap on Kubernetes-objekti, jota käytetään ei-arkaluonteisten tietojen tallentamiseen avain–arvo-pareina.
Ajattele sitä sovelluksen asetusten keskitettynä sijaintina, jota Podit voivat käyttää.
- Määritysten erottaminen: Erottaa määritykset sovelluskoodista.
- Joustavuus: Asetuksia on helppo muuttaa ilman levykuvien uudelleenrakentamista.
- Siirrettävyys: Sovelluksen voi siirtää eri määrityksiä käyttäviin ympäristöihin.
ConfigMaps-luonti: imperatiivinen tapa
Voit luoda ConfigMapin nopeasti suoraan komentoriviltä komennolla kubectl create configmap.
Tämä menetelmä sopii erinomaisesti yksinkertaisiin, kertaluonteisiin määrityksiin tai nopeaan testaukseen.
Luodaan ConfigMap nimeltä my-app-config, joka sisältää lokitason asetuksen.
kubectl create configmap my-app-config \
--from-literal=log_level=INFOConfigMapin tarkastelu
ConfigMapin luomisen jälkeen voit tarkastella sen tietoja ja varmistaa sen sisällön.
Käytä komentoa kubectl get lipun -o yaml kanssa nähdäksesi koko YAML-määritelmän ja sen sisältämät tiedot.
kubectl get configmap my-app-config -o yamlDeklaratiivinen ConfigMap (YAML)
Tuotantokäytössä ja versionhallinnassa ConfigMaps-määritysten tekeminen YAML-manifesteilla on vakiintunut käytäntö.
Tämä lähestymistapa tekee määrityksistä toistettavia ja helpottaa niiden hallintaa sovelluskoodin rinnalla.
Tässä on YAML-esimerkki pelin määrityksistä:
apiVersion: v1
kind: ConfigMap
metadata:
name: game-config
data:
game.properties: |
level=easy
player_limit=10
ui.properties: |
theme=dark
language=enConfigMapin käyttöönotto YAML-tiedostosta
Luo game-config-ConfigMap tallentamalla edellisen näkymän YAML-sisältö tiedostoon, kuten game-config.yaml.
Käytä sen jälkeen komentoa kubectl apply -f ottaaksesi sen käyttöön klusterissasi.
# Save the YAML to game-config.yaml
kubectl apply -f game-config.yaml
kubectl get configmap game-config -o yamlConfigMaps ympäristömuuttujina
Yksi yleinen tapa saada Pod käyttämään ConfigMapin tietoja on lisätä ne ympäristömuuttujiksi.
Voit määrittää yksittäiset avaimesiirrettävät tiedot tai käyttää komentoa envFrom kaikkien ConfigMapin avain–arvo-parien lisäämiseen.
Tämä sopii erinomaisesti yksinkertaisiin sovelluksen asetuksiin.
apiVersion: v1
kind: Pod
metadata:
name: my-env-pod
spec:
containers:
- name: my-container
image: busybox
command: ["sh", "-c", "echo Log Level: $LOG_LEVEL && sleep 3600"]
env:
- name: LOG_LEVEL
valueFrom:
configMapKeyRef:
name: my-app-config
key: log_levelEsittely: Pod ympäristömäärityksillä
Suoritetaan Pod-määritelmä, jotta näemme ympäristömuuttujan LOG_LEVEL toiminnassa.
Tallenna Podin YAML tiedostoon env-pod.yaml, ota se käyttöön ja tarkista sitten Podin lokit.
# Save Pod YAML to env-pod.yaml
kubectl apply -f env-pod.yaml
kubectl logs my-env-pod
# Clean up
kubeclt delete pod my-env-podConfigMaps liitettyinä taltioina
Sovelluksille, jotka odottavat määritystiedostoja, kuten nginx.conf tai application.properties, ConfigMap voidaan liittää taltioiksi.
Jokaisesta ConfigMapin avain–arvo-parista tulee tiedosto määritettyyn liitospolkuun containerin sisällä.
apiVersion: v1
kind: Pod
metadata:
name: my-volume-pod
spec:
containers:
- name: my-container
image: busybox
command: ["sh", "-c", "echo 'Contents of game.properties:' && cat /etc/config/game.properties && sleep 3600"]
volumeMounts:
- name: config-volume
mountPath: /etc/config
volumes:
- name: config-volume
configMap:
name: game-configEsittely: Pod liitetyllä määrityksellä
Otetaan nyt käyttöön Pod, joka liittää game-config-ConfigMapin taltiona.
Tallenna Podin YAML tiedostoon volume-pod.yaml, ota se käyttöön ja tarkastele lokeja nähdäksesi liitetyn tiedoston sisällön.
# Save Pod YAML to volume-pod.yaml
kubectl apply -f volume-pod.yaml
kubectl logs my-volume-pod
# Clean up
kubeclt delete pod my-volume-podPikatarkistus: ConfigMaps
Mikä seuraavista Kubernetes ConfigMaps -väitteistä on totta?
Kertaus: ConfigMaps
Hienoa työtä! Olet oppinut, miten ConfigMaps auttaa hallitsemaan määrityksiä Kubernetesissa:
- Tarkoitus: Ei-arkaluonteisten määritystietojen tallentaminen avain–arvo-pareina.
- Luominen: Imperatiivisesti komennolla
kubectl createtai deklaratiivisesti YAML:n avulla. - Käyttö: Ympäristömuuttujina tai Podeihin liitettyinä tiedostoina.
- Hyöty: Erottaa määritykset sovelluskoodista ja parantaa joustavuutta.
Seuraavaksi tutustumme siihen, miten arkaluonteisia tietoja käsitellään turvallisesti Kubernetesin Secrets-objektien avulla!
Opi DevOps-bootcamp tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 142
- Oppitunnit
- 568
Usein kysytyt kysymykset
Onko oppitunti ”ConfigMapit määrityksiä varten” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa DevOps-bootcamp-oppimispolun 3 oppituntia, myös oppitunnin “ConfigMapit määrityksiä varten”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. DevOps-bootcamp-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”ConfigMapit määrityksiä varten”?
Irrottakaa sovelluksen määritykset konttikuvista ConfigMapien avulla. Harjoittelet DevOps-bootcamp-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni DevOps-bootcamp-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin DevOps-bootcamp-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 1/4.
Kuinka kauan ”ConfigMapit määrityksiä varten”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä DevOps-bootcamp-oppitunnilla?
Kyllä. Jokainen DevOps-bootcamp-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- ConfigMapit määrityksiä varten
- Secretit arkaluonteisille tiedoille
- Pysyvät taltiot ja varaukset
- StorageClassit ja dynaaminen provisiointi