The Rise of Machines: Real World Applications of AI
Kunstig intelligens er ikke i fremtiden, det er her akkurat i nåtiden I denne bloggen Les hvordan kunstig intelligens-applikasjoner har påvirket ulike sektorer.
GoCD er et åpen kildekodesystem for kontinuerlig levering og automatisering. Den lar deg modellere komplekse arbeidsflyter ved å bruke dens parallelle og sekvensielle utførelse. Verdistrømkartet lar deg enkelt visualisere en kompleks arbeidsflyt. GoCD lar deg enkelt sammenligne to bygg og distribuere hvilken som helst versjon av applikasjonen du ønsker. GoCD-økosystemet består av GoCD-server og GoCD-agent. GoCD er ansvarlig for å kontrollere alt som å kjøre det nettbaserte brukergrensesnittet og administrere og gi jobber til agenten. Go-agenter er ansvarlige for å kjøre jobbene og distribusjonene.
For denne opplæringen vil vi bruke 192.168.1.1
som den offentlige IP-adressen og gocd.example.com
som domenenavnet som pekte mot Vultr-forekomsten. Sørg for å erstatte alle forekomster av eksempeldomenenavnet og IP-adressen med den faktiske.
Oppdater basissystemet ditt ved å bruke veiledningen Hvordan oppdatere Ubuntu 16.04 . Når systemet ditt har blitt oppdatert, fortsett å installere Java.
GoCD krever Java versjon 8 og støtter både Oracle Java og OpenJDK. Legg til Ubuntu-depotet for Oracle Java 8.
sudo add-apt-repository --yes ppa:webupd8team/java
sudo apt update
Installer Oracle Java.
sudo apt -y install oracle-java8-installer
Sjekk versjonen.
java -version
Du vil se følgende utgang.
user@vultr:~$ java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
Angi standardbanen for Java ved å installere følgende pakke.
sudo apt -y install oracle-java8-set-default
Du kan bekrefte om JAVA_HOME
er satt ved å kjøre.
echo $JAVA_HOME
Du vil se.
user@vultr:~$ echo $JAVA_HOME
/usr/lib/jvm/java-8-oracle
Hvis du ikke ser noen utgang i det hele tatt, må du logge ut fra gjeldende skall og logge på igjen.
Installer GoCDs offisielle depot i systemet.
echo "deb https://download.gocd.org /" | sudo tee /etc/apt/sources.list.d/gocd.list
curl https://download.gocd.org/GOCD-GPG-KEY.asc | sudo apt-key add -
sudo apt update
Installer GoCD-serveren i systemet ditt.
sudo apt install -y go-server
Start GoCD og aktiver den til å starte automatisk ved oppstart.
sudo systemctl start go-server
sudo systemctl enable go-server
Før vi får tilgang til GoCD-dashbordet, la oss lage en ny katalog for å lagre artefaktene. Artefakter kan lagres på samme disk som operativsystemet og applikasjonene er installert på. Alternativt kan du bruke en dedikert disk eller blokklagringsstasjon for å lagre artefaktene.
Hvis du ønsker å bruke den samme disken til å lagre artefaktene, er det bare å opprette en ny katalog og oppgi eierskapet til GoCD-brukeren.
sudo mkdir /opt/artifacts
sudo chown -R go:go /opt/artifacts
GoCD-programvaren anbefaler at du bruker en ekstra partisjon eller stasjon for å lagre artefaktene. I en kontinuerlig integrasjons- og leveringsplattform genereres artefakter veldig ofte. Diskplassen reduseres over tid når nye artefakter genereres kontinuerlig. På et tidspunkt vil systemet gå tom for ledig diskplass og tjenestene som kjører på systemet vil mislykkes. For å overvinne dette problemet kan du legge ved en ny Vultr-blokklagringsstasjon for å lagre artefaktene. Hvis du fortsatt ønsker å lagre gjenstander på samme stasjon, hopper du til delen "Konfigurer GoCD".
Distribuer en ny blokklagringsstasjon og koble den til GoCD-serverforekomsten. Opprett nå en ny partisjon på blokklagringsenheten.
sudo parted -s /dev/vdb mklabel gpt
sudo parted -s /dev/vdb unit mib mkpart primary 0% 100%
Opprett filsystemet på den nye disken.
sudo mkfs.ext4 /dev/vdb1
Monter blokklagringsstasjonen.
sudo mkdir /mnt/artifacts
sudo cp /etc/fstab /etc/fstab.backup
echo "
/dev/vdb1 /mnt/artifacts ext4 defaults,noatime 0 0" | sudo tee -a /etc/fstab
sudo mount /mnt/artifacts
Kjør nå, df
og du vil se den nye blokklagringsstasjonen montert på /mnt/artifacts
.
[user@vultr ~]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vda1 20616252 6313892 13237464 33% /
...
/dev/vdb1 10188052 36888 9610596 1% /mnt/artifacts
Gi eierskap til katalogen til GoCD-brukeren.
sudo chown -R go:go /mnt/artifacts
Nå kan du få tilgang til GoCD-dashbordet på http://192.168.1.1:8153
. For å få tilgang til GoCD-dashbordet på en sikker tilkobling, gå til https://192.168.1.1:8154
. Du vil få opp en feil som viser at sertifikatene ikke er gyldige. Du kan trygt ignorere feilen ettersom sertifikatene er selvsignerte. Av sikkerhetshensyn bør du alltid bruke dashbordet over en sikker tilkobling.
Før du setter opp en ny pipeline, naviger til " Admin >> Server Configuration
" fra den øverste navigasjonslinjen.
Skriv inn URL-en til det usikrede nettstedet i " Site URL
"-feltet og det sikrede nettstedet i " Secure Site URL
"-feltet.
Deretter oppgir du SMTP-serverdetaljer for å sende e-postvarsler fra GoCD.
Til slutt, oppgi banen til stedet der du ønsker å lagre gjenstandene. Hvis du har valgt å lagre artefaktene på samme disk som operativsystemet, skriv inn /opt/artifacts
; hvis du har valgt å legge til en blokklagringsstasjon, kan du angi /mnt/artifacts
.
Du kan også konfigurere GoCD til å automatisk slette de gamle artefaktene. Konfigurer det neste alternativet i henhold til diskstørrelsen din. Alternativet for automatisk sletting tar imidlertid ikke en sikkerhetskopi av dine gamle artefakter. For å ta en sikkerhetskopi manuelt og deretter slette de gamle artefaktene, deaktiver automatisk sletting ved å velge alternativet " Never
" for alternativet " Auto delete old artifacts
".
Du må starte GoCD-serveren på nytt slik at de nye endringene blir tatt i bruk.
sudo systemctl restart go-server
Som standard er ikke GoCD-dashbordet konfigurert til å bruke noen form for autentisering, men det støtter autentisering ved hjelp av en passordfil og LDAP. I denne opplæringen vil vi sette opp passordbasert autentisering.
Merk : Konfigurering av autentisering er et valgfritt trinn, men det anbefales sterkt for offentlige servere, som Vultr.
Installer Apache-verktøy slik at vi kan bruke htpasswd
kommandoen til å lage en kryptert passordfil.
sudo apt -y install apache2-utils
Lag en passordfil med htpasswd
kommandoen ved å bruke Bcrypt-kryptering.
sudo htpasswd -B -c /etc/go/passwd_auth goadmin
Oppgi passordet til brukeren to ganger. Du vil se følgende utgang.
[user@vultr ~]$ sudo htpasswd -B -c /etc/go/passwd_auth goadmin
New password:
Re-type new password:
Adding password for user goadmin
Du kan legge til så mange brukere du vil ved å bruke samme kommando ovenfor, men fjern -c
alternativet. Det -c
alternativet vil erstatte den eksisterende filen, erstatte gamle brukere med den nye brukeren.
sudo htpasswd -B /etc/go/passwd_auth gouser1
Nå som vi har opprettet passordfilen, får du tilgang til GoCD-dashbordet igjen. Naviger til " Admin >> Security >> Authorization Configurations
" fra den øverste navigasjonslinjen. Klikk på Add
knappen og oppgi eventuell ID. Velg " Password File Authentication Plugin for GoCD
" for plugin-ID og diriger banen til passordfilen. Klikk nå på " Check Connection
"-knappen for å bekrefte at GoCD kan bruke passordfilen for autentisering.
Til slutt lagrer du autentiseringsmetoden. Last inn dashbordet på nytt, og det vil automatisk logge deg ut. Du vil se en påloggingsskjerm nå. Logg på med legitimasjonen opprettet tidligere.
Du må promotere administratorbrukeren manuelt, ellers vil alle brukerne ha administratorrettigheter. Naviger til " Admin >> User Summary
" fra den øverste navigasjonslinjen.
Now select the admin user you've created and click on the "Roles
" drop-down. Promote the user to the only administrator by selecting the "Go System Administrator
" checkbox.
To add the users in GoCD created in the password file, click on the "ADD
" button and search for the user to add them. Users are also automatically added to the GoCD dashboard on their first login. Obviously, for users to log in, they must be added to the password file we have created earlier.
By default, GoCD listens to ports 8153
and 8154
on secure connections. Though port 8154
provides a secure connection to the application, it also displays browser errors as it uses a self-signed certificate. In this section of the tutorial, we will install and secure Nginx with a Let's Encrypt free SSL certificate. The Nginx web server will work as a reverse proxy to forward the incoming requests to GoCD's HTTP
endpoint.
Install Nginx.
sudo apt -y install nginx
Start Nginx and enable it to automatically start at boot time.
sudo systemctl start nginx
sudo systemctl enable nginx
Add the Certbot repository.
sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update
Install Certbot, which is the client application for Let's Encrypt CA.
sudo apt -y install certbot
Merk : For å få sertifikater fra Let's Encrypt CA, må domenet som sertifikatene skal genereres for, peke mot serveren. Hvis ikke, gjør de nødvendige endringene i DNS-postene til domenet og vent til DNS-en forplanter seg før du foretar sertifikatforespørselen igjen. Certbot sjekker domeneautoriteten før sertifikatene leveres.
Generer SSL-sertifikatene.
sudo certbot certonly --webroot -w /var/www/html -d gocd.example.com
De genererte sertifikatene blir sannsynligvis lagret i /etc/letsencrypt/live/gocd.example.com/
. SSL-sertifikatet vil bli lagret som fullchain.pem
og privat nøkkel vil bli lagret som privkey.pem
.
La oss kryptere sertifikater utløper om 90 dager, så det anbefales å sette opp automatisk fornyelse av sertifikatene ved hjelp av cron-jobber.
Åpne cron-jobbfilen.
sudo crontab -e
Legg til følgende linje på slutten av filen.
30 5 * * * /usr/bin/certbot renew --quiet
Cron-jobben ovenfor kjøres hver dag klokken 05.30. Hvis sertifikatet skal utløpe, vil det automatisk fornyes.
Opprett en ny konfigurasjonsfil for GoCD-nettgrensesnittet.
sudo nano /etc/nginx/sites-available/gocd
Fyll ut filen.
upstream gocd {
server 127.0.0.1:8153;
}
server {
listen 80;
server_name gocd.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name gocd.example.com;
ssl_certificate /etc/letsencrypt/live/gocd.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/gocd.example.com/privkey.pem;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/gocd.access.log;
location / {
proxy_pass http://gocd;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_redirect off;
}
location /go {
proxy_pass http://gocd/go;
proxy_http_version 1.1;
proxy_set_header Upgrade websocket;
proxy_set_header Connection upgrade;
proxy_read_timeout 86400;
}
}
Aktiver konfigurasjonsfilen.
sudo ln -s /etc/nginx/sites-available/gocd /etc/nginx/sites-enabled/gocd
Start Nginx-nettserveren på nytt for å implementere endringen i konfigurasjonen.
sudo systemctl restart nginx
Nå kan du få tilgang til GoCD-dashbordet på https://gocd.example.com
. Logg inn på dashbordet med administratorlegitimasjonen og naviger til " Admin >> Server Configuration
" fra den øverste navigasjonslinjen.
Sett " Site URL
" og " Secure Site URL
" til https://gocd.example.com
.
I GoCD kontinuerlig integrasjonsmiljø er GoCD-agenter arbeiderne som er ansvarlige for utførelsen av alle oppgavene. Når en endring i kilden oppdages, utløses rørledningen og jobbene tildeles tilgjengelige arbeidere for utførelse. Agenten utfører deretter oppgaven og rapporterer den endelige statusen etter utførelse.
For å kjøre en pipeline må minst én agent være konfigurert. Fortsett å installere GoCD-agenten på GoCD-serveren.
Siden vi allerede har importert GoCD-lageret til serveren, kan vi installere Go Agent direkte.
sudo apt install -y go-agent
Start nå GoCD-serveren og aktiver den til å starte automatisk ved oppstart.
sudo systemctl start go-agent
sudo systemctl enable go-agent
GoCD-agenten som kjører på den lokale verten blir automatisk aktivert når den oppdages.
Kunstig intelligens er ikke i fremtiden, det er her akkurat i nåtiden I denne bloggen Les hvordan kunstig intelligens-applikasjoner har påvirket ulike sektorer.
Er du også et offer for DDOS-angrep og forvirret over forebyggingsmetodene? Les denne artikkelen for å løse spørsmålene dine.
Du har kanskje hørt at hackere tjener mye penger, men har du noen gang lurt på hvordan tjener de den slags penger? la oss diskutere.
Vil du se revolusjonerende oppfinnelser fra Google og hvordan disse oppfinnelsene forandret livet til alle mennesker i dag? Les deretter til bloggen for å se oppfinnelser fra Google.
Konseptet med selvkjørende biler som skal ut på veiene ved hjelp av kunstig intelligens er en drøm vi har hatt en stund nå. Men til tross for flere løfter, er de ingen steder å se. Les denne bloggen for å lære mer...
Ettersom vitenskapen utvikler seg raskt og tar over mye av innsatsen vår, øker også risikoen for å utsette oss for en uforklarlig singularitet. Les hva singularitet kan bety for oss.
Lagringsmetodene for dataene har vært i utvikling kan være siden fødselen av dataene. Denne bloggen dekker utviklingen av datalagring på grunnlag av en infografikk.
Les bloggen for å kjenne ulike lag i Big Data Architecture og deres funksjoner på den enkleste måten.
I denne digitaldrevne verden har smarthusenheter blitt en avgjørende del av livet. Her er noen fantastiske fordeler med smarthusenheter om hvordan de gjør livet vårt verdt å leve og enklere.
Nylig lanserte Apple macOS Catalina 10.15.4 en tilleggsoppdatering for å fikse problemer, men det ser ut til at oppdateringen forårsaker flere problemer som fører til muring av mac-maskiner. Les denne artikkelen for å lære mer