
HashiCorp esitteli uuden projektin päälle . Se käyttää HCL-pohjaista tiedostoa kuvaamaan sovellusten rakentamista, toimittamista ja julkaisua eri pilvialustoille Kubernetesista AWS:ään ja Google Cloud Runiin. Ajattele Waypointia Terraformina ja Vagrantina, jotka on yhdistetty kuvaamaan sovellusten rakentamis-, toimitus- ja julkaisuprosessia.
Todenmukaisesti HashiCorp on julkaissut Waypointin avoimena lähdekoodina, ja sen mukana tulee paljon esimerkkejä. Orkesterin taso on sinun päätettävissäsi, Waypoint tulee suoritettavana tiedostona, jonka voit suorittaa suoraan kannettavalla tietokoneellasi tai valitsemallasi CI/CD-orkesterityökalulla. Sovelluksen käyttöönottokohde on myös sinun päätettävissäsi, sillä Waypoint tukee Kubernetesia, Dockeria, Google Cloud Runia, AWS ECS:ää ja muita.
Kun olet lukenut mahtavan ja tyylikkäin HashiCorpin toimittamat sovellukset, päätimme tarkastella lähemmin Waypoint-orkestrointia GitLab CI/CD:llä. Tätä varten otamme näytevarastosta yksinkertaisen AWS ECS:ssä toimivan Node.js-sovelluksen.
Arkiston kloonauksen jälkeen katsotaan yhden sivun näyttävän sovelluksen rakennetta:

