GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come configurare l'origine di Openshift su CentOS 7

OpenShift Origin è il progetto upstream open source che alimenta OpenShift, la piattaforma di applicazioni container di Red Hat. Fornisce supporto per Python, PHP, Perl, Node.js, Ruby e Java ed è estensibile in modo che gli utenti possano aggiungere il supporto per altri linguaggi. Le risorse allocate per le applicazioni possono essere ridimensionate automaticamente o manualmente in base alle esigenze in modo che all'aumentare della domanda non vi sia alcun degrado delle prestazioni. OpenShift fornisce la portabilità tramite l'API DeltaCloud in modo che i clienti possano migrare le implementazioni ad altri ambienti di fornitori di cloud computing. OpenShift è fornito sfruttando Docker e Kubernetes, dandoti la possibilità di avere immagini dell'applicazione personalizzate e riutilizzabili. OpenShift è progettato per essere una piattaforma applicativa scalabile e ad alta disponibilità. Se configurata correttamente, un'ampia distribuzione OpenShift può offrire un modo semplice per ridimensionare l'applicazione quando le richieste aumentano, fornendo al contempo zero tempi di inattività. Con un cluster di host OpenShift in più posizioni di data center, puoi sopravvivere a un intero data center che non funziona.

In questo articolo ti mostreremo la sua installazione e configurazione su un server CentOS 7 autonomo con pacchetti minimi installati su di esso.

Prerequisiti

In un cluster OpenShift Origin ad alta disponibilità con etcd esterno, un host master dovrebbe avere 1 core CPU e sono necessari 1,5 GB di memoria per ogni 1000 pod. Pertanto, la dimensione consigliata dell'host master in un cluster OpenShift Origin di 2000 pod sarebbe 2 core CPU e 3 GB di RAM, oltre ai requisiti minimi per un host master di 2 core CPU e 16 GB di RAM.

OpenShift Origin richiede un server DNS completamente funzionante nell'ambiente. Si tratta idealmente di un host separato che esegue software DNS e può fornire la risoluzione dei nomi a host e contenitori in esecuzione sulla piattaforma. Impostiamo il DNS per risolvere il tuo host e configuriamo l'FQDN con il dominio sulle tue VM.

Configurare SELINUXTYPE=targeted nel file '/etc/selinux/config', se non è già stato fatto, perché Security-Enhanced Linux (SELinux) deve essere abilitato su tutti i server prima di installare OpenShift Origin altrimenti l'installazione non andrà a buon fine.

# vi /etc/selinux/config

Assicurati di aggiornare il tuo sistema con gli ultimi aggiornamenti e patch di sicurezza utilizzando il comando seguente.

# yum update -y

Installazione di Docker

Abbiamo tre opzioni per installare OpenShift che sono curl-to-shell, un programma di installazione portatile o l'installazione dal sorgente. In questo articolo installeremo OpenShift Origin dal sorgente utilizzando Docker.

Esegui il comando seguente per installare Docker insieme ad alcune altre dipendenze necessarie per eseguire questa configurazione come l'editor 'vim' e l'utilità 'wget' se non è già installato sul tuo sistema.

# yum install docker wget vim -y

Una volta completata l'installazione, dobbiamo configurarla per considerare attendibile il registro che utilizzeremo per le immagini OpenShift aprendo il file '/etc/sysconfig/docker' nell'editor della riga di comando.

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

Salva e chiudi il file di configurazione e riavvia il servizio Docker utilizzando il comando seguente.

# systemctl restart docker.service

Installa e configura Openshift

Una volta che abbiamo un servizio docker attivo e funzionante, ora configureremo OpenShift per l'esecuzione come processo autonomo gestito da systemd. Eseguiamo il comando seguente per scaricare i binari di OpenShift da GitHub nella directory '/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

Quindi estrai il pacchetto e cambia la directory nella cartella estratta per spostare tutti i file binari nella directory '/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/

Successivamente, creeremo uno script di avvio e un file di unità di sistema inserendo i nostri indirizzi IP pubblici e privati.

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

Salva e chiudi il file, quindi inserisci i seguenti contenuti nel file appena creato in systemd.

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

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

Ecco fatto, ora salva il file e modifica i permessi di questo file per renderlo eseguibile, quindi carica il nuovo file unit in modo che possa essere funzionante.

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

Dopo aver ricaricato il demone, avvia il servizio Openshift utilizzando il comando seguente e conferma se il suo stato è attivo.

# systemctl start openshift
# systemctl status openshift

Ora il servizio Openshift è attivo e funzionante, per gestire l'installazione di OpenShift in remoto e accedere alle sue applicazioni, è necessario aprire le porte TCP 80, 443 e 8443 nel firewall.

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

Aggiunta di router e registro Openshift

Ora dobbiamo installare un router OpenShift, in modo che possa servire app tramite l'indirizzo IP pubblico. OpenShift utilizza un registro Docker per archiviare le immagini Docker per una gestione più semplice del ciclo di vita dell'applicazione e il router indirizza le richieste ad app specifiche in base ai loro nomi di dominio. Quindi, prima dobbiamo dire agli strumenti della CLI dove si trovano le nostre impostazioni e il certificato CA, per autenticare il nostro nuovo cluster OpenShift.

Aggiungiamo le seguenti righe a '/root/.bashrc' in modo che vengano caricate quando passiamo all'utente root.

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

Ricarica '.bashrc' per aggiornare le impostazioni.

# source /root/.bashrc

Quindi usa il comando seguente per accedere al cluster.

# 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".

Abbiamo aggiunto con successo un router e ora per aggiungere un registro, usa i comandi come mostrato di seguito.

