GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar y configurar OpenShift Origin PaaS Server en Ubuntu 20.04

OpenShift es una plataforma como servicio (PaaS) de desarrollo en la nube, gratuita y de código abierto desarrollada por Red Hat que permite a los desarrolladores desarrollar e implementar sus aplicaciones en una infraestructura en la nube. . Es una distribución comunitaria de Kubernetes y permite ciclos de desarrollo y lanzamiento más rápidos para las aplicaciones. Viene con una interfaz web simple y fácil de usar que le permite monitorear los recursos del contenedor, el estado del contenedor, los nodos en los que residen los contenedores, las direcciones IP de los nodos, etc.

En este tutorial, explicaremos cómo instalar OpenShift Origin en el servidor Ubuntu 20.04.

Requisitos

  • Un servidor con Ubuntu 20.04.
  • Se ha configurado una contraseña raíz en su servidor.

Instalar Docker CE

Primero, deberá instalar Docker CE en su sistema para ejecutar todos los servicios de OKD en contenedores docker. De manera predeterminada, la última versión de Docker CE está disponible en el repositorio predeterminado de Ubuntu 20.04. Puede instalarlo simplemente ejecutando el siguiente comando:

apt-get install docker.io -y

Una vez que Docker esté instalado, inicie el servicio Docker y habilítelo para que se inicie en el arranque con el siguiente comando:

systemctl start docker
systemctl enable docker

También puede verificar el estado del servicio Docker con el siguiente comando:

systemctl status docker

Debería ver el siguiente resultado:

? docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; disabled; vendor preset: enabled)
     Active: active (running) since Fri 2020-05-29 12:25:47 UTC; 2s ago
TriggeredBy: ? docker.socket
       Docs: https://docs.docker.com
   Main PID: 48433 (dockerd)
      Tasks: 10
     Memory: 36.5M
     CGroup: /system.slice/docker.service
             ??48433 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

