A Concourse CI telepítése és konfigurálása Ubuntu 16.04 rendszeren

Bevezetés

A Continuous Integration egy DevOps szoftverfejlesztési gyakorlat, amely lehetővé teszi a fejlesztők számára, hogy a módosított kódot naponta többször egyesítsék a megosztott tárolóba. Minden egyesítés után automatikus összeállításokat és teszteket hajtanak végre a kóddal kapcsolatos problémák észlelésére. Lehetővé teszi a fejlesztők számára, hogy gyorsan megtalálják és kijavítsák a hibákat a szoftver minőségének javítása és a szoftver folyamatos szállítása érdekében. A Concourse-ról nagyon egyszerű az ide-oda váltás, mivel az összes konfigurációt deklaratív fájlokban tartja, amelyek ellenőrizhetők a verziókezelésben. Webes felhasználói felületet is biztosít, amely interaktívan jeleníti meg a build információkat.

Concourse komponensek.
  • Az ATC a Concourse fő összetevője. Felelős a webes felhasználói felület és az API futtatásáért. Ezenkívül gondoskodik az összes csővezeték ütemezéséről.
  • A TSA egy egyedi építésű SSH-kiszolgáló. Felelős a munkavállaló ATC-nél történő biztonságos regisztrálásáért.
  • A Workers két különböző szolgáltatást is működtet:
    1. A Garden egy konténer futtatókörnyezet és egy interfész a konténerek távolról történő összehangolásához egy dolgozón.
    2. A Baggageclaim egy gyorsítótár- és műtermék-kezelő szerver.
  • A Fly egy parancssori interfész, amely az ATC-vel való interakcióra szolgál a Concourse Pipelines konfigurálásához.

Előfeltételek

Feltétlenül cserélje le a tényleges Vultr nyilvános IP-címét és a tényleges domain nevét , 192.0.2.1 és minden előfordulását ci.example.com.

Frissítse alaprendszerét az Ubuntu 16.04 frissítése útmutató segítségével . A rendszer frissítése után folytassa a PostgreSQL telepítésével.

Telepítse és konfigurálja a PostgreSQL adatbázist

A PostgreSQL egy objektumrelációs adatbázisrendszer. A Concourse a folyamat adatait egy PostgreSQL adatbázisban tárolja. Adja hozzá a PostgreSQL-tárat.

echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt update

Telepítse a PostgreSQL adatbázis-kiszolgálót.

sudo apt -y install postgresql

Indítsa el a PostgreSQL-kiszolgálót, és engedélyezze, hogy rendszerindításkor automatikusan elinduljon.

sudo systemctl start postgresql
sudo systemctl enable postgresql

Módosítsa az alapértelmezett PostgreSQL-felhasználó jelszavát.

sudo passwd postgres

Jelentkezzen be PostgreSQL felhasználóként:

sudo su - postgres

Hozzon létre egy új PostgreSQL-felhasználót a Concourse CI-hez.

createuser concourse

Megjegyzés : Az alapértelmezett PostgreSQL-felhasználó használható az adatbázis hitelesítésére, de ajánlatos egy dedikált felhasználót használni a Concourse-adatbázis hitelesítéséhez egy éles telepítésben.

A PostgreSQL parancsértelmezőt biztosít a lekérdezések futtatásához az adatbázisban. Váltson a PostgreSQL rendszerhéjra.

psql

Állítson be jelszót az újonnan létrehozott Concourse adatbázis-felhasználó számára.

ALTER USER concourse WITH ENCRYPTED password 'DBPassword';

Fontos : Cserélje DBPassword ki erős jelszóra. Jegyezze fel a jelszót, mert az oktatóprogram későbbi részében szükség lesz rá.

Hozzon létre egy új adatbázist a Concourse számára.

CREATE DATABASE concourse OWNER concourse;

Lépjen ki a psql héjból.

\q

Váltás a sudo felhasználóra az aktuális postgresfelhasználóról.

exit

Töltse le és telepítse a Concourse CI-t