# 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

Accesso all'origine di Openshift

L'installazione di OpenShift è ora completa. Puoi testare la tua distribuzione OpenShift visitando il seguente URL in un browser web.

https://your_servers_ip:8443

Ti verrà chiesto con una schermata di accesso OpenShift. Per impostazione predefinita, OpenShift ti consente di accedere con qualsiasi combinazione di nome utente e password e crea automaticamente un account per te. Avrai quindi accesso per creare progetti e app. Creeremo un account con il nome utente 'ks' come mostrato.

Creazione di un nuovo progetto in Openshift

Dopo aver effettuato correttamente l'accesso, ti verrà chiesto di creare un nuovo progetto. I progetti contengono una o più app correlate. Creiamo un progetto di prova in modo da poter distribuire la nostra prima app.

Quindi dai un nome al nuovo progetto con il suo nome visualizzato e una breve descrizione.

Dopo aver creato il nostro nuovo progetto, la schermata successiva che vedrai è la schermata "Aggiungi al progetto" in cui possiamo aggiungere le immagini delle nostre applicazioni a OpenShift per prepararle per la distribuzione. In questo caso, distribuiremo un'immagine esistente facendo clic sulla scheda "Distribuisci immagine". Poiché OpenShift utilizza Docker, questo ci consentirà di estrarre un'immagine direttamente da Docker Hub o da qualsiasi altro registro.

Per testare, useremo l'immagine 'openshift/hello-openshift' inserendola nel campo "Nome immagine" come mostrato nell'immagine qui sotto.

Fare clic sull'icona di ricerca, a destra del nome dell'immagine e quindi fare clic sul pulsante "Crea" in basso con le opzioni predefinite con l'immagine di base senza alcuna configurazione aggiuntiva richiesta.

Fai clic su Panoramica del progetto per verificare lo stato della tua domanda.

Creazione di un nuovo percorso

Ora creeremo un nuovo percorso per rendere accessibili le nostre applicazioni tramite il router OpenShift che avevamo creato in precedenza. Per farlo, clicca sul menu “Applicazioni” a sinistra e poi vai su Percorsi.

Il routing è un modo per rendere la tua applicazione pubblicamente visibile. Dopo aver fatto clic sul pulsante "Crea percorso", è necessario inserire le seguenti informazioni, contenenti un nome univoco per il progetto, un nome host e un percorso che il router controlla per instradare il traffico al servizio.

Dopodiché OpenShift genererà un nome host da utilizzare per accedere alla tua applicazione. Devi creare un record A con caratteri jolly nel tuo DNS per consentire il routing automatico di tutte le app al tuo cluster OpenShift durante la configurazione in produzione.

*.openshift.yourdomain.com A

Aggiungi il nome host generato al file host locale per il test in Linux '/etc/hosts', su Windows 'C:\WINDOWS\system32\drivers\etc\hosts'.

Aggiunta di una nuova applicazione a Openshift Origin

OpenShift Origin fornisce strumenti per l'esecuzione di build e per la creazione di codice sorgente dall'interno di immagini del builder predefinite tramite la toolchain Source-to-Image. Per creare una nuova applicazione che combini un'immagine del builder per Node.js con un codice sorgente di esempio per creare una nuova immagine Node.js distribuibile, esegui il comando seguente dopo esserti connesso all'utente amministrativo e passare al progetto predefinito.

# 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.

Una build verrà attivata automaticamente utilizzando l'immagine fornita e l'ultimo commit nel ramo principale del repository Git fornito. Per ottenere lo stato di una build, esegui il comando seguente.

# oc status

Puoi vedere di più sui comandi disponibili nella CLI.

#oc help

Ora dovresti essere in grado di visualizzare la tua applicazione di prova aprendo il collegamento generato da Openshift nel tuo browser web. Puoi anche visualizzare lo stato delle tue app appena distribuite dalla console Web di Openshift.

Fare clic su una delle applicazioni installate per controllare maggiori dettagli su IP, rotte e porte di servizio.

Conclusione

In questo articolo abbiamo installato e configurato correttamente un ambiente Openshift Origin a server singolo su CentOS 7.2. OpenShift aggiunge strumenti incentrati sugli sviluppatori e sulle operazioni oltre a Kubernetes per consentire lo sviluppo rapido delle applicazioni, la facile distribuzione e scalabilità e la manutenzione del ciclo di vita a lungo termine per team piccoli e grandi. È un'amministrazione e una gestione centralizzate di un intero stack, team o organizzazione. Crea modelli riutilizzabili per i componenti del tuo sistema e distribuiscili in modo interattivo nel tempo. Implementa le modifiche agli stack software nell'intera organizzazione in modo controllato. Integrazione con i tuoi meccanismi di autenticazione esistenti, inclusi LDAP, Active Directory e provider OAuth pubblici come GitHub.


Cent OS
  1. Come configurare un server SFTP su CentOS

  2. Come configurare Textpattern CMS su CentOS 8

  3. Come configurare il server SysLog su CentOS 7 / RHEL 7

  4. Come configurare il server NFS su CentOS 7 / RHEL 7

  5. Come configurare Icinga Web 2 su CentOS 7 / RHEL 7

Come configurare Kubernetes 1.5 con kubeadm su CentOS

Come configurare Icinga Web 2 su CentOS 8 / RHEL 8

Come configurare uno Chef 12 su CentOS 7 / RHEL 7

Come configurare gli aggiornamenti di sicurezza automatici su CentOS

Come configurare l'origine di Openshift su CentOS 8

Come configurare un cluster Redis in CentOS 8 – Parte 3