OpenShift es la plataforma PaaS de código abierto de Red Hat. OpenShift 3 proporciona una experiencia holística de ejecución de sus aplicaciones utilizando Docker y Kubernetes. Al estilo clásico de Red Hat, todo el trabajo se realiza en código abierto en OpenShift Origin. Esto también impulsa la próxima gran versión de OpenShift en línea y OpenShift Enterprise.
OpenShift 3 utilizando Docker y Kubernetes para la orquestación de contenedores hace que sea realmente sencillo hacer funcionar cualquier producto que tenga una imagen Docker con el mínimo esfuerzo. Este blog explica cómo empezar con Couchbase en OpenShift 3.
Primeros pasos con OpenShift 3
- Descargar la última Caja Vagrant (1,1 en el momento de escribir estas líneas) y Vagrantfile de: openshift.org/vm/. Cópialos en el mismo directorio.
Vagrantfile está configurado para 2 GB de memoria y se puede actualizar si necesita ejecutar más contenedores. OpenShift Master, Node, Docker Registry y otros componentes se ejecutan dentro de la máquina virtual.
Este blog fue escrito usando Vagrant 1.7.4 y VirtualBox 5.0.10r104061.
- Añade la Caja Vagrant:
12345vagabundo caja añada --nombre openshift3 openshift-arranque-1.1.caja==> caja: Caja archivo fue no detectado como metadatos. Añadir it directamente...==> caja: Añadir caja 'openshift3' (v0) para proveedor:caja: Desembalaje necesario archivos de: archivo:///Users/arungupta/tools/openshiftv3/1.1/openshift-bootstrap-1.1.box==> caja: Con éxito añadido caja 'openshift3' (v0) para 'virtualbox'!
- Inicie la máquina virtual:
12345678910111213141516171819202122232425262728293031vagabundo arribaEn máquina 'por defecto' arriba con 'virtualbox' proveedor...==> por defecto: Configuración el nombre de el VM: openshift3==> por defecto: Despejar cualquier anteriormente configure red interfaces...==> por defecto: Preparación red interfaces basado en en configuración...por defecto: Adaptador 1: nat==> por defecto: Reenvío puertos...por defecto: 80 => 1080 (adaptador 1)por defecto: 443 => 1443 (adaptador 1)por defecto: 5000 => 5000 (adaptador 1)por defecto: 8080 => 8080 (adaptador 1)por defecto: 8443 => 8443 (adaptador 1)por defecto: 22 => 2222 (adaptador 1)==> por defecto: Ejecutar 'pre-arranque' VM personalizaciones...==> por defecto: Arranque VM...==> por defecto: En espera para máquina a arranque. Este mayo toma a algunos minutos...por defecto: SSH dirección: 127.0.0.1:2222por defecto: SSH nombre de usuario: vagabundopor defecto: SSH auth método: privado clavepor defecto: Advertencia: Conexión tiempo de espera. Reintento...==> por defecto: Máquina arrancó y listo!==> por defecto: Comprobación de para invitado adiciones en VM...por defecto: En invitado adiciones en este VM do no match el instalado versión depor defecto: VirtualBox! En más casos este es fino, pero en raro casos it puedepor defecto: prevenir cosas tal como compartido carpetas de trabajando correctamente. Si usted véasepor defecto: compartido carpeta errores, por favor escriba a seguro el invitado adiciones en elpor defecto: virtual máquina match el versión de VirtualBox usted tienen instalado enpor defecto: su host y recargar su VM.por defecto:por defecto: Invitado Adiciones Versión: 4.3.20por defecto: VirtualBox Versión: 5.0
Descarga y configuración del cliente OpenShift 3
- Descargar Herramientas cliente Mac 64 bits (
gem install rhc
sólo para v2) de openshift.org/vm/ y extraerlos en un directorio. El listado se ve así:1234567891011alquitrán xzvf ~/Descargas/openshift-origen-v1.1-ac7a99a-darwin-amd64.alquitrán.gzx ./x ./oadmx ./kube-programadorx ./kubeletx ./kube-apiserverx ./openshiftx ./kube-controlador-directorx ./kube-proxyx ./ocx ./kubectl - Verifique la versión del cliente:
123./oc versiónoc v1.1kubernetes v1.1.0-origen-1107-g4c8e6f4
- Eliminar
~/.kube/config
o cámbiale el nombre por otro. - Inicie sesión en OpenShift:
12345678910111213141516171819./oc inicio de sesiónServidor [https://localhost:8443]:En servidor utiliza a certificado firmado por un desconocido autoridad.Usted puede bypass el certificado consulte, pero cualquier datos usted enviar a el servidor podría sea interceptado por otros.Utilice inseguro conexiones? (y/n): yAutenticación obligatorio para https://localhost:8443 (openshift)Nombre de usuario: adminContraseña:Inicio de sesión éxito.Usted tienen acceda a a el siguiente proyectos y puede interruptor entre ellos con 'oc proyecto ':* por defecto (actual)* openshift* turboUtilizando proyecto "por defecto".Bienvenido! Véase 'oc ayuda' a consiga iniciado.
Crear aplicación Couchbase en OpenShift 3
- Crear una nueva instancia de Couchbase:
1234567891011./oc nuevo-aplicación arungupta/couchbase--> Encontrado Docker imagen 9131c5a (2 días antiguo) de Docker Cubo para "arungupta/couchbase"* En imagen flujo se sea creado como "couchbase:latest" que se pista este imagen* Este imagen se sea desplegado en despliegue config "couchbase"* Puertos 11207/tcp, 11210/tcp, 11211/tcp, 18091/tcp, 18092/tcp, 8091/tcp, 8092/tcp, 8093/tcp se sea carga equilibrado por servicio "couchbase"--> Creación de recursos con etiqueta aplicación=couchbase ...ImageStream "couchbase" creadoDeploymentConfig "couchbase" creadoServicio "couchbase" creado--> ÉxitoEjecutar 'oc estado' a ver su aplicación.
arungupta/couchbase
ya que utiliza API REST de Couchbase para preconfigurar el servidor Couchbase:- Cuota de memoria e índice
- Servicio de consultas, datos e índices
- Nombre de usuario y contraseña
- Instale
viaje-muestra
cubo
Este bucket de muestra se utilizará más adelante para consultar datos.
- Compruebe el estado del despliegue:
123456789101112131415161718192021222324./oc estadoEn proyecto por defecto en servidor https://localhost:8443svc/couchbase - 172.30.84.134 puertos 8091, 8092, 8093, 11207, 11210, 11211, 18091, 18092dc/couchbase despliega imagestreamtag/couchbase:última#1 desplegado hace aproximadamente un minuto - 1 vainasvc/docker-registro - 172.30.236.154:5000dc/docker-registro despliega docker.io/openshift/origen-docker-registro:v1.1#1 desplegado hace 4 semanas - 1 vainasvc/kubernetes - 172.30.0.1 puertos 443, 53, 53svc/enrutador - 172.30.233.69:80dc/enrutador despliega docker.io/openshift/origen-haproxy-enrutador:v1.1#1 desplegado hace 4 semanas - 1 vainaAdvertencias:* contenedor "registro" en vaina/docker-registro-1-imxqp tiene reiniciado 5 veces* contenedor "openshift-registry-proxy-1" en vaina/openshift-registro-proxy tiene reiniciado 3 veces* contenedor "router" en vaina/enrutador-1-5grim tiene reiniciado 5 vecesA véase más, utilice 'oc describa /'.Usted puede utilice 'oc consiga todos' a véase a lista de otros objetos.
- Encuentre la lista de Pods:
123456cliente > ./oc consiga poNOMBRE LISTO ESTADO RESTARTS EDADcouchbase-1-5zhju 1/1 Ejecutar 0 1ddocker-registro-1-imxqp 1/1 Ejecutar 5 32dopenshift-registro-proxy 1/1 Ejecutar 3 32denrutador-1-5grim 1/1 Ejecutar 5 32d
- Obtenga más detalles sobre el pod de Couchbase:
123456789101112131415161718192021222324252627282930313233343536./oc describa po couchbase-1-5zhjuNombre: couchbase-1-5zhjuEspacio de nombres: por defectoImagen(s): arungupta/couchbase@sha256:9131c5a283d79e11b6556c94b0b0f8ceba7daf5ba5982bac850100099019959fNodo: localhost.dominiolocal/10.0.2.15Inicio Tiempo: Sáb, 19 Diciembre 2015 08:19:31 -0800Etiquetas: aplicación=couchbase,despliegue=couchbase-1,deploymentconfig=couchbaseEstado: EjecutarRazón:Mensaje:IP: 172.17.0.7Replicación Controladores: couchbase-1 (1/1 réplicas creado)Contenedores:couchbase:Contenedor ID: docker://bd51f655c2a54f92f4634b84f455ca91642a88b925be39126f07df43ce883a33Imagen: arungupta/couchbase@sha256:9131c5a283d79e11b6556c94b0b0f8ceba7daf5ba5982bac850100099019959fImagen ID: docker://c9d204bb75427500ef94263f8f53e8b78f2e56efd37543e620aebb1bc1bd7de1QoS Nivel:cpu: BestEffortmemoria: BestEffortEstado: EjecutarComenzó: Sáb, 19 Diciembre 2015 08:20:21 -0800Listo: VerdaderoReinicie Cuenta: 0Medio ambiente Variables:Condiciones:Tipo EstadoListo VerdaderoVolúmenes:couchbase-volumen-1:Tipo: EmptyDir (a temporal directorio que acciones a vaina's de por vida)Medio:por defecto-ficha-cycb6:Tipo: Secreto (a secreto que debe rellenar este volumen)NombreSecreto: por defecto-ficha-cycb6No eventos.
Consulta del cubo de muestra de Couchbase
- Inicie sesión en Vagrant:
123vagabundo sshÚltima inicio de sesión: Miércoles Nov 18 18:04:32 2015 de 10.0.2.2[vagabundo@localhost ~]$
- Encuentra una lista de todos los contenedores en funcionamiento:
12345678910111213141516[vagabundo@localhost ~]$ docker psCONTENEDOR ID IMAGEN COMANDO CREADO ESTADO PUERTOS NOMBRESbd51f655c2a5 arungupta/couchbase@sha256:9131c5a283d79e11b6556c94b0b0f8ceba7daf5ba5982bac850100099019959f "/entrypoint.sh /opt/" 7 minutos hace Arriba 7 minutos k8s_couchbase.f96da262_couchbase-1-5zhju_default_48e953db-a66c-11e5-8a75-080027c5bfa9_31dbcfec8e5ef3e54d4e openshift/origen-vaina:v1.1 "/pod" 8 minutos hace Arriba 8 minutos k8s_POD.d7dfee57_couchbase-1-5zhju_default_48e953db-a66c-11e5-8a75-080027c5bfa9_b1bcd72d0f7807f389d9 openshift/mysql-55-centos7:última "contenedor-punto-de-entrada" 15 minutos hace Arriba 15 minutos k8s_ruby-helloworld-base de datos.448eeefe_base_de_datos-1-w51ix_turbo_91adac2f-8d66-11e5-bf15-080027c5bfa9_74ecdc59077a078e00a3 172.30.236.154:5000/turbo/origen-rubí-muestra@sha256:c4ed12ec9817fca1fb41a5eb0c66f2edccf2e7375128fd6d64f7180207262193 "contenedor-punto-de-entrada" 16 minutos hace Arriba 16 minutos k8s_ruby-helloworld.88353f9f_frontend-2-1lm99_turbo_42a6dd40-8d67-11e5-bf15-080027c5bfa9_d5110e41e2105f2f4ab6 openshift/origen-haproxy-enrutador:v1.1 "/usr/bin/openshift-r" 16 minutos hace Arriba 16 minutos k8s_router.c3a638e8_router-1-5grim_default_cac8c2d2-8d63-11e5-b835-080027c5bfa9_9d49a633b98052109d08 172.30.236.154:5000/turbo/origen-rubí-muestra@sha256:c4ed12ec9817fca1fb41a5eb0c66f2edccf2e7375128fd6d64f7180207262193 "contenedor-punto-de-entrada" 16 minutos hace Arriba 16 minutos k8s_ruby-helloworld.88353f9f_frontend-2-hdz43_turbo_46657993-8d67-11e5-bf15-080027c5bfa9_f6394539646dcce91f59 openshift/origen-docker-registro:v1.1 "/bin/sh -c 'REGISTRY" 16 minutos hace Arriba 16 minutos registro_k8s.35eb136e_docker-registro-1-imxqp_default_cb3dde6e-8d63-11e5-b835-080027c5bfa9_71586c07d02c8c07f690 openshift/origen-registro-proxy "sh -cx '/bin/tcppm -" 16 minutos hace Arriba 16 minutos k8s_openshift-registro-proxy-1.a0457375_openshift-registro-proxy_default_767fcb12-8d64-11e5-bf15-080027c5bfa9_4c413a1023267082944f openshift/origen-vaina:v1.1 "/pod" 17 minutos hace Arriba 16 minutos k8s_POD.d982fd5f_database-1-w51ix_turbo_91adac2f-8d66-11e5-bf15-080027c5bfa9_8fc2969fbd7f82a88cb1 openshift/origen-vaina:v1.1 "/pod" 17 minutos hace Arriba 16 minutos k8s_POD.e127fd63_frontend-2-1lm99_turbo_42a6dd40-8d67-11e5-bf15-080027c5bfa9_3f73ddf8d2ca01d75a0c openshift/origen-vaina:v1.1 "/pod" 17 minutos hace Arriba 16 minutos k8s_POD.4d0ddc3f_router-1-5grim_default_cac8c2d2-8d63-11e5-b835-080027c5bfa9_036343da5e25f5ba5c4c openshift/origen-vaina:v1.1 "/pod" 17 minutos hace Arriba 16 minutos k8s_POD.e127fd63_frontend-2-hdz43_turbo_46657993-8d67-11e5-bf15-080027c5bfa9_122e502e7c4b2b9e6c39 openshift/origen-vaina:v1.1 "/pod" 17 minutos hace Arriba 16 minutos k8s_POD.cc3ffd58_docker-registro-1-imxqp_default_cb3dde6e-8d63-11e5-b835-080027c5bfa9_0ae24ed785c4cf8d0808 openshift/origen-vaina:v1.1 "/pod" 17 minutos hace Arriba 16 minutos 0.0.0.0:5000->5000/tcp k8s_POD.c686fded_openshift-registro-proxy_default_767fcb12-8d64-11e5-bf15-080027c5bfa9_04225f94
Busque el contenedor Couchbase:
12345[vagabundo@localhost ~]$ docker ps | grep couchbaseCONTENEDOR ID IMAGEN COMANDO CREADO ESTADO PUERTOS NOMBRESbd51f655c2a5 arungupta/couchbase@sha256:9131c5a283d79e11b6556c94b0b0f8ceba7daf5ba5982bac850100099019959f "/entrypoint.sh /opt/" 7 minutos hace Arriba 7 minutos k8s_couchbase.f96da262_couchbase-1-5zhju_default_48e953db-a66c-11e5-8a75-080027c5bfa9_31dbcfec8e5ef3e54d4e openshift/origen-vaina:v1.1 "/pod" 8 minutos hace Arriba 8 minutos k8s_POD.d7dfee57_couchbase-1-5zhju_default_48e953db-a66c-11e5-8a75-080027c5bfa9_b1bcd72d0f7807f389d9 openshift/mysql-55-centos7:última "contenedor-punto-de-entrada" 15 minutos hace Arriba 15 minutosObtener el id de nuestro contenedor:
12docker ps | grep arungupta/couchbase | awk '{ imprimir $1}'bd51f655c2a5 - Obtiene la dirección IP del Pod donde se ejecuta el servidor Couchbase:
12[vagabundo@localhost ~]$ docker inspeccionar --formato '{{ índice .Configurar.Env 6 }}' `docker ps | grep arungupta/couchbase | awk '{ imprimir $1}'`COUCHBASE_SERVICE_HOST=172.30.84.134
- Usa la dirección IP mostrada arriba para iniciar Couchbase Query CLI:
12345678910111213141516171819202122232425[vagabundo@localhost ~]$ docker ejecute -it arungupta/couchbase /op/couchbase/papelera/cbq -motor=http://172.30.84.134:8093Imposible a encontrar imagen 'arungupta/couchbase:última' localmentePrueba a tire de repositorio docker.io/arungupta/couchbase ... última: Tirando de de arungupta/couchbase62baed0d0de5: Ya existe39387babd60f: Ya existe6a2bc8404be0: Ya existebad926a6fb50: Ya existe1a86c4c907e0: Ya existe32132a7c82e9: Ya existe646c3d5ebb71: Ya existe864cbabd77ad: Ya existe8c327c6d4e43: Ya existe8592c697ab61: Ya existe7734f4a832d4: Ya existe35edb38ebc17: Ya existe99f3eb6fb46f: Ya existe91e5fad693c2: Ya existe0cb81f5cc79b: Ya existeec58df60a109: Ya existec9d204bb7542: Ya existeDigerir: sha256:9131c5a283d79e11b6556c94b0b0f8ceba7daf5ba5982bac850100099019959fEstado: Descargado más nuevo imagen para docker.io/arungupta/couchbase:últimaCouchbase consulta concha conectado a http://172.30.84.134:8093/ . Escriba Ctrl-D para salir.cbq>
- Consulta el cubo de muestras:
123456789101112131415161718192021222324252627cbq> seleccionar * de `viaje-muestra` límite 1;{"requestID": "a7bd414a-c571-4b22-8c81-30512b87730d","firma": {"*": "*"},"resultados": [{"viaje-muestra": {"Indicativo": "MILE-AIR","país": "Estados Unidos","iata": "Q5","icao": "MLA","id": 10,"nombre": "40-Mile Air","tipo": "aerolínea"}}],"status": "éxito","métricas": {"tiempo transcurrido": "123.799956ms","executionTime": "116.882044ms","resultCount": 1,"resultSize": 300}}
¡Que aproveche! Este blog muestra lo básico para empezar con Couchbase en OpenShift 3. En futuros blogs se mostrará:
- Cómo desplegar una aplicación en OpenShift y utilizar este Couchbase
- Cómo hacer que esta aplicación sea accesible fuera de OpenShift
- Cómo escalar Couchbase en OpenShift
- Posiblemente algunos otros artículos interesantes que vienen
¿Tiene alguna sugerencia sobre lo que le gustaría ver?
Más información sobre Couchbase 4.1: