GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo configurar Openshift Origin en CentOS 7

OpenShift Origin es el proyecto upstream de código abierto que impulsa OpenShift, la plataforma de aplicaciones de contenedores de Red Hat. Brinda soporte para Python, PHP, Perl, Node.js, Ruby y Java y es extensible para que los usuarios puedan agregar soporte para otros lenguajes. Los recursos asignados para las aplicaciones se pueden escalar de forma automática o manual según sea necesario para que, a medida que aumenta la demanda, no se produzca una degradación del rendimiento. OpenShift proporciona portabilidad a través de la API de DeltaCloud para que los clientes puedan migrar implementaciones a otros entornos de proveedores de computación en la nube. OpenShift se proporciona aprovechando Docker y Kubernetes, lo que le brinda la posibilidad de tener imágenes de aplicaciones personalizadas y reutilizables. OpenShift está diseñado para ser una plataforma de aplicaciones escalable y de alta disponibilidad. Cuando se configura correctamente, una gran implementación de OpenShift puede ofrecer una manera fácil de escalar su aplicación cuando aumenta la demanda, sin tiempo de inactividad. Con un clúster de hosts OpenShift en varias ubicaciones de centros de datos, puede sobrevivir a un centro de datos completo que se cae.

En este artículo, le mostraremos su instalación y configuración en un servidor independiente CentOS 7 con paquetes mínimos instalados.

Requisitos

En un clúster de OpenShift Origin de alta disponibilidad con etcd externo, un host maestro debe tener 1 núcleo de CPU y se requieren 1,5 GB de memoria para cada 1000 pods. Por lo tanto, el tamaño recomendado del host maestro en un clúster de OpenShift Origin de 2000 pods sería de 2 núcleos de CPU y 3 GB de RAM, además de los requisitos mínimos para un host maestro de 2 núcleos de CPU y 16 GB de RAM.

OpenShift Origin requiere un servidor DNS totalmente funcional en el entorno. Idealmente, este es un host separado que ejecuta el software DNS y puede proporcionar resolución de nombres a los hosts y contenedores que se ejecutan en la plataforma. Configuremos DNS para resolver su host y configuremos FQDN con dominio en sus máquinas virtuales.

Configure SELINUXTYPE=targeted en el archivo '/etc/selinux/config', si aún no lo ha hecho, porque Security-Enhanced Linux (SELinux) debe estar habilitado en todos los servidores antes de instalar OpenShift Origin; de lo contrario, la instalación fallará.

# vi /etc/selinux/config

Asegúrese de actualizar su sistema con las últimas actualizaciones y parches de seguridad usando el siguiente comando.

# yum update -y

Instalación de Docker

Tenemos tres opciones para instalar OpenShift, que son curl-to-shell, un instalador portátil o instalación desde la fuente. En este artículo instalaremos OpenShift Origin desde la fuente utilizando Docker.

Ejecute el siguiente comando para instalar Docker junto con algunas otras dependencias necesarias para realizar esta configuración, como el editor 'vim' y la utilidad 'wget' si aún no está instalada en su sistema.

# yum install docker wget vim -y

Una vez que se complete la instalación, debemos configurarlo para que confíe en el registro que usaremos para las imágenes de OpenShift abriendo el archivo '/etc/sysconfig/docker' en su editor de línea de comandos.

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

Guarde y cierre el archivo de configuración y reinicie el servicio docker usando el siguiente comando.

# systemctl restart docker.service

Instalar y configurar Openshift

Una vez que tengamos un servicio docker en funcionamiento, configuraremos OpenShift para que se ejecute como un proceso independiente administrado por systemd. Ejecutemos el siguiente comando para descargar los archivos binarios de OpenShift desde GitHub en el directorio '/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

Luego extraiga el paquete y cambie el directorio a la carpeta extraída para mover todos los archivos binarios al directorio '/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/

A continuación, crearemos un script de inicio y un archivo de unidad systemd colocando nuestras direcciones IP públicas y privadas.

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

Guarde y cierre el archivo y luego coloque los siguientes contenidos en el archivo recién creado en systemd.

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

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

Eso es todo, ahora guarde el archivo y cambie los permisos de este archivo para hacerlo ejecutable y luego cargue el nuevo archivo de unidad para que pueda ser funcional.

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

Después de recargar el demonio, inicie el servicio Openshift usando el siguiente comando y confirme si su estado está activo.

# systemctl start openshift
# systemctl status openshift

Ahora que el servicio Openshift está en funcionamiento, para administrar la instalación de OpenShift de forma remota y acceder a sus aplicaciones, es necesario abrir los puertos TCP 80, 443 y 8443 en su 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

Agregar enrutador y registro de Openshift

Ahora necesitamos instalar un enrutador OpenShift, para que pueda servir aplicaciones a través de la dirección IP pública. OpenShift utiliza un registro de Docker para almacenar imágenes de Docker para una gestión más sencilla del ciclo de vida de su aplicación y el enrutador enruta las solicitudes a aplicaciones específicas en función de sus nombres de dominio. Entonces, primero debemos decirle a las herramientas de CLI dónde están nuestra configuración y el certificado de CA para autenticar nuestro nuevo clúster de OpenShift.

Agreguemos las siguientes líneas a '/root/.bashrc' para que se carguen cuando cambiemos al usuario raíz.

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

Vuelva a cargar '.bashrc' para actualizar la configuración.

# source /root/.bashrc

Luego use el siguiente comando para iniciar sesión en el clúster.

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

Agregamos con éxito un enrutador y ahora para agregar un registro, use los comandos como se muestra a continuación.

