GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nastavit Openshift Origin na CentOS 7

OpenShift Origin je open source upstream projekt, který pohání OpenShift, platformu kontejnerových aplikací společnosti Red Hat. Poskytuje podporu pro Python, PHP, Perl, Node.js, Ruby a Java a je rozšiřitelný, takže uživatelé mohou přidat podporu pro další jazyky. Prostředky přidělené aplikacím lze automaticky nebo ručně škálovat podle potřeby tak, aby při rostoucí poptávce nedocházelo ke snižování výkonu. OpenShift poskytuje přenositelnost prostřednictvím rozhraní DeltaCloud API, takže zákazníci mohou migrovat nasazení do prostředí jiných dodavatelů cloud computingu. OpenShift je poskytován využitím Dockeru a Kubernetes, což vám dává možnost mít vlastní, opakovaně použitelné obrázky aplikací. OpenShift je navržen jako vysoce dostupná a škálovatelná aplikační platforma. Při správné konfiguraci může rozsáhlé nasazení OpenShift nabídnout snadný způsob, jak škálovat vaši aplikaci, když se požadavky zvyšují, a přitom zajistit nulové prostoje. Se shlukem hostitelů OpenShift na více místech datových center můžete přežít pád celého datového centra.

V tomto článku vám ukážeme jeho instalaci a konfiguraci na samostatném serveru CentOS 7 s minimálním počtem nainstalovaných balíčků.

Předpoklady

Ve vysoce dostupném clusteru OpenShift Origin s externím etcd by měl mít hlavní hostitel 1 jádro CPU a 1,5 GB paměti je vyžadováno pro každých 1000 modulů. Proto by doporučená velikost hlavního hostitele v clusteru OpenShift Origin s 2000 moduly byla 2 jádra CPU a 3 GB RAM, navíc k minimálním požadavkům na hlavního hostitele se 2 jádry CPU a 16 GB RAM.

OpenShift Origin vyžaduje v prostředí plně funkční DNS server. V ideálním případě jde o samostatného hostitele se softwarem DNS a může poskytovat překlad názvů hostitelům a kontejnerům běžícím na platformě. Pojďme nastavit DNS pro vyřešení vašeho hostitele a nastavit FQDN s doménou na vašich VM.

Nakonfigurujte SELINUXTYPE=targeted v souboru '/etc/selinux/config', pokud to ještě není provedeno, protože Security-Enhanced Linux (SELinux) musí být povolen na všech serverech před instalací OpenShift Origin, jinak se instalace nezdaří.

# vi /etc/selinux/config

Ujistěte se, že aktualizujete svůj systém nejnovějšími aktualizacemi a bezpečnostními záplatami pomocí následujícího příkazu.

# yum update -y

Instalace Dockeru

Máme tři možnosti, jak nainstalovat OpenShift, které jsou curl-to-shell, přenosný instalátor nebo instalace ze zdroje. V tomto článku nainstalujeme OpenShift Origin ze zdroje pomocí Dockeru.

Spusťte níže uvedený příkaz a nainstalujte Docker spolu s některými dalšími závislostmi potřebnými k provedení tohoto nastavení, jako je editor 'vim' a utilita 'wget', pokud ještě nejsou ve vašem systému nainstalovány.

# yum install docker wget vim -y

Po dokončení instalace jej musíme nakonfigurovat tak, aby důvěřoval registru, který budeme používat pro obrazy OpenShift otevřením souboru '/etc/sysconfig/docker' ve vašem editoru příkazového řádku.

# vim /etc/sysconfig/docker
# INSECURE_REGISTRY='--insecure-registry'
NSECURE_REGISTRY='--insecure-registry 192.168.0.0/16'

Uložte a zavřete konfigurační soubor a restartujte službu docker pomocí níže uvedeného příkazu.

# systemctl restart docker.service

Nainstalujte a nakonfigurujte Openshift

Jakmile budeme mít službu docker zprovozněnou a spuštěnou, nyní nastavíme OpenShift tak, aby běžel jako samostatný proces spravovaný systemd. Spusťte níže uvedený příkaz a stáhněte si binární soubory OpenShift z GitHubu do adresáře '/tmp'.

# cd /tmp
# wget https://github.com/openshift/origin/releases/download/v1.4.1/openshift-origin-server-v1.4.1-3f9807a-linux-64bit.tar.gz

Poté rozbalte balíček a změňte adresář na extrahovanou složku, abyste přesunuli všechny binární soubory do adresáře '/usr/local/sbin'.

# tar -zxf openshift-origin-server-*.tar.gz
# cd openshift-origin-server-v1.4.1+3f9807a-linux-64bit/
# mv k* o* /usr/local/sbin/

Dále vytvoříme spouštěcí skript a soubor systemd unit umístěním našich veřejných a soukromých IP adres.

# vim /usr/local/bin/start_openshift.sh
#!/bin/bash
cd /opt/openshift/
openshift start --public-master='https://:8443' --master='https://:8443'

