El 25/9/19 a las 11:34, Arian Molina Aguilera escribió:
> El 25/9/19 a las 10:56, Eriel Perez escribió:
>>
>> On 9/25/2019 8:31 AM, Mike the Wolf wrote:
>>> El martes, 24 de septiembre de 2019 16:40:56 CDT, Eriel Perez escribió:
>>>> Hola colegas.
>>>>
>>>> Alguien aqui ha trabajado con kubernetes? lo ha implementado?
>>>>
>>>> Tengo algunas dudas.
>>>>
>>>> Gracias.
>>>>
>>>
>>> Date una vuelta por aca https://www.okd.io/#v3
>>>
>>> _______________________________________________
>>> Gutl-l mailing list -- gutl-l@listas.jovenclub.cu
>>> To unsubscribe send an email to gutl-l-le...@listas.jovenclub.cu
>>
>>
>>
>> Encontre un articulo muy bueno que me esclarecio algunas dudas. Aqui las
>> comparto con la lista.
>>
>> -----1------ (https://openwebinars.net/blog/docker-kubernetes-y-openshift/)
>>
>>
>>   Docker, Kubernetes y OpenShift
>>
>> ¿Quieres aclarar conceptos sobre Cloud Computing y sobre las tecnologías
>> que se utilizan? Aquí te contamos los aspectos más importantes sobre
>> contenedores y las tecnologías Docker, Kubernetes y OpenShift.
>>
>>
>>     Contenedores
>>
>> Los contenedores es un término que está muy de moda en los últimos
>> tiempos, y lo que nos permiten es tener una partición aislada dentro de
>> un sistema operativo. Es algo parecido a una máquina virtual, pero mucho
>> más liviano, porque un contenedor suele partir el núcleo del sistema
>> operativo con los demás contenedores.
>>
>> *El uso de contenedores tiene una serie de ventajas que queremos destacar:*
>>
>>   * *Cada aplicación está aislada y se va a ejecutar en un contenedor*,
>>     por lo que cada una tiene su conjunto de librerías y la
>>     actualización de un contenedor no afecta.
>>   * *Se tiene un menor tamaño de hardware*, porque, como hemos dicho,
>>     son más livianos que un sistema operativo virtualizado, que una
>>     máquina virtual que tiene todas las características de una máquina
>>     completa, y los contenedores comparten normalmente el núcleo de
>>     sistema del sistema.
>>   * *La implementación es muy rápida*, porque al ser tan liviano, el
>>     inicio, la parada y la actualización de los contenedores se hace una
>>     manera muy ágil.
>>   * *Minimiza el impacto frente a cambios*, ya que al tener cada
>>     aplicación en un contenedor, si una aplicación cambia y hay que
>>     actualizarla, no afecta a las demás.
>>
>>
>>     Docker
>>
>> *Docker es una tecnología que nos permite trabajar con contenedores*,
>> más en concreto con un tipo de contenedores llamados contenedores de
>> aplicación, que están especializados en implantación de aplicaciones web.
>>
>> Es una virtualización ligera, como comentamos anteriormente, con la que
>> se aprovecha mejor el hardware, y el contenedor finalmente es un sistema
>> de archivos mínimo para que la aplicación funcione.
>>
>>   * *El contenedor es autosuficiente*, solo se necesita una imagen para
>>     crearlo el contenedor.
>>   * De una forma muy simple podríamos entender una imagen como *“un
>>     sistema operativo con las aplicaciones ya instaladas”*.
>>   * El proyecto Docker nos ofrece un repositorio con imágenes con las
>>     que podemos trabajar, llamado *Docker Hub*.
>>   * Otro aspecto muy importante es que *un contenedor suele ejecutar un
>>     solo proceso*. Por ejemplo, si tenemos una base de datos es un
>>     contenedor, si tenemos una aplicación con PHP es un contenedor con
>>     un servidor web.
>>
>>
>>     Componentes de Docker
>>
>> De forma muy básica podemos diferenciar varios componentes en Docker:
>>
>>   * *Docker Engine*: Es un demonio Docker y es el responsable de
>>     ejecutar los contenedores. Corre sobre cualquier distribución de
>>     Linux y expone una API externa para la gestión de imágenes y
>>     contenedores.
>>   * *Docker Client*: Es el cliente de línea de comando (CLI) que nos
>>     permite interactuar con el Docker Engine. Se puede configurar para
>>     trabajar con un Docker Engine local o remoto.
>>   * *Docker Registry*: Es el repositorio de imágenes generadas por el
>>     Docker Engine, y nos permite distribuir nuestras imágenes. Podemos
>>     instalar un registro privado, o hacer uso de uno público como Docker
>>     Hub.
>>
>>
>>     Kubernetes
>>
>> *Docker nos permite la ejecución de contenedores y trabaja en un
>> servidor*, por lo que nos lo interesante sería tener un clúster de
>> servidores donde los contenedores se fueran ejecutando en distintos
>> servidores, y que además hubiera un control de esos contenedores. Aquí
>> es donde aparece Kubernetes.
>>
>> *Podemos definir Kubernetes como un orquestador de contenedores*, ya que
>> es el responsable de que los contenedores que vamos a tener estén
>> conectados pero se ejecuten en distintos en distintos nodos.
>>
>> Está escrito en Go y originalmente fue un proyecto de Google, pero que
>> rápidamente pues se alió con la Linux Foundation para crear una nueva
>> fundación llamada Cloud Native Computing Foundation (CNCF), donde ahora
>> mismo se desarrolla el proyecto.
>>
>> Es un proyecto muy reciente, ya que comenzó en 2015, pero está en pleno
>> auge y cada vez se utiliza más.
>>
>>
>>     Ventajas de Kubernetes
>>
>> Las principales ventajas que ofrece Kubernetes son:
>>
>>   * *Tolerancia a fallos*: asegura que el servicio y los contenedores
>>     siempre están en ejecución.
>>   * *Escalabilidad dinámica*: permite escalar de forma sencilla los
>>     contenedores.
>>   * *Actualizaciones continuas*: se puede actualizar las versiones de
>>     forma fácil.
>>   * *Despliegues automáticos.*
>>   * *Enrutamiento a nuestras aplicaciones*: permite enrutar y tener
>>     nombres de dominio o de máquinas para acceder.
>>   * *Balanceo de carga*: balancea la carga entre los distintos contenedores.
>>   * *Volúmenes persistentes*: al igual que en Docker, los contenedores
>>     tienen una característica que es que la información que tienen es
>>     efímera, es decir, se pierde, por lo tanto son necesarios mecanismos
>>     de volúmenes externos para guardar la información de la aplicación.
>>
>>
>>     OpenShift
>>
>> *Kubernetes es un proyecto que se puede utilizar por sí mismo*, y están
>> surgiendo muchos productos que se basan en él, siendo OpenShift uno de
>> ellos.
>>
>> *OpenShift es un producto que internamente utiliza Kubernetes*, que lo
>> que hace es mejorar la funcionalidad del mismo introduciendo nuevas
>> características.
>>
>> Es la plataforma de desarrollo, con características de Cloud Computing
>> en la capa de Plataforma como Servicio (PaaS), de Red Hat.
>>
>> La Plataforma como Servicio de Cloud Computing ofrece la posibilidad a
>> un desarrollador de tener una infraestructura donde colocar su
>> aplicación con características de Cloud Computing, como la escalabilidad
>> o el pago por uso, es decir, se usan más o menos recursos en función de
>> las necesidades, y se paga según se consuman más o menos recursos.
>>
>> *OpenShift permite que el desarrollador se centre en el desarrollo de
>> aplicaciones y que no tenga que saber cómo funciona internamente Docker
>> y Kubernetes*, ya que le permite desplegar aplicaciones de una manera
>> muy sencilla con la funcionalidad y las ventajas de tener un sistema
>> como Kubernetes, que internamente facilita esta implantación.
>>
>> Se puede utilizar en la integración continua del desarrollo de una
>> aplicación, para terminar implantando la aplicación en OpenShift.
>>
>> Podemos trabajar con OpenShift con una aplicación web o con cliente de
>> línea de comandos.
>>
>>
>>     Principal diferencia de OpenShift con Kubernetes
>>
>> La novedad más importante que diferencia a OpenShift de Kubernetes es
>> que *las imágenes Docker que se utilizan en Kubernetes las tenemos que
>> generar nosotros, mientras que OpenShift tiene la característica de
>> source2image*, que a partir de un repositorio con nuestro código, es
>> capaz de crear una nueva imagen Docker de forma automática y es la que
>> va a utilizar internamente.
>>
>> Por lo tanto el desarrollador se centra en su desarrollo, tiene el mismo
>> en un repositorio GitHub e internamente OpenShift es capaz de, a partir
>> de una imagen base de un lenguaje de programación, extraer el contenido
>> de este repositorio y crear una nueva imagen.
>>
>>
>>     Ventajas que ofrece OpenShift
>>
>> OpenShift tiene las mismas ventajas que el uso de Kubernetes que vimos
>> anteriormente, pero además ofrece algunas ventajas adicionales:
>>
>>   * Gestión más sencilla de proyectos y usuarios.
>>   * Conjunto de imágenes base con el que podemos trabajar.
>>   * Asignación de forma automática de las rutas para acceder a la
>>     aplicación.
>>   * Gestiona de forma sencilla los volúmenes.
>>   * Se puede incluir en un flujo de integración continua y entrega continua.
>>   * Tiene ya incluidas herramientas de métricas y monitorización.
>>
>>
>>     Conclusiones
>>
>> Tras todo lo visto anteriormente ya te puedes hacer una idea de cómo
>> funciona el ecosistema del trabajo con contenedores:
>>
>>   * Lo más básico de trabajar con Docker, que trabaja con contenedores
>>     en una máquina.
>>   * Posteriormente con Kubernetes, que gestiona los contenedores que se
>>     ejecutan en un conjunto de máquinas.
>>   * Y OpenShift se puede decir que es una versión mejorada de
>>     Kubernetes, que añade la posibilidad de que un desarrollador, sin
>>     conocimientos de Docker y Kubernetes, pueda utilizar las ventajas de
>>     Kubernetes en un sistema sencillo.
>>
>>
>>
>>
>> ----2----(https://openwebinars.net/blog/kubernetes-vs-openshift/)
>>
>>
>>   Kubernetes vs OpenShift
>>
>> Conoce las principales diferencias que existen entre Kubernetes y
>> Openshift, dos tecnologías que han cobrado gran importancia en los
>> últimos tiempos.
>>
>> Vamos a ver tanto las similitudes como las diferencias que existen entre
>> ambos proyectos.
>>
>> *Kubernetes es un gestor de contenedores*, que permite gestionar los
>> contenedores que se ejecutan en un clúster de ordenadores.
>>
>> OpenShift, que trabaja internamente con Kubernetes, es la plataforma de
>> desarrollo de la empresa Red Hat, que tiene características de Cloud
>> Computing en la capa de Plataforma como Servicio o PaaS, y añade nuevas
>> funcionalidades que Kubernetes no tiene.
>>
>>
>>     Proyecto vs producto
>>
>> La primera diferencia entre ambas tecnologías es que podemos entender
>> Kubernetes como un proyecto de código abierto, mientras que OpenShift es
>> un producto.
>>
>> Realmente se puede decir que OpenShift es una distribución certificada
>> de Kubernetes, de las muchas que existen, que podemos ver en esta página:
>>
>> https://www.cncf.io/certification/software-conformance/#logs
>>
>> *OpenShift también tiene una versión que es de código abierto, que se
>> conoce como OKD o como OpenShift Origin*. Para instalar esta versión
>> necesitamos tener como sistema operativo Red Hat Linux o CentOS, sin
>> embargo Kubernetes se puede instalar en cualquier distribución de Linux.
>>
>>
>>     Seguridad
>>
>> En cuanto a la comparación sobre seguridad,*OpenShift por defecto tiene
>> políticas de seguridad más estrictas que la de Kubernetes*.
>>
>> Esto a veces plantea ciertos problemas, porque la mayoría de las
>> imágenes Docker de contenedores disponibles, por ejemplo en Docker Hub,
>> que es el repositorio oficial de Docker, no se pueden ejecutar en
>> OpenShift, porque no permite ejecutar ciertas imágenes como root.
>>
>> La gestión de autorización de recursos, que se hace por medio de RBAC
>> (Control de Acceso Basado en Roles), se puede deshabilitar en
>> Kubernetes. Esto no es apropiado si tenemos un Kubernetes en producción,
>> pero en OpenShift no podemos deshabilitar las reglas de autorización.
>>
>>
>>     Build
>>
>> Sobre la construcción de imágenes, *Kubernetes trabaja con imágenes de
>> contenedores, pero esas imágenes las debemos crear nosotros o utilizar
>> un software adicional que automatice esa creación*, pero Kubernetes por
>> si solo no puede crear imágenes de contenedores.
>>
>> Sin embargo, en OpenShift, al estar pensada para desarrolladores que no
>> te necesitan conocer en profundidad cómo funcionan los contenedores y
>> como funciona Kubernetes, *tiene diversos métodos de construcción de
>> imágenes*, como por ejemplo desde un Dockerfile o con la característica
>> soucer2image.
>>
>>
>>     Gestión de las imágenes
>>
>> *OpenShift mejora la gestión de las imágenes con un nuevo recurso
>> llamado ImageStream*, que mejora el recurso Image de Kubernetes.
>>
>> Con OpenShift es más fácil trabajar con las etiquetas de las imágenes, y
>> además tiene un sistema que detecta la versión de la imagen ha cambiado,
>> porque tiene una nueva etiqueta, lanza un despliegue de forma automática
>> para implantar la nueva versión de la aplicación.
>>
>>
>>     Ingress vs Routers
>>
>> *En Kubernetes tenemos el recurso Ingress*, que nos permite asociar una
>> ruta a nuestra aplicación. En OpenShift se le ha cambiado el nombre y la
>> implementación y se conoce como Routers.
>>
>> *En OpenShift se utiliza internamente un proxy inverso HAProxy*,
>> mientras que en Kubernetes el recurso Ingress lo podemos implementar con
>> distintas soluciones, ya sea con un proxy inverso nginx, con Traefick o
>> con otras soluciones.
>>
>> Se podría decir que las rutas de OpenShift, porque se lleva trabajando
>> más tiempo que el proyecto Kubernetes en el tema de asignación de ruta,
>> es más madura, pero también hay que decir que el recurso Ingress de
>> Kubernetes las últimas versiones está evolucionando de una manera muy
>> positiva.
>>
>>
>>     Ingress vs Routers
>>
>> Finalmente compararemos los mecanismos que utilizan estas tecnologías
>> para crear el conjunto de recursos para que una aplicación funcione.
>>
>> Por ejemplo, si necesitamos instalar un WordPress, necesitaremos una
>> base de datos y un despliegue de WordPress, por lo que van a ser
>> contenedores distintos y deben ser persistentes, por lo tanto hay que
>> crear también volúmenes para que la información no desaparezca.
>>
>> *Todos los recursos que se crean para instalar una aplicación se pueden
>> empaquetar.*
>>
>> Kubernetes normalmente utiliza una herramienta, llamada Helm, para
>> empaquetar todos los recursos que nos permiten implantar una aplicación,
>> sin embargo OpenShift utiliza un recurso que se llama Template.
>>
>> En esta caso podemos decir que *Helm de Kubernetes es mucho más flexible
>> y permite muchas más funcionalidades que los Templates de OpenShift*.
>>
>> La versión actual de Helm, utilizando un componente que se llama Tiller,
>> que se ejecuta en un pod que debe tener muchos privilegios, es
>> incompatible con la política de seguridad de OpenShift, y por lo tanto
>> optaron por utilizar otro mecanismo para empaquetar las aplicaciones.
>>
>>
>>     Conclusión
>>
>> Como conclusión podemos decir que *OpenShift es una distribución de
>> Kubernetes que mejora ciertos aspectos y añade nuevas funcionalidades*,
>> pero que aprovecha todas las ventajas de la implantación de aplicaciones
>> en un clúster de servidores como las que ofrece Kubernetes.
>>
>> Con Kubernetes se necesita un equipo de sistemas para que mantenga el
>> clúster, mientras que OpenShift está claramente centrado en el
>> desarrollador, para que no necesite conocer en profundidad los conceptos
>> de contenedores y orquestadores de contenedores, y se centre en el
>> desarrollo de la aplicación, y de forma sencilla sea capaz de implantar
>> su aplicación en un entorno de Cloud Computing, que internamente utiliza
>> Kubernetes.
>>
>>
>> _______________________________________________
>> Gutl-l mailing list -- gutl-l@listas.jovenclub.cu
>> To unsubscribe send an email to gutl-l-le...@listas.jovenclub.cu
>>
> puedes instalar snap en debian 10, luego con este desplegar montones de
> herramientas.
> 
> ahí tienes para escoger
> 
> snap search kube
> Name                     Version                Publisher
> Notes    Summary
> kubectl                  1.15.4                 canonical✓
> classic  Command line client for controlling a Kubernetes cluster.
> microk8s                 v1.15.3                canonical✓
> classic  Kubernetes for workstations and appliances
> kata-containers          1.8.0                  katacontainers✓
> classic  Lightweight virtual machines that seamlessly plug into the
> containers ecosystem
> conjure-up               2.6.8-20190709.1507    canonical✓
> classic  Package runtime for conjure-up spells
> juju                     2.6.9                  canonical✓
> classic  Simple, secure and stable devops. Juju keeps complexity low and
> productivity high. Manage applications wherever they are run.
> helm                     2.14.3                 snapcrafters
> classic  The Kubernetes package manager
> kubelet                  1.15.4                 canonical✓
> classic  Kubernetes “node agent” that runs on each node in Kubernetes.
> kube-proxy               1.15.4                 canonical✓
> classic  Kubernetes network proxy that runs on each node.
> kube-scheduler           1.15.4                 canonical✓             -
>        Kubernetes master component that assigns each newly created pod
> to a node.
> kube-controller-manager  1.15.4                 canonical✓             -
>        Kubernetes master component that runs controllers.
> cdk-addons               1.15.2                 canonical✓             -
>        Addons for Canonical Kubernetes
> kube-apiserver           1.15.4                 canonical✓             -
>        Kubernetes master component that exposes the Kubernetes API.
> minikube                 0.8.0                  cmars                  -
>        Run Kubernetes locally
> kubeadm                  1.15.4                 canonical✓
> classic  Tool for bootstrapping Kubernetes clusters.
> kubefed                  1.9.0-alpha3           canonical✓
> classic  kubefed controls the Kubernetes cluster federation manager.
> kubernetes-test          1.15.4                 canonical✓
> classic  tests for kubernetes
> kops                     1.11.1                 terraform-snap         -
>        The easiest way to get a production grade Kubernetes cluster up
> and running.
> kafkactl                 1.2.1                  dwi-di                 -
>        A command-line interface for interaction with Apache Kafka
> traefik-nacc             1.0.1                  nacc                   -
>        Træfik, a modern reverse proxy
> kubelet-eks              1.10.3                 canonical-cloud-snaps
> classic  kubelet is the primary node agent that runs on each node in
> Kubernetes.
> kubectl-eks              1.10.3                 canonical-cloud-snaps
> classic  kubectl controls the Kubernetes cluster manager.
> kube-commander           0.1.8                  anatoly-rugalev        -
>        Browse your kubernetes clusters in a casual way
> kube-proxy-eks           1.10.3                 canonical-cloud-snaps
> classic  Kubernetes network proxy runs on each node.
> client-keystone-auth     v1.14.0+git36.e163280  knobby                 -
>        Client plugin for kubectl to enable keystone authentication.
> k9s                      0.7.12                 derailed               -
>        K9s is a CLI to view and manage your Kubernetes clusters.
> teresa-cli               0.1                    adlermedrado           -
>        Open source tool to deploy apps to Kubernetes clusters
> skaffold                 v0.25.0                terraform-snap         -
>        Easy and Repeatable Kubernetes Development
> kompose                  1.18.0                 ric2b                  -
>        A conversion tool to go from Docker Compose to Kubernetes
> https://kompose.io
> popeye                   0.3.13                 derailed               -
>        A Kubernetes Cluster sanitizer and linter.
> eksctl                   0.1.29                 terraform-snap         -
>        The easiest way to get a production grade Kubernetes cluster up
> and running.
> cdk-addon-mod            1.12.9                 yh742                  -
>        Addons for the Canonical Distribution of Kubernetes
> kwt                      v0.0.5                 nullboxorg             -
>        kwt CLI Snap Package
> satellite                0.1.2                  alanzanattadev         -
>        Advanced scalable Open source intelligence platform
> kubernetes-test-eks      1.10.3                 canonical-cloud-snaps
> classic  tests for kubernetes
> 
> 
> _______________________________________________
> Gutl-l mailing list -- gutl-l@listas.jovenclub.cu
> To unsubscribe send an email to gutl-l-le...@listas.jovenclub.cu
> 
yo estoy usando y probando conjure-up, pero ya vez hay montones de
soluciones. realmente con snap todo esto se vuelve un poco más fácil.
debian 10 soportar snap package. https://conjure-up.io/

-- 
Arian Molina Aguilera
Administrador de Redes y Servicios Telemáticos
Linux Usuario Registrado #392892
Telfs: +53(7)696-7510 ext 236
email: linuxc...@teknik.io
“Nunca consideres el estudio como una obligación,
sino como una oportunidad para penetrar en el bello
y maravilloso mundo del saber. Albert Einstein”

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Gutl-l mailing list -- gutl-l@listas.jovenclub.cu
To unsubscribe send an email to gutl-l-le...@listas.jovenclub.cu

Responder a