May 29 12:25:47 ubuntu2004 dockerd[48433]: time="2020-05-29T12:25:47.215078550Z" level=warning msg="Your kernel does not support swap memory l>
May 29 12:25:47 ubuntu2004 dockerd[48433]: time="2020-05-29T12:25:47.215139097Z" level=warning msg="Your kernel does not support cgroup blkio >
May 29 12:25:47 ubuntu2004 dockerd[48433]: time="2020-05-29T12:25:47.215169580Z" level=warning msg="Your kernel does not support cgroup blkio >
May 29 12:25:47 ubuntu2004 dockerd[48433]: time="2020-05-29T12:25:47.215721944Z" level=info msg="Loading containers: start."
May 29 12:25:47 ubuntu2004 dockerd[48433]: time="2020-05-29T12:25:47.418058547Z" level=info msg="Default bridge (docker0) is assigned with an >
May 29 12:25:47 ubuntu2004 dockerd[48433]: time="2020-05-29T12:25:47.515158041Z" level=info msg="Loading containers: done."
May 29 12:25:47 ubuntu2004 dockerd[48433]: time="2020-05-29T12:25:47.545778830Z" level=info msg="Docker daemon" commit=afacb8b7f0 graphdriver(>
May 29 12:25:47 ubuntu2004 dockerd[48433]: time="2020-05-29T12:25:47.546068892Z" level=info msg="Daemon has completed initialization"
May 29 12:25:47 ubuntu2004 dockerd[48433]: time="2020-05-29T12:25:47.599029431Z" level=info msg="API listen on /run/docker.sock"
May 29 12:25:47 ubuntu2004 systemd[1]: Started Docker Application Container Engine.

En este punto, Docker está instalado y ejecutándose. Ahora puede continuar con el siguiente paso.

Descargar OpenShift Origin

Al momento de escribir este tutorial, la última versión de OpenShift Origin es v3.11.0. Puede descargarlo desde el repositorio de Git Hub usando el siguiente comando:

wget https://github.com/openshift/origin/releases/download/v3.11.0/openshift-origin-client-tools-v3.11.0-0cbc58b-linux-64bit.tar.gz

Una vez que se complete la descarga, extraiga el archivo descargado con el siguiente comando:

tar -xvzf openshift-origin-client-tools-v3.11.0-0cbc58b-linux-64bit.tar.gz

A continuación, cambie el directorio al directorio extraído y copie los binarios kubectl y oc al directorio /usr/local/bin.

cd openshift-origin-client-tools-v3.11.0-0cbc58b-linux-64bit
cp oc kubectl /usr/local/bin/

A continuación, verifique la instalación de la utilidad de cliente OpenShift con el siguiente comando:

oc version

Debería ver el siguiente resultado:

oc v3.11.0+0cbc58b
kubernetes v1.11.0+d4cacc0
features: Basic-Auth GSSAPI Kerberos SPNEGO

A continuación, deberá crear un nuevo archivo daemon.json y permitir el uso del registro Insecure Docker.

nano /etc/docker/daemon.json

Agregue la siguiente línea:

 {
     "insecure-registries" : [ "172.30.0.0/16" ]
 }

Guarde y cierre el archivo, luego reinicie el servicio Docker para implementar los cambios.

systemctl restart docker

Iniciar clúster de origen de OpenShif

Ahora, inicie el clúster de OpenShift Origin especificando la IP de su sistema:

oc cluster up --public-hostname=your-server-ip

Una vez que el servidor se inició correctamente, debería obtener el siguiente resultado:

Login to server ...
Creating initial project "myproject" ...
Server Information ...
OpenShift server started.

The server is accessible via web console at:
    https://your-server-ip:8443

You are logged in as:
    User:     developer
    Password: 

To login as administrator:
    oc login -u system:admin

Ahora, inicie sesión en su clúster como usuario administrador con el siguiente comando:

oc login -u system:admin

Una vez que inicie sesión, debería obtener el siguiente resultado:

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-dns
    kube-proxy
    kube-public
    kube-system
  * myproject
    openshift
    openshift-apiserver
    openshift-controller-manager
    openshift-core-operators
    openshift-infra
    openshift-node
    openshift-service-cert-signer
    openshift-web-console

Using project "myproject".

A continuación, cambie al proyecto predeterminado con el siguiente comando:

oc project default

Salida:

Now using project "default" on server "https://your-server-ip:8443".

Ahora, verifica el estado actual de tu proyecto con el siguiente comando:

oc status

Deberías obtener el siguiente resultado:

In project default on server https://your-server-ip:8443

svc/docker-registry - 172.30.1.1:5000
  dc/docker-registry deploys docker.io/openshift/origin-docker-registry:v3.11 
    deployment #1 deployed 2 minutes ago - 1 pod

svc/kubernetes - 172.30.0.1:443 -> 8443

svc/router - 172.30.94.157 ports 80, 443, 1936
  dc/router deploys docker.io/openshift/origin-haproxy-router:v3.11 
    deployment #1 deployed 2 minutes ago - 1 pod

View details with 'oc describe /' or list everything with 'oc get all'.

Crear proyecto en OpenShift

Ahora, inicie sesión en OpenShift con el usuario desarrollador con el siguiente comando:

oc login

Se le pedirá que proporcione un nombre de usuario y una contraseña como se muestra a continuación:

Authentication required for https://your-server-ip:8443 (openshift)
Username: developer
Password: 

Proporcione el nombre de usuario como desarrollador y la contraseña como desarrollador, y presione Entrar. Debería ver el siguiente resultado:

Login successful.

You have one project on this server: "myproject"

Using project "myproject".

Para crear un nuevo proyecto, ejecute el siguiente comando:

oc new-project dev --display-name="Project - Dev" --description="My Project"

Debería ver el siguiente resultado:

Now using project "dev" on server "https://your-server-ip:8443".

You can add applications to this project with the 'new-app' command. For example, try:

    oc new-app centos/ruby-25-centos7~https://github.com/sclorg/ruby-ex.git

to build a new example application in Ruby.

Acceder a la consola web de OpenShift

Ahora, abra su navegador web y escriba la URL https://your-server-ip:8443/console. Debería ver la página de inicio de sesión de OpenShift:

Proporcione su nombre de usuario y contraseña de desarrollador y haga clic en Iniciar sesión En botón. Debería ver la siguiente página:

Haga clic en Crear Proyecto botón. Debería ver la siguiente página:

Proporcione toda la información requerida y haga clic en Crear botón para crear un nuevo proyecto.

Implementar aplicación en OpenShift Origin

Primero, inicie sesión en OpenShift con el usuario desarrollador ejecutando el siguiente comando:

oc login

Inicie sesión con el usuario desarrollador como se muestra a continuación:

Authentication required for https://your-server-ip:8443 (openshift)
Username: developer
Password: 
Login successful.

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

  * dev
    my-project
    myproject

Using project "dev".

Una vez que inicie sesión, cambie el proyecto a mi proyecto que ha creado a través de la consola web de OpenShift:

oc project my-project

Salida:

Now using project "my-project" on server "https://your-server-ip:8443".

A continuación, verifica el estado de tu proyecto actual con el siguiente comando:

oc status

Salida:

In project My Project (my-project) on server https://your-server-ip:8443

You have no services, deployment configs, or build configs.
Run 'oc new-app' to create an application.

A continuación, etiquete una imagen de aplicación del registro de Docker Hub con el siguiente comando:

oc tag --source=docker openshift/deployment-example:v2 deployment-example:latest

Salida:

Tag deployment-example:latest set to openshift/deployment-example:v2.

A continuación, implemente una aplicación en OpenShift con el siguiente comando:

oc new-app deployment-example

Debería ver el siguiente resultado:

--> Found image da61bb2 (4 years old) in image stream "my-project/deployment-example" under tag "latest" for "deployment-example"

    * This image will be deployed in deployment config "deployment-example"
    * Port 8080/tcp will be load balanced by service "deployment-example"
      * Other containers can access this service through the hostname "deployment-example"
    * WARNING: Image "my-project/deployment-example:latest" runs as the 'root' user which may not be permitted by your cluster administrator

--> Creating resources ...
    deploymentconfig.apps.openshift.io "deployment-example" created
    service "deployment-example" created
--> Success
    Application is not exposed. You can expose services to the outside world by executing one or more of the commands below:
     'oc expose svc/deployment-example' 
    Run 'oc status' to view your app.

Ahora, verifique el estado de implementación de la aplicación con el siguiente comando:

oc status

Debería ver el siguiente resultado:

In project My Project (my-project) on server https://your-server-ip:8443

svc/deployment-example - 172.30.87.146:8080
  dc/deployment-example deploys istag/deployment-example:latest 
    deployment #1 deployed 36 seconds ago - 1 pod


2 infos identified, use 'oc status --suggest' to see details.

Para obtener información sobre su servicio, ejecute el siguiente comando:

oc get svc

Salida:

NAME                 TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)    AGE
deployment-example   ClusterIP   172.30.87.146           8080/TCP   1m