# 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

Acceso a Openshift Origin

La instalación de OpenShift ahora está completa. Puede probar su implementación de OpenShift visitando la siguiente URL en un navegador web.

https://your_servers_ip:8443

Aparecerá una pantalla de inicio de sesión de OpenShift. De forma predeterminada, OpenShift le permite iniciar sesión con cualquier combinación de nombre de usuario y contraseña y crea automáticamente una cuenta para usted. A continuación, tendrá acceso para crear proyectos y aplicaciones. Vamos a crear una cuenta con el nombre de usuario 'ks' como se muestra.

Creación de un nuevo proyecto en Openshift

Después de iniciar sesión correctamente, se le pedirá que cree un nuevo proyecto. Los proyectos contienen una o más aplicaciones que están relacionadas. Vamos a crear un proyecto de prueba para que podamos implementar nuestra primera aplicación.

A continuación, asigne un nombre al nuevo proyecto con su nombre para mostrar y una breve descripción.

Después de crear nuestro nuevo proyecto, la siguiente pantalla que verá es la pantalla "Agregar al proyecto", donde podemos agregar las imágenes de nuestra aplicación a OpenShift para prepararlas para la implementación. En este caso, vamos a implementar una imagen existente haciendo clic en la pestaña "Implementar imagen". Dado que OpenShift usa Docker, esto nos permitirá extraer una imagen directamente desde Docker Hub o cualquier otro registro.

Para probar, vamos a utilizar la imagen 'openshift/hello-openshift' ingresándola en el campo "Nombre de la imagen" como se muestra en la imagen a continuación.

Haga clic en el ícono de búsqueda, a la derecha del nombre de la imagen y luego haga clic en el botón 'Crear' en la parte inferior con opciones predeterminadas con imagen básica sin necesidad de configuración adicional.

Haga clic en Resumen del proyecto para comprobar el estado de su solicitud.

Creación de nueva ruta

Ahora vamos a crear una nueva ruta para que nuestras aplicaciones sean accesibles a través del enrutador OpenShift que habíamos creado previamente. Para hacerlo, haga clic en el menú "Aplicaciones" a la izquierda y luego vaya a Rutas.

El enrutamiento es una forma de hacer que su aplicación sea visible públicamente. Una vez que haga clic en el botón 'Crear ruta', debe ingresar la siguiente información, que contiene un nombre único para el proyecto, el nombre de host y la ruta que el enrutador observa para enrutar el tráfico al servicio.

Después de eso, OpenShift generará un nombre de host que se usará para acceder a su aplicación. Debe crear un registro A comodín en su DNS para permitir el enrutamiento automático de todas las aplicaciones a su clúster de OpenShift mientras lo configura en producción.

*.openshift.yourdomain.com A

Agregue el nombre de host generado a su archivo de host local para probarlo en Linux '/etc/hosts', en Windows 'C:\WINDOWS\system32\drivers\etc\hosts'.

Adición de una nueva aplicación a Openshift Origin

OpenShift Origin proporciona herramientas para ejecutar compilaciones y crear código fuente desde imágenes de compilador predefinidas a través de la cadena de herramientas Source-to-Image. Para crear una nueva aplicación que combine una imagen de compilador para Node.js con código fuente de ejemplo para crear una nueva imagen desplegable de Node.js, ejecute el siguiente comando después de conectarse con el usuario administrativo y cambie al proyecto predeterminado.

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

Se activará automáticamente una compilación utilizando la imagen proporcionada y la última confirmación en la rama principal del repositorio de Git proporcionado. Para obtener el estado de una compilación, ejecute el siguiente comando.

# oc status

Puede ver más sobre los comandos disponibles en la CLI.

#oc help

Ahora, debería poder ver su aplicación de prueba abriendo el enlace generado por Openshift en su navegador web. También puede ver el estado de sus aplicaciones recién implementadas desde la consola web de Openshift.

Haga clic en cualquiera de las aplicaciones instaladas para consultar más detalles sobre IP, rutas y puertos de servicio.

Conclusión

En este artículo, instalamos y configuramos con éxito un entorno Openshift Origin de servidor único en CentOS 7.2. OpenShift agrega herramientas centradas en el desarrollador y las operaciones además de Kubernetes para permitir el desarrollo rápido de aplicaciones, la implementación y el escalado sencillos, y el mantenimiento del ciclo de vida a largo plazo para equipos pequeños y grandes. Es una administración y gestión centralizadas de toda una pila, equipo u organización. Cree plantillas reutilizables para los componentes de su sistema e impleméntelas de forma interactiva a lo largo del tiempo. Implemente modificaciones en las pilas de software en toda su organización de manera controlada. Integración con sus mecanismos de autenticación existentes, incluidos LDAP, Active Directory y proveedores públicos de OAuth como GitHub.


Cent OS
  1. Cómo configurar un servidor SFTP en CentOS

  2. Cómo configurar el servidor SysLog en CentOS 7 / RHEL 7

  3. Cómo configurar el servidor NFS en CentOS 7 / RHEL 7

  4. Cómo configurar claves SSH en CentOS 8

  5. Cómo configurar la replicación de MySQL en CentOS

Cómo configurar Kubernetes 1.5 con kubeadm en CentOS

Cómo configurar Icinga Web 2 en CentOS 8 / RHEL 8

Cómo configurar un Chef 12 en CentOS 7 / RHEL 7

Cómo configurar actualizaciones de seguridad automáticas en CentOS

Cómo configurar Openshift Origin en CentOS 8

Cómo configurar un clúster de Redis en CentOS 8 - Parte 3