Uložte a zavřete soubor a poté vložte následující obsah do nově vytvořeného souboru v systemd.

# vim /etc/systemd/system/openshift.service
[Unit]
Description=OpenShift Origin Server

[Service]
Type=simple
ExecStart=/usr/local/bin/start_openshift.sh

To je vše, nyní soubor uložte a změňte oprávnění tohoto souboru, aby byl spustitelný, a poté načtěte nový soubor jednotky, aby mohl být funkční.

# chmod u+x /usr/local/bin/start_openshift.sh
# mkdir /opt/openshift/
# systemctl daemon-reload

Po opětovném načtení démona spusťte službu Openshift pomocí příkazu níže a potvrďte, zda je její stav aktivní.

# systemctl start openshift
# systemctl status openshift

Nyní je služba Openshift spuštěna a pro vzdálenou správu instalace OpenShift a přístup k jejím aplikacím je třeba otevřít porty TCP 80, 443 a 8443 ve vašem firewallu.

# firewall-cmd --zone=public --add-port=80/tcp
# firewall-cmd --zone=public --add-port=443/tcp
# firewall-cmd --zone=public --add-port=8443/tcp

Přidání směrovače Openshift a registru

Nyní musíme nainstalovat router OpenShift, aby mohl obsluhovat aplikace přes veřejnou IP adresu. OpenShift používá registr Docker k ukládání obrazů Docker pro snadnější správu životního cyklu vaší aplikace a směrovač směruje požadavky do konkrétních aplikací na základě jejich doménových jmen. Nejprve tedy musíme nástrojům CLI sdělit, kde jsou naše nastavení a certifikát CA, aby ověřily náš nový cluster OpenShift.

Přidejme následující řádky do '/root/.bashrc', aby se načetly, když přepneme na uživatele root.

# export KUBECONFIG=/opt/openshift/openshift.local.config/master/admin.kubeconfig
# export CURL_CA_BUNDLE=/opt/openshift/openshift.local.config/master/ca.crt

Chcete-li aktualizovat nastavení, znovu načtěte soubor .bashrc.

# source /root/.bashrc

Poté použijte níže uvedený příkaz pro přihlášení do clusteru.

# oc login -u system:admin
Logged into "https://YOUR_SERVER_IP:8443" as "system:admin" using existing credentials.

You have access to the following projects and can switch between them with 'oc project ':

* default
kube-system
openshift
openshift-infra

Using project "default".

Úspěšně jsme přidali router a nyní pro přidání registru použijte příkazy uvedené níže.

# oadm policy add-scc-to-user hostnetwork -z router
# oadm router
info: password for stats user admin has been set to s0iOOpIcnW
--> Creating router router ...
serviceaccount "router" created
clusterrolebinding "router-router-role" created
deploymentconfig "router" created
service "router" created
--> Success
# oadm registry
--> Creating registry registry ...
serviceaccount "registry" created
clusterrolebinding "registry-registry-role" created
deploymentconfig "docker-registry" created
service "docker-registry" created
--> Success

Přístup k Openshift Origin

Instalace OpenShift je nyní dokončena. Své nasazení OpenShift můžete otestovat návštěvou následující adresy URL ve webovém prohlížeči.

https://your_servers_ip:8443

Budete vyzváni s přihlašovací obrazovkou OpenShift. Ve výchozím nastavení vám OpenShift umožňuje přihlásit se pomocí libovolné kombinace uživatelského jména a hesla a automaticky vám vytvoří účet. Poté budete mít přístup k vytváření projektů a aplikací. Vytvoříme účet s uživatelským jménem 'ks', jak je uvedeno.

Vytvoření nového projektu v Openshift

Po úspěšném přihlášení budete vyzváni k vytvoření nového projektu. Projekty obsahují jednu nebo více aplikací, které spolu souvisí. Pojďme vytvořit testovací projekt, abychom mohli nasadit naši první aplikaci.

Dále pojmenujte nový projekt s jeho zobrazovaným názvem a krátkým popisem.

Po vytvoření našeho nového projektu se zobrazí další obrazovka „Přidat do projektu“, kde můžeme přidat obrázky aplikací do OpenShift, abychom je připravili k nasazení. V tomto případě nasadíme existující obrázek kliknutím na kartu „Nasadit obrázek“. Protože OpenShift používá Docker, umožní nám to stáhnout obrázek přímo z Docker Hub nebo jakéhokoli jiného registru.

K testování použijeme obrázek 'openshift/hello-openshift' tak, že jej zadáme do pole „Název obrázku“, jak je znázorněno na obrázku níže.

Klikněte na ikonu vyhledávání, přímo na název obrázku a poté klikněte na tlačítko 'Vytvořit' ve spodní části s výchozími možnostmi se základním obrázkem bez nutnosti další konfigurace.

Kliknutím na Přehled projektu zkontrolujte stav své aplikace.

Vytvoření nové trasy

