Keskitetty määritys Config Serverillä
Hallinnoikaa yhdyskäytävän määrityksiä keskitetysti Spring Cloud Config Serverillä dynaamisia päivityksiä ja ympäristökohtaisia asetuksia varten.
Keskitetty määritys Config Serverillä on ilmainen API-yhdyskäytävä ja käänteisvälityspalvelin (Nginx + Spring Cloud Gateway)-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu API-yhdyskäytävä ja käänteisvälityspalvelin (Nginx + Spring Cloud Gateway)-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. API-yhdyskäytävä ja käänteisvälityspalvelin (Nginx + Spring Cloud Gateway)-kurssilla on yhteensä 4 oppituntia.
Miksi keskitetty konfiguraatio
Mikropalveluarkkitehtuurissa käytössä voi olla monia palveluja, joilla kullakin on omat konfiguraatiotiedostonsa. Näiden tiedostojen hallinta yksitellen voi muodostua suureksi haasteeksi.
Kuvitelkaa, että tietokantayhteyden merkkijono pitäisi päivittää 20 eri palveluun! Se on virhealtista ja aikaa vievää.
- Hajautetut konfiguraatiot: Vaikeita hallita suuressa mittakaavassa.
- Epäyhtenäiset konfiguraatiot: Eri palveluissa voi olla hieman toisistaan poikkeavat asetukset.
- Manuaaliset päivitykset: Työläitä ja riskialttiita.
Spring Cloud Config Serverin esittely
Spring Cloud Config Server tarjoaa keskitetyn ulkoistetun konfiguraatiopalvelun hajautetuille järjestelmille. Se perustuu Spring Bootiin ja integroituu helposti erilaisiin taustalla toimiviin tallennusratkaisuihin.
Ajatelkaa sitä keskuksena, jossa kaikki sovelluksen asetukset sijaitsevat. Palvelut eli asiakkaat noutavat konfiguraationsa tästä keskuksesta.
- Keskitetty tallennus: Kaikki konfiguraatiot yhdessä paikassa.
- Versionhallittu: Konfiguraatiot tallennetaan Gitiin tai vastaavaan järjestelmään.
- Ympäristökohtainen: Eri ympäristöjen, kuten kehitys- ja tuotantoympäristön, konfiguraatioita on helppo hallita.
Config Serverin määrittäminen
Config Serverin luomiseksi määritätte ensin perusmuotoisen Spring Boot -sovelluksen ja lisäätte spring-cloud-config-server-riippuvuuden. Sen jälkeen otatte sen käyttöön @EnableConfigServer-annotaatiolla.
Tässä on Config Serverin pääluokka:
package com.coddykit.configserver;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.config.server.EnableConfigServer;
@SpringBootApplication
@EnableConfigServer
public class ConfigServerApplication {
public static void main(String[] args) {
SpringApplication.run(ConfigServerApplication.class, args);
}
}Config Serverin ominaisuudet
Config Serverin on tiedettävä, mistä konfiguraatiotiedostot löytyvät. Tyypillisesti ne tallennetaan Git-repositorioon.
Määritätte Git-repositorion URI-osoitteen ja hakupolut tiedostossa application.properties tai application.yml:
server.port=8888
spring.cloud.config.server.git.uri=https://github.com/your-org/config-repo.git
spring.cloud.config.server.git.search-paths=configs
Tämä määritys käskee palvelinta suorittamaan itsensä portissa 8888 ja noutamaan konfiguraatiot määritetystä Git-repositoriosta 'configs'-kansion sisältä.
Konfiguraatioiden tallentaminen Gitiin
Git-repositorioon, kuten config-repo.git, luotte kullekin palvelulle omat konfiguraatiotiedostot. Nimeämiskäytäntö on {application-name}-{profile}.yml tai .properties.
Oletetaan, että Spring Cloud Gatewayn spring.application.name on gateway-service. Git-repositoriossa oleva peruskonfiguraatiotiedosto, kuten configs/gateway-service.yml, voisi näyttää tältä:
spring:
cloud:
gateway:
routes:
- id: example_route
uri: http://example.org
predicates:
- Path=/example/**
Gateway Config-asiakkaana
Määritetään nyt Spring Cloud Gateway toimimaan asiakkaana ja noutamaan konfiguraationsa Config Serveriltä. Tarvitsette spring-cloud-starter-config-riippuvuuden.
Tiedoston application.properties sijaan asiakas käyttää tiedostoa bootstrap.properties tai .yml muodostaakseen yhteyden Config Serveriin *ennen* pääsovelluskontekstin lataamista.
spring.application.name=gateway-service
spring.cloud.config.uri=http://localhost:8888
spring.application.name auttaa Config Serveriä löytämään oikean konfiguraatiotiedoston, kuten gateway-service.yml.
Keskitettyjen ominaisuuksien käyttäminen
Kun määritykset ovat valmiit, Gateway-palvelu muodostaa käynnistyessään automaattisesti yhteyden Config Serveriin, noutaa konfiguraatiot, kuten reitit, predikaatit ja suodattimet, ja ottaa ne käyttöön.
Tämä tarkoittaa, että voitte määrittää kaikki Gatewayn reitityssäännöt, yleiset suodattimet ja muut asetukset Git-repositorioon, jota Config Server hallitsee, sen sijaan että määrittäisitte ne suoraan Gatewayn koodissa.
Esimerkiksi Git-repositorion tiedostossa gateway-service.yml määritetty reitti otetaan käyttöön Gatewayssä.
Ympäristöprofiilit
Config Server soveltuu erinomaisesti ympäristökohtaisten konfiguraatioiden hallintaan. Voitte luoda Git-repositorioon tiedostoja, kuten gateway-service-dev.yml tai gateway-service-prod.yml.
Gateway-asiakas voi tämän jälkeen määrittää aktiivisen profiilinsa tiedostossa bootstrap.properties:
spring.application.name=gateway-service
spring.cloud.config.uri=http://localhost:8888
spring.profiles.active=dev
Config Server käyttää ensisijaisesti tiedostoa gateway-service-dev.yml ja ohittaa sillä perusmuotoisessa tiedostossa gateway-service.yml olevat ominaisuudet.
Dynaaminen konfiguraation päivitys
Yksi tehokas ominaisuus on mahdollisuus päivittää konfiguraatiot ilman Gateway-palvelun uudelleenkäynnistystä. Tämä toteutetaan Spring Cloud Actuatorin ja @RefreshScope-annotaation avulla.
1. Lisää spring-boot-starter-actuator-riippuvuus Gatewayhin.
2. Ota päätepiste /actuator/refresh käyttöön tiedostossa application.properties:
management.endpoints.web.exposure.include=refresh
3. Merkitse Gatewayn konfiguraatio-ominaisuuksia käyttävät beanit annotaatiolla @RefreshScope.
Kun olet päivittänyt Git-konfiguraation ja vienyt muutokset repositorioon, voit lähettää POST-pyynnön Gatewayn päätepisteeseen /actuator/refresh, jolloin se noutaa uudet konfiguraatiot!
Konfiguraation pikatarkistus
Mitkä seuraavista ovat Spring Cloud Config Serverin keskeisiä hyötyjä mikropalveluarkkitehtuurissa?
Kertaus: keskitetty konfiguraatio
Olet oppinut, miten Spring Cloud Config Server ratkaisee hajautettujen järjestelmien konfiguraatioiden hallinnan haasteen. Se toimii keskitettynä keskuksena, jonka taustalla on yleensä Git-repositorio, konfiguraatioiden tallentamista ja tarjoamista varten.
Keskeiset opit:
- Config Server: Spring Boot -sovellus, jossa on
@EnableConfigServer. - Config Client: Gateway-sovelluksesi (tai muut palvelut), joka muodostaa yhteyden
bootstrap.properties-tiedoston kautta. - Git-integraatio: Konfiguraatiot tallennetaan muodossa
{application}-{profile}.yml. - Dynaaminen päivitys: Päivitä konfiguraatiot lennossa Actuatorin
/refresh-päätepisteen ja@RefreshScope-annotaation avulla.
Tämä keskitetty lähestymistapa tuo järjestystä ja tehokkuutta mikropalveluiden konfiguraatioiden hallintaan!
Opi API-yhdyskäytävä ja käänteisvälityspalvelin (Nginx + Spring Cloud Gateway) 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
- 12
- Oppitunnit
- 48
Usein kysytyt kysymykset
Onko oppitunti ”Keskitetty määritys Config Serverillä” ilmainen?
Kyllä – oppitunnin ”Keskitetty määritys Config Serverillä” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko API-yhdyskäytävä ja käänteisvälityspalvelin (Nginx + Spring Cloud Gateway)-kurssin, päivitä CoddyKit PROhon. API-yhdyskäytävä ja käänteisvälityspalvelin (Nginx + Spring Cloud Gateway)-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”Keskitetty määritys Config Serverillä”?
Hallinnoikaa yhdyskäytävän määrityksiä keskitetysti Spring Cloud Config Serverillä dynaamisia päivityksiä ja ympäristökohtaisia asetuksia varten. Harjoittelet API-yhdyskäytävä ja käänteisvälityspalvelin (Nginx + Spring Cloud Gateway)-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni API-yhdyskäytävä ja käänteisvälityspalvelin (Nginx + Spring Cloud Gateway)-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin API-yhdyskäytävä ja käänteisvälityspalvelin (Nginx + Spring Cloud Gateway)-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.
Kuinka kauan ”Keskitetty määritys Config Serverillä”-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ä API-yhdyskäytävä ja käänteisvälityspalvelin (Nginx + Spring Cloud Gateway)-oppitunnilla?
Kyllä. Jokainen API-yhdyskäytävä ja käänteisvälityspalvelin (Nginx + Spring Cloud Gateway)-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
- JWT-todennus ja käyttöoikeuksien hallinta
- Hajautettu jäljitys Sleuthillä ja Zipkinillä
- Keskitetty määritys Config Serverillä
- Mittareiden julkaiseminen Actuatorilla ja Prometheuksella