Töltse le a Concourse végrehajtható fájl legfrissebb verzióját, és tárolja /usr/bin , hogy közvetlenül végrehajtható legyen. A Concourse és Fly binárisok legújabb verziója a Concourse letöltési oldalán található . Nagyon gyakoriak az új kiadások. Cserélje ki az alábbi linket a legújabb verzióhoz tartozó új hivatkozásra.

sudo wget https://github.com/concourse/concourse/releases/download/v3.10.0/concourse_linux_amd64 -O /usr/bin/concourse

Hasonló módon töltse le a fly végrehajtható fájl legújabb verzióját, és tárolja a /usr/bin.

sudo wget https://github.com/concourse/concourse/releases/download/v3.10.0/fly_linux_amd64 -O /usr/bin/fly

A Fly a Concourse CI ATC API-jához való csatlakozáshoz használt parancssori interfész. A Fly több platformon is elérhető, például Linux, Windows és MacOS.

Rendeljen végrehajtási engedélyt a letöltött concourse és fly bináris fájlokhoz.

sudo chmod +x /usr/bin/concourse /usr/bin/fly

Ellenőrizze, hogy a Concourse és a Fly megfelelően működik-e a verziójuk ellenőrzésével.

concourse -version
fly -version

RSA kulcsok létrehozása és beállítása

Az RSA kulcspárok lehetőséget biztosítanak a Konkurzus összetevői közötti kommunikáció titkosítására.

A Concourse működéséhez legalább három kulcspárt kell generálni. A munkamenet adatainak titkosításához hozzon létre egy session_signing_key. Ezt a kulcsot a TSA az ATC-hez intézett kérések aláírására is használja. A TSA SSH-kiszolgáló biztosításához hozzon létre egy tsa_host_key. Végül generáljon egyet worker_key minden dolgozóhoz.

Hozzon létre egy új könyvtárat a Concourse CI-vel kapcsolatos kulcsok és konfigurációk tárolására.

sudo mkdir /opt/concourse

Állítsa elő a szükséges kulcsokat.

sudo ssh-keygen -t rsa -q -N '' -f /opt/concourse/session_signing_key
sudo ssh-keygen -t rsa -q -N '' -f /opt/concourse/tsa_host_key
sudo ssh-keygen -t rsa -q -N '' -f /opt/concourse/worker_key

Engedélyezze a dolgozók nyilvános kulcsát a tartalmának a authorized_worker_keys fájlba másolásával .

sudo cp /opt/concourse/worker_key.pub /opt/concourse/authorized_worker_keys

Konferencia indítása

A Concourse két különálló összetevőt biztosít, amelyeket el kell indítani: a webet és a dolgozót. Indítsa el a Concours webet.

sudo concourse web \
  --basic-auth-username admin \
  --basic-auth-password StrongPass \
  --session-signing-key /opt/concourse/session_signing_key \
  --tsa-host-key /opt/concourse/tsa_host_key \
  --tsa-authorized-keys /opt/concourse/authorized_worker_keys \
  --postgres-user=concourse \
  --postgres-password=DBPassword \
  --postgres-database=concourse \
  --external-url http://192.0.2.1:8080

basic-auth Ha szükséges, módosítsa a felhasználónevét és jelszavát . Győződjön meg arról, hogy a kulcsfájlok elérési útja helyes, és győződjön meg arról, hogy a felhasználónév és a jelszó helyes értéke van megadva a PostgreSQL adatbázis konfigurációjában.

Megjegyzés : Az ATC az alapértelmezett portot 8080 , a TSA pedig a portot figyeli 2222. Ha a hitelesítés nem kívánatos, --no-really-i-dont-want-any-authaz alapvető hitelesítési beállítások eltávolítása után adja át a lehetőséget.

A webszerver elindítása után a következő kimenet jelenik meg.

{"timestamp":"1503657859.661247969","source":"tsa","message":"tsa.listening","log_level":1,"data":{}}
{"timestamp":"1503657859.666907549","source":"atc","message":"atc.listening","log_level":1,"data":{"debug":"127.0.0.1:8079","http":"0.0.0.0:8080"}}

Egyelőre állítsa le a szervert, mert még néhány dolgot be kell állítani.

Indítsa el a Concourse CI Workert.

sudo concourse worker \
  --work-dir /opt/concourse/worker \
  --tsa-host 127.0.0.1 \
  --tsa-public-key /opt/concourse/tsa_host_key.pub \
  --tsa-worker-private-key /opt/concourse/worker_key

A fenti parancs feltételezi, hogy a TSA a localhost-on fut, és az alapértelmezett portra figyel 2222.

Bár a Concourse web és worker könnyen elindítható a fenti parancsokkal, a kiszolgáló kezeléséhez a Systemd használata javasolt.

Konfigurálja a környezetet és a Systemd szolgáltatást

A Systemd szolgáltatás használata az alkalmazás kezelésére biztosítja, hogy az alkalmazás hiba esetén és rendszerindításkor automatikusan elinduljon. A Concourse szerver nem vesz adatokat semmilyen konfigurációs fájlból, de hozzáférhet a környezeti változókból származó adatokhoz. A globális környezeti változók beállítása helyett hozzon létre egy új fájlt a környezeti változók tárolására, majd adja át a változókat a Concourse CI-nek a Systemd szolgáltatás segítségével.

Hozzon létre egy új környezetfájlt a Concourse web számára.

sudo nano /opt/concourse/web.env

Töltse fel a fájlt.

CONCOURSE_SESSION_SIGNING_KEY=/opt/concourse/session_signing_key
CONCOURSE_TSA_HOST_KEY=/opt/concourse/tsa_host_key
CONCOURSE_TSA_AUTHORIZED_KEYS=/opt/concourse/authorized_worker_keys

CONCOURSE_POSTGRES_USER=concourse
CONCOURSE_POSTGRES_PASSWORD=DBPassword
CONCOURSE_POSTGRES_DATABASE=concourse

CONCOURSE_BASIC_AUTH_USERNAME=admin
CONCOURSE_BASIC_AUTH_PASSWORD=StrongPass
CONCOURSE_EXTERNAL_URL=http://192.0.2.1:8080

Change the username and password of the BASIC_AUTH if desired. Make sure that the path to the key files are correct and make sure that the correct value for username and password in the PostgreSQL database configuration is provided.

Similarly, create an environment file for the worker.

sudo nano /opt/concourse/worker.env

Populate the file.

CONCOURSE_WORK_DIR=/opt/concourse/worker
CONCOURSE_TSA_WORKER_PRIVATE_KEY=/opt/concourse/worker_key
CONCOURSE_TSA_PUBLIC_KEY=/opt/concourse/tsa_host_key.pub
CONCOURSE_TSA_HOST=127.0.0.1

As the environment files contain usernames and passwords, change its permissions so that it cannot be accessed by other users.

