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”
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