Kuten olet ehkä huomannut, tässä projektissa ei ole Docker-tiedostoa. Niitä ei ole lisätty esimerkissä, koska emme todella tarvitse niitä, koska Waypoint hoitaa ne puolestamme. Katsotaanpa tiedostoa tarkemmin waypoint.hclymmärtääksesi mitä se tekee:
project = "example-nodejs"
app "example-nodejs" {
labels = {
"service" = "example-nodejs",
"env" = "dev"
}
build {
use "pack" {}
registry {
use "aws-ecr" {
region = "us-east-1"
repository = "waypoint-gitlab"
tag = "latest"
}
}
}
deploy {
use "aws-ecs" {
region = "us-east-1"
memory = "512"
}
}
}Rakennusvaiheessa Waypoint käyttää Cloud Native Buildpacks -paketteja () määrittääksesi projektin ohjelmointikielen ja luodaksesi Docker-kuvan ilman Docker-tiedostoa. Periaatteessa tämä on sama tekniikka, jota GitLab käyttää osittain Auto Build -vaiheessa. On hienoa nähdä, että CNCF:n CNB on saamassa yhä enemmän käyttöä alan käyttäjien keskuudessa.
Kun kuva on rakennettu, Waypoint lataa sen automaattisesti AWS ECR -rekisteriin, jotta se on valmis lähetettäväksi. Kokoonpanon lopussa toimitusvaiheessa käytetään ottaaksesi sovelluksemme käyttöön AWS-tilillemme.
Omalta kannettavalta tietokoneeltani se on helppoa. Laitoin Waypointin, joka on jo todennettu AWS-tililläni ja se "vain toimii". Mutta mitä tapahtuu, jos haluan mennä kannettavaa tietokonetta pidemmälle? Tai ehkä haluan automatisoida tämän käyttöönoton osana yleistä CI/CD-putkilinjaani, jossa nykyiset integraatiotestit, suojaustestit ja muut suoritetaan? Tämä on osa tarinaa, jossa GitLab CI/CD tulee sisään!
NB Jos olet juuri suunnittelemassa CI/CD:n käyttöönottoa tai haluat alkaa soveltaa parhaita käytäntöjä putkien rakentamiseen, kiinnitä huomiota uuteen Slurm-kurssiin. . Se on nyt saatavilla ennakkotilaushintaan.
Reittipiste GitLab CI/CD:ssä
Jos haluat järjestää kaiken tämän GitLab CI/CD:llä, katsotaan mitä tarvitsemme tiedostossamme .gitlab-ci.yml:
- Ensinnäkin tarvitset peruskuvan, jonka sisällä se toimii. Waypoint toimii millä tahansa jakelulla. Linux, se tarvitsee vain Dockerin, joten voimme ajaa sen yleisestä Docker-kuvasta.
- Seuraavaksi sinun on asennettava Waypoint tähän kuvaan. Tulevaisuudessa saatamme kerätä ja säilytä tämä prosessi itsellesi.
- Lopuksi suoritamme Waypoint-komennot
Yllä on kaikki, mitä putkistomme tarvitsee käyttöönoton suorittamiseen tarvittavien komentosarjojen suorittamiseen, mutta AWS:ssä käyttöönottoa varten tarvitsemme vielä yhden asian: meidän on kirjauduttava sisään AWS-tiliimme. Reittipisteen kuvauksessa todennuksen ja valtuutuksen osalta. HashiCorp julkaisi myös vaikuttavan projektin tällä viikolla . Mutta toistaiseksi voimme vain ottaa ja hoitaa todennuksen ja valtuutuksen itse.
GitLab CICD -todennusta varten AWS:ssä on useita vaihtoehtoja. Ensimmäinen vaihtoehto on käyttää sisäänrakennettua . On hyvä, jos tiimisi käyttää jo Holvia tunnistetietojen hallintaan. Toinen tapa, joka toimii, jos tiimisi hallinnoi valtuutusta AWS IAM:n avulla, on tarkistaa, että toimitustehtävät käynnistetään A, jolla on lupa aloittaa käyttöönotto IAM:n kautta. Mutta jos haluat vain tutustua Waypointiin ja haluat tehdä sen nopeasti, viimeinen vaihtoehto on lisätä AWS API ja salaiset avaimet AWS_ACCESS_KEY_ID и AWS_SECRET_ACCESS_KEY.
Kaikki yhdistetään
Kun olemme selvittäneet todennuksen, voimme aloittaa! Meidän finaali .gitlab-ci.yml näyttää tältä:
waypoint:
image: docker:latest
stage: build
services:
- docker:dind
# Define environment variables, e.g. `WAYPOINT_VERSION: '0.1.1'`
variables:
WAYPOINT_VERSION: ''
WAYPOINT_SERVER_ADDR: ''
WAYPOINT_SERVER_TOKEN: ''
WAYPOINT_SERVER_TLS: '1'
WAYPOINT_SERVER_TLS_SKIP_VERIFY: '1'
script:
- wget -q -O /tmp/waypoint.zip https://releases.hashicorp.com/waypoint/${WAYPOINT_VERSION}/waypoint_${WAYPOINT_VERSION}_linux_amd64.zip
- unzip -d /usr/local/bin /tmp/waypoint.zip
- rm -rf /tmp/waypoint*
- waypoint init
- waypoint build
- waypoint deploy
- waypoint releaseAloitamme kuvasta docker:latest ja aseta muutama Waypointin vaatima ympäristömuuttuja. Luvussa script lataamme uusimman Waypoint-suoritettavan tiedoston ja laitamme sen sisään /usr/local/bin. Koska juoksijamme on jo valtuutettu AWS:ssä, me yksinkertaisesti juoksemme waypoint init, build, deploy и release.
Rakennustehtävän tulos näyttää meille päätepisteen, jossa rullasimme sovelluksen:

Reittipiste yksi , jotka toimivat hyvin GitLabin kanssa. Sovelluksen toimittamisen lisäksi voimme esimerkiksi organisoida taustalla olevan infrastruktuurin . SDLC-suojauksen standardoimiseksi voimme myös ottaa käyttöön salaisuuksien ja tunnuksien hallintaan CI/CD-putkissa. Se tarjoaa täydellisen ratkaisun kehittäjille ja järjestelmänvalvojille, jotka luottavat salaiseen hallintaan kehitys-, testaus- ja tuotantokäyttöön.
HashiCorpin ja GitLabin yhteiset ratkaisut auttavat yrityksiä löytämään parhaan tavan kehittää sovelluksia varmistamalla johdonmukaisen toimitusketjun ja infrastruktuurin hallinnan. Waypoint on ottanut jälleen askeleen oikeaan suuntaan ja odotamme innolla projektin jatkokehitystä. Voit oppia lisää Waypointista myös tutustumisen arvoinen и hanke. Olemme lisänneet osaamistamme . Jos haluat kokeilla sitä itse, voit katsoa täydellisen toimintaesimerkin osoitteessa .
Voit ymmärtää CI / CD:n periaatteet, hallita kaikki Gitlab CI:n kanssa työskentelyn hienoisuudet ja aloittaa parhaiden käytäntöjen soveltamisen suorittamalla videokurssin . Liity nyt!
Lähde: will.com