sudo chmod 600 /opt/concourse/*.env

Now create a new user for Concourse to run the web environment. This will ensure that the web server is running in an isolated environment.

sudo useradd concourse

Give the concourse user ownership over Concourse CI file's directory.

sudo chown -R concourse:concourse /opt/concourse

Create a new systemd service file for the Concourse web service.

sudo nano /etc/systemd/system/concourse-web.service

Populate the file.

[Unit]
Description=Concourse CI web server

[Service]
Type=simple
User=concourse
Group=concourse
Restart=on-failure
EnvironmentFile=/opt/concourse/web.env
ExecStart=/usr/bin/concourse web
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=concourse_web

[Install]
WantedBy=multi-user.target

Save and close the file. Create a new service file for the Concourse worker service.

sudo nano /etc/systemd/system/concourse-worker.service

Populate the file.

[Unit]
Description=Concourse CI worker process

[Service]
Type=simple
Restart=on-failure
EnvironmentFile=/opt/concourse/worker.env
ExecStart=/usr/bin/concourse worker
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=concourse_worker

[Install]
WantedBy=multi-user.target

The web and worker service can now be started directly.

sudo systemctl start concourse-web concourse-worker

To enable the worker and web process to automatically start at boot time, run the following.

sudo systemctl enable concourse-worker concourse-web

To check the status of services, run the following.

sudo systemctl status concourse-worker concourse-web

If the service is not started, or in the FAILED state, remove the cache from the /tmp directory.

sudo rm -rf /tmp/*

Restart the services.

sudo systemctl restart concourse-worker concourse-web

Notice that this time the services have started correctly. The output upon verifying the status of the services will be similar to the following.

[user@vultr ~]$ sudo systemctl status concourse-worker concourse-web
● concourse-worker.service - Concourse CI worker process
   Loaded: loaded (/etc/systemd/system/concourse-worker.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2017-08-26 07:27:37 UTC; 55s ago
 Main PID: 3037 (concourse)
   CGroup: /system.slice/concourse-worker.service
           └─3037 /usr/bin/concourse worker

Aug 26 07:27:42 vultr.guest concourse_worker[3037]: {"timestamp":"1503732462.934722900","source":"tsa","message":"t...""}}
Aug 26 07:27:42 vultr.guest concourse_worker[3037]: {"timestamp":"1503732462.941227913","source":"guardian","messag...0"}}

...

● concourse-web.service - Concourse CI web server
   Loaded: loaded (/etc/systemd/system/concourse-web.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2017-08-26 07:27:37 UTC; 55s ago
 Main PID: 3036 (concourse)
   CGroup: /system.slice/concourse-web.service
           └─3036 /usr/bin/concourse web

Aug 26 07:27:57 vultr.guest concourse_web[3036]: {"timestamp":"1503732477.925554752","source":"tsa","message":"tsa...ve"}}
Aug 26 07:28:02 vultr.guest concourse_web[3036]: {"timestamp":"1503732482.925430775","source":"tsa","message":"tsa...ve"}}
...
Hint: Some lines were ellipsized, use -l to show in full.

Connecting to the Server

Once the server is started, the web interface of the Concourse CI can be accessed by going to http://192.0.2.1:8080 in any browser. Log in using the username and password provided in the environment file.

To connect to the server using Fly, run the following.

fly -t my-ci login -c http://192.0.2.1:8080

The above command is used for the initial login to the server. -t is used to provide a target name. replace my-ci with any desired target name. The above command will log in to the default team main. It will ask for the username and password provided in the environment file.

The output will look like the following.

[user@vultr ~]$ fly -t my-ci login -c http://192.0.2.1:8080
logging in to team 'main'

username: admin
password:

target saved

The target login will be saved for a day. After that, it will expire.

To log out immediately.

fly -t my-ci logout

Fly can be used to login to the server outside of the network, but only if the server has a public IP address and it is accessible from outside the network. The Windows or MacOS binary can be downloaded from the download site or from the web UI of the server.

Setting Up Nginx Reverse Proxy

A bejelentkezések és a webes UI-n keresztül a Concourse-kiszolgálóhoz küldött egyéb információk nem védettek. A kapcsolat nincs titkosítva. Egy Nginx fordított proxy beállítható egy Let's Encrypt ingyenes SSL-lel.

Telepítse az Nginx-et.

sudo apt -y install nginx

Indítsa el az Nginx-et, és engedélyezze, hogy rendszerindításkor automatikusan elinduljon.

sudo systemctl start nginx
sudo systemctl enable nginx

Adja hozzá a Certbot adattárat.

sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update

Telepítse a Certbotot, amely a Let's Encrypt CA ügyfélalkalmazása.

sudo apt -y install certbot

Megjegyzés : A Let's Encrypt CA-tól tanúsítványok beszerzéséhez a tartományt, amelyhez a tanúsítványokat elő kell állítani, a szerver felé kell mutatni. Ha nem, hajtsa végre a szükséges módosításokat a tartomány DNS-rekordjain, és várja meg, amíg a DNS továbbterjed, mielőtt ismét kérelmet küldene. A Certbot a tanúsítványok kiadása előtt ellenőrzi a tartományi hatóságot.

Hozza létre az SSL-tanúsítványokat.

sudo certbot certonly --webroot -w /var/www/html -d ci.example.com

A generált tanúsítványok valószínűleg a /etc/letsencrypt/live/ci.example.com/ könyvtárban lesznek tárolva . Az SSL-tanúsítvány a következőként lesz tárolva, fullchain.pem a privát kulcs pedig mint privkey.pem.

A Let's Encrypt tanúsítványok 90 napon belül lejárnak, ezért javasolt a tanúsítványok automatikus megújítása a cronjobs használatával. A Cron egy rendszerszolgáltatás, amelyet időszakos feladatok futtatására használnak.

Nyissa meg a cron feladatfájlt.

sudo crontab -e

Adja hozzá a következő sort a fájl végéhez.

30 5 * * * /usr/bin/certbot renew --quiet

A fenti cron-feladat minden nap 5:30-kor indul. Ha a tanúsítvány lejárt, az automatikusan megújul.

Hozzon létre egy új virtuális gazdagépet.

sudo nano /etc/nginx/sites-available/concourse

Töltse fel a fájlt.

server {
    listen 80;
    server_name ci.example.com;
    return 301 https://$host$request_uri;
}
server {

    listen 443;
    server_name ci.example.com;

    ssl_certificate           /etc/letsencrypt/live/ci.example.com/fullchain.pem;
    ssl_certificate_key       /etc/letsencrypt/live/ci.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/concourse.access.log;

    location / {

      proxy_set_header        Host $host;
      proxy_set_header        X-Real-IP $remote_addr;
      proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header        X-Forwarded-Proto $scheme;
      proxy_pass          http://localhost:8080;
      proxy_read_timeout  90;

      proxy_redirect      http://localhost:8080 https://ci.example.com;
    }
  }

Megjegyzés : Cserélje ci.example.com ki a tényleges tartományra.

Aktiválja a konfigurációs fájlt.

sudo ln -s /etc/nginx/sites-available/concourse /etc/nginx/sites-enabled/concourse

Szerkessze a Concours Web számára létrehozott környezetfájlt.

sudo nano /opt/concourse/web.env

Módosítsa az értékét, CONCOURSE_EXTERNAL_URL és adjon hozzá még két sort a fájl végéhez.

CONCOURSE_EXTERNAL_URL=https://ci.example.com
CONCOURSE_BIND_IP=127.0.0.1
CONCOURSE_BIND_PORT=8080

Mentse el a fájlt, és indítsa újra a Concourse Web, Worker és Nginx alkalmazást.

sudo systemctl restart concourse-worker concourse-web nginx

A böngészőbe és a böngészőből küldött összes adat mostantól SSL titkosítással védett.


A Jenkins telepítése a CentOS 7 rendszeren

A Jenkins telepítése a CentOS 7 rendszeren

A Jenkins egy népszerű nyílt forráskódú CI (Continuous Integration) eszköz, amelyet széles körben használnak projektfejlesztésre, telepítésre és automatizálásra. Ez a cikk lesz

A Concourse CI telepítése és konfigurálása Ubuntu 16.04 rendszeren

A Concourse CI telepítése és konfigurálása Ubuntu 16.04 rendszeren

Más rendszert használ? Bevezetés A Continuous Integration egy DevOps szoftverfejlesztési gyakorlat, amely lehetővé teszi a fejlesztők számára, hogy gyakran egyesítsék

Az Ansible telepítése és konfigurálása Debian 9 rendszeren Windows Serverrel való használatra

Az Ansible telepítése és konfigurálása Debian 9 rendszeren Windows Serverrel való használatra

Más rendszert használ? Az Ansible egy nyílt forráskódú eszköz a feladatok automatizálására. Ez kezeli a Linux és Windows szerverek konfigurációját. Működik

A GoCD telepítése és konfigurálása CentOS 7 rendszeren

A GoCD telepítése és konfigurálása CentOS 7 rendszeren

Más rendszert használ? A GoCD egy nyílt forráskódú, folyamatos szállítási és automatizálási rendszer. Lehetővé teszi összetett munkafolyamatok modellezését a párhuzamos an

A SaltStack használata a pillérekkel az Ubuntu 17.04-en

A SaltStack használata a pillérekkel az Ubuntu 17.04-en

Míg a SaltStack nagyszerű eszköz a műveletek egyidejű futtatására több szerveren, támogatja a gazdagépenként definiált konfigurációs előbeállításokat is.

Az Ansible telepítése és konfigurálása a CentOS 7 rendszeren Windows Serverrel való használatra

Az Ansible telepítése és konfigurálása a CentOS 7 rendszeren Windows Serverrel való használatra

Más rendszert használ? Az Ansible egy nyílt forráskódú eszköz a feladatok automatizálására. Ez kezeli a Linux és Windows szerverek konfigurációját. Működik

A Drone CI telepítése Ubuntu 18.04-re

A Drone CI telepítése Ubuntu 18.04-re

Bevezetés A Drone egy automatizált, folyamatos tesztelési és szállítási platform, amely az Ön saját infrastruktúráján fut. A drone bármilyen nyelvet, szolgáltatást támogat

Vultr terheléselosztók

Vultr terheléselosztók

Mi az a Load Balancer A terheléselosztók az alkalmazás előtt ülnek, és elosztják a bejövő forgalmat az alkalmazás több példánya között. Fo

A Foreman telepítése a CentOS 7 rendszeren

A Foreman telepítése a CentOS 7 rendszeren

Más rendszert használ? A Foreman egy ingyenes és nyílt forráskódú eszköz, amely segít a fizikai és virtuális szerverek konfigurációjában és kezelésében. Forema

A SaltStack telepítése CentOS 7 rendszeren

A SaltStack telepítése CentOS 7 rendszeren

A SaltStack vagy a Salt egy népszerű nyílt forráskódú konfigurációkezelési megoldás, amely távoli végrehajtás, konfigurációkezelés, kódolás megvalósítására használható.

A Strider CD telepítése Ubuntu 18.04-re

A Strider CD telepítése Ubuntu 18.04-re

Bevezetés A Strider CD egy nyílt forráskódú, folyamatos telepítésű platform. Az alkalmazás Node.js-ben íródott, és a MongoDB-t használja tárolási háttérként. Lépés

A Chocolatey Package Manager használata Windows rendszeren

A Chocolatey Package Manager használata Windows rendszeren

Bevezetés A Chocolatey olyan csomagkezelést kínál, amely megkönnyíti a szoftverek és függőségek adminisztrálását Linuxon a Windows rendszeren. Gyorsan és egyszerűen meg tudod csinálni

Pillanatképek készítése a Packerrel

Pillanatképek készítése a Packerrel

Mi az a Packer? A Packer egy szerver képalkotó eszköz, amelyet a HashiCorp fejlesztett ki. Szerver képalkotás; vagy változatlan infrastruktúra; népszerű alternatíva

A Concourse CI telepítése és konfigurálása CentOS 7 rendszeren

A Concourse CI telepítése és konfigurálása CentOS 7 rendszeren

Más rendszert használ? Bevezetés A Continuous Integration egy DevOps szoftverfejlesztési gyakorlat, amely lehetővé teszi a fejlesztők számára, hogy gyakran egyesítsék

A Chef-solo használata a Django alkalmazás konfigurálásához Ubuntun

A Chef-solo használata a Django alkalmazás konfigurálásához Ubuntun

A dobozok beállításának és konfigurálásának folyamatát számos módon automatizálhatjuk. Bármilyen okból, ha az egész rendszerünk ezen a ponton csak

A Foreman telepítése Ubuntu 16.04 LTS-re

A Foreman telepítése Ubuntu 16.04 LTS-re

Más rendszert használ? A Foreman egy ingyenes és nyílt forráskódú eszköz, amely segít a fizikai és virtuális szerverek konfigurációjában és kezelésében. Forema

A SaltStack első lépései az Ubuntu 17.04-en

A SaltStack első lépései az Ubuntu 17.04-en

A SaltStack egy python alapú konfigurációkezelő program, amely a konfigurációs fájlok, a telepítések és bármi más automatizálására van optimalizálva.

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

Az Apple a közelmúltban kiadott egy kiegészítést a macOS Catalina 10.15.4-hez a problémák megoldására, de úgy tűnik, hogy a frissítés több problémát okoz, ami a Mac gépek blokkolásához vezet. További információért olvassa el ezt a cikket