Nyní vytvoříme novou cestu ke zpřístupnění našich aplikací prostřednictvím routeru OpenShift, který jsme vytvořili dříve. Chcete-li tak učinit, klikněte na nabídku „Aplikace“ vlevo a poté přejděte na Trasy.

Směrování je způsob, jak zviditelnit vaši aplikaci. Jakmile kliknete na tlačítko 'Vytvořit trasu', musíte zadat následující informace obsahující jedinečný název projektu, název hostitele a cestu, kterou router sleduje, aby směroval provoz do služby.

Poté OpenShift vygeneruje název hostitele, který se použije pro přístup k vaší aplikaci. Je třeba vytvořit záznam se zástupným znakem A ve vašem DNS, abyste umožnili automatické směrování všech aplikací do vašeho clusteru OpenShift při nastavování v produkci.

*.openshift.yourdomain.com A

Přidejte vygenerovaný název hostitele do svého místního souboru hostitelů pro testování v Linuxu '/etc/hosts' ve Windows 'C:\WINDOWS\system32\drivers\etc\hosts'.

Přidání nové aplikace do Openshift Origin

OpenShift Origin poskytuje nástroje pro spouštění sestavení a také vytváření zdrojového kódu z předdefinovaných obrazů tvůrců prostřednictvím nástroje Source-to-Image. Chcete-li vytvořit novou aplikaci, která kombinuje bitovou kopii tvůrce pro Node.js s ukázkovým zdrojovým kódem pro vytvoření nového nasaditelného obrazu Node.js, spusťte po připojení k administrativnímu uživateli a změně na výchozí projekt následující příkaz.

# oc new-app openshift/nodejs-010-centos7~https://github.com/openshift/nodejs-ex.git
--> Found Docker image b3b1ce7 (3 months old) from Docker Hub for "openshift/nodejs-010-centos7"

Node.js 0.10
------------
Platform for building and running Node.js 0.10 applications

Tags: builder, nodejs, nodejs010

* An image stream will be created as "nodejs-010-centos7:latest" that will track the source image
* A source build using source code from https://github.com/openshift/nodejs-ex.git will be created
* The resulting image will be pushed to image stream "nodejs-ex:latest"
* Every time "nodejs-010-centos7:latest" changes a new build will be triggered
* This image will be deployed in deployment config "nodejs-ex"
* Port 8080/tcp will be load balanced by service "nodejs-ex"
* Other containers can access this service through the hostname "nodejs-ex"

--> Creating resources ...
imagestream "nodejs-010-centos7" created
imagestream "nodejs-ex" created
buildconfig "nodejs-ex" created
deploymentconfig "nodejs-ex" created
service "nodejs-ex" created
--> Success
Build scheduled, use 'oc logs -f bc/nodejs-ex' to track its progress.
Run 'oc status' to view your app.

Sestavení se spustí automaticky pomocí poskytnutého obrazu a nejnovějšího potvrzení do hlavní větve poskytnutého úložiště Git. Chcete-li získat stav sestavení, spusťte příkaz níže.

# oc status

Můžete vidět více o příkazech dostupných v CLI.

#oc help

Nyní byste měli být schopni zobrazit svou testovací aplikaci otevřením odkazu vygenerovaného Openshift ve vašem webovém prohlížeči. Stav svých nově nasazených aplikací můžete také zobrazit z webové konzole Openshift.

Kliknutím na kteroukoli nainstalovanou aplikaci zobrazíte další podrobnosti o IP, trasách a portech služeb.

Závěr

V tomto článku jsme úspěšně nainstalovali a nakonfigurovali jednoserverové prostředí Openshift Origin na CentOS 7.2. OpenShift přidává nad Kubernetes nástroje pro vývojáře a operace, které umožňují rychlý vývoj aplikací, snadné nasazení a škálování a dlouhodobou údržbu životního cyklu pro malé i velké týmy. Jedná se o centralizovanou správu a správu celého zásobníku, týmu nebo organizace. Vytvářejte opakovaně použitelné šablony pro součásti vašeho systému a v průběhu času je interaktivně nasazujte. Řízeným způsobem zavádějte úpravy softwarových balíků do celé vaší organizace. Integrace s vašimi stávajícími ověřovacími mechanismy, včetně LDAP, Active Directory a veřejných poskytovatelů OAuth, jako je GitHub.


Cent OS
  1. Jak nastavit SFTP server na CentOS

  2. Jak nastavit Textpattern CMS na CentOS 8

  3. Jak nastavit server NFS na CentOS 7 / RHEL 7

  1. Jak nastavit Icinga Web 2 na CentOS 7 / RHEL 7

  2. Jak nastavit Firewall pomocí FirewallD na CentOS 8

  3. Jak nastavit replikaci MySQL na CentOS

  1. Jak nastavit server NFS na CentOS 8 / RHEL 8

  2. Jak nastavit SysLog Server na CentOS 7 / RHEL 7

  3. Jak nastavit klíče SSH na CentOS 8