Para obtener información detallada, ejecute el siguiente comando:

oc describe svc deployment-example

Salida:

Name:              deployment-example
Namespace:         my-project
Labels:            app=deployment-example
Annotations:       openshift.io/generated-by=OpenShiftNewApp
Selector:          app=deployment-example,deploymentconfig=deployment-example
Type:              ClusterIP
IP:                172.30.87.146
Port:              8080-tcp  8080/TCP
TargetPort:        8080/TCP
Endpoints:         172.17.0.10:8080
Session Affinity:  None
Events:            

También puede verificar el estado de los Pods usando el siguiente comando:

oc get pods

Salida:

NAME                         READY     STATUS    RESTARTS   AGE
deployment-example-1-b9prf   1/1       Running   0          2m

Ahora, exponga la aplicación para acceso externo usando el siguiente comando:

oc expose service/deployment-example

Salida:

route.route.openshift.io/deployment-example exposed

Para mostrar la información de las rutas, ejecute el siguiente comando:

oc get routes

Deberías obtener el siguiente resultado:

NAME                 HOST/PORT                                           PATH      SERVICES             PORT       TERMINATION   WILDCARD
deployment-example   deployment-example-my-project.your-server-ip.nip.io             deployment-example   8080-tcp                 None

Verificar acceso externo

Ahora, su aplicación está lista para el acceso externo. Abra su navegador web y escriba la URL anterior http://deployment-example-my-project.your-server-ip.nip.io. Debería ver su solicitud en la siguiente página:

Si desea eliminar su aplicación, ejecute el siguiente comando:

oc delete all -l app=deployment-example

Debería ver el siguiente resultado:

pod "deployment-example-1-b9prf" deleted
replicationcontroller "deployment-example-1" deleted
service "deployment-example" deleted
deploymentconfig.apps.openshift.io "deployment-example" deleted
route.route.openshift.io "deployment-example" deleted

Conclusión

En este artículo, instalamos y configuramos con éxito OpenShift Origin de un solo nodo en Ubuntu 20.04. Ahora puede comenzar a desarrollar su primera aplicación en el entorno OpenShift. no dude en preguntarme si tiene alguna pregunta.


Ubuntu
  1. Cómo instalar y configurar el servidor Algo VPN en Ubuntu 20.04

  2. Cómo instalar y configurar el servidor DHCP en Ubuntu 20.04

  3. Cómo instalar y configurar el servidor Redis en Ubuntu

  4. Cómo instalar y configurar Squid Proxy en Ubuntu 20.04

  5. Cómo instalar y configurar el servidor web Apache en Ubuntu 13.10

Cómo instalar y configurar el servidor web Apache en Ubuntu

Cómo instalar y configurar el servidor LAMP en Ubuntu

Cómo instalar y configurar el servidor OpenLDAP en Ubuntu 16.04

Cómo instalar y configurar el servidor VNC en Ubuntu 20.04

Cómo instalar y configurar VNC en Ubuntu Server 20.04

Cómo instalar y configurar el servidor DNS en Ubuntu 16.04 LTS