1 --- DevOps DevOps Primeros Detallada Introducción

1 --- DevOps DevOps Primeros Detallada Introducción

DevOps entrada detallados 2 --- Jenkins integrados sostenibles

DevOps de entrada detalladas 3 --- plataforma de gestión de contenedores Rancher

1 DevOps Introducción

  1.1 ¿Cuál es DevOps

      DevOps es Desarrollo y Operaciones abreviatura de dos palabras, definición de referencia Baidu Encyclopedia:

       DevOps es un método o concepto, que abarca el desarrollo, prueba, operación y mantenimiento de todo el proceso. DevOps es mejorar los métodos de comunicación y colaboración y procesos de los distintos departamentos de desarrollo de software de calidad, pruebas, operación y mantenimiento, y operación, DevOps énfasis en los desarrolladores de software y pruebas de software, operación y mantenimiento de software, garantía de calidad ( QA comunicación efectiva entre) los departamentos y cooperación, subrayado por el enfoque automatizado para la gestión de cambios de software, integración de software, desde el software incorporado en la prueba, la liberación más rápida y fiable, y en última instancia entregar software en tiempo.

       

 1.2 DevOps cadena de herramientas

        DevOps elevan en 2009 anuales en los últimos años a causa de la nube, el desarrollo de la Internet para promover la DevOps desarrollo de infraestructura y cadenas de herramientas, la aparición de un gran número de excelentes herramientas, incluyendo el desarrollo, prueba, operación y mantenimiento de diversos campos, tales como : GitHub , el Git / SVN , estibador , Jenkins , Hudson, la Ant / Maven / la Gradle , el selenio , QUnit , el JMeter similares. La figura está DevOps conjunto de herramientas asociadas con:

     

 

2 Docker

  2.1 La tecnología de virtualización

     2.1.1 Descripción del problema

        El desarrollo de software de la industria de Internet tiene enormes sufrido cambios, un cambio notable es el aumento de tamaño del software, basada en los servicios de software microarquitectura encontró tales retos en los despliegues de producción:

1 , la configuración del lenguaje de desarrollo de micro-servicios, sistema operativo, las bibliotecas dependientes en diferentes entornos, la forma rápida instalación, migración, software de configuración?

2 , un software compuesto por una serie de micro-servicios, cómo desplegar rápidamente servicio de micro-volumen?

3 , cómo efectivamente conducente a los recursos informáticos?

    Pensamientos para las primeras dos preguntas:

        proceso de implementación de software tradicional es: instalar el sistema operativo -> Para su instalación depende de software / Biblioteca -> Instalar el software (micro Servicios) -> software de configuración -> en la línea que va de software finales, los servicios y la cara de un gran número de servicio de micro-micro-cluster utilizar este programa no sólo es ineficaz, sino que también se pueden presentar los problemas de compatibilidad medioambiental, está claro este esquema no es adecuado para su uso en la implementación de micro-servicio.

    Imagínese: Si usted tiene una tecnología que puede rápida y software requerido para el paquete de configuración vario ambiente, a granel por encima de copia va a resolver el problema.

    Pensamientos para la tercera pregunta:

        En una computadora sólo para instalar un micro servicio informático gran desperdicio de recursos, si se puede instalar múltiples micro-servicios de manera eficaz conducentes a los recursos informáticos, pero para la instalación del software y lotes de distribución o de la cara 1 , 2 problema.

    Previstas: una pluralidad de servicio de instalación de micro-ordenador, el servicio utiliza una técnica de micro-envasado, el despliegue de replicación, independientemente uno de otro, y el aislamiento entre el servicio de micro.

    2.1.2 La tecnología de virtualización

     Referencias Baidu Enciclopedia ( https://baike.baidu.com/item/%E8%99%9A%E6%8B%9F%E5%8C%96/547949 )

     

        Resumen: La virtualización es una tecnología de software de infraestructura, sistemas, software y otros operativo de TI recursos para una gestión eficaz, por lo que los usuarios ya no están limitados por los recursos físicos, mejorar la utilización de los recursos informáticos. La tecnología de virtualización es la base para la computación en nube, tales como Ali nube nube de acogida, por lo que la tecnología de virtualización de aplicaciones Tencent nube.

        Incluyendo la tecnología de virtualización como un conjunto de dos zonas: la virtualización de hardware y software de virtualización, dividido en concreto: la virtualización de redes, virtualización del almacenamiento, la virtualización de escritorios, la virtualización de servidores, se suele decir la mayoría es la virtualización de servidores.

        La virtualización de servidores es ejecutar múltiples máquinas virtuales en el mismo servidor físico por lo que es la CPU , memoria, disco, la E / S y otras instalaciones de hardware para dar servicio a cada máquina virtual que se ejecuta un software diferente en cada máquina virtual, lo virtual es el aislamiento entre la máquina.

        Hay dos principales tecnologías de virtualización de servidores:

. 1 , hipervisor también llamado la VMM ( Virtual Machine monitor ) El método de monitor de máquina virtual es decir hipervisor es un sistema operativo y de abstracción de hardware entradas distintas anfitrión implementados ( Host máquina puede funcionar al mismo tiempo) una pluralidad de clientes (huésped de la máquina ) cada cliente es una máquina virtual, la máquina virtual para compartir eficientemente los recursos de hardware del huésped. La figura siguiente:

       Instalado en el sistema operativo del servidor (host), e instalar el hipervisor software de administración de máquinas virtuales, como VMware , VirtualBox , etc., por el hipervisor para gestionar múltiples máquinas virtuales, es necesario instalar un sistema operativo invitado en cada máquina virtual, bibliotecas dependientes, software de aplicación.

    2 , Contenedores recipiente Tecnología

    

       Recipiente tecnología ventana acoplable motor sustituye al hipervisor , cargador de muelle motor está en marcha un proceso en el alojamiento del sistema operativo, el proceso de la gestión de múltiples contenedores estibador, cada ventana acoplable contenedor de software integra aplicaciones, dependencias, aislado de cada contenedor.

 

  3 , la comparación técnica:

      El consumo de recursos:

      Debido a que la máquina virtual es independiente de la huella sistema operativo de estibador y más.

      Velocidad de arranque :

      Incluyendo el sistema operativo de la máquina virtual, iniciar la máquina virtual para iniciar el equivalente de un sistema operativo, no el mismo recipiente, el recipiente incluye sólo el núcleo del sistema operativo, se inicia una instancia del contenedor es equivalente a comenzar un proceso para comenzar rápido que la velocidad de la máquina virtual recipiente.

      volumen:

      Envase que incluye el núcleo del sistema, software y bibliotecas dependientes operativos, software de máquina virtual e incluye no sólo las bibliotecas dependientes serán empaquetados en un sistema operativo completo, la máquina virtual es mayor que el volumen del recipiente y más.

    2.1.3 acoplable Introducción

Ver otro artículo: Docker Introducción e instalación

 

 2.2  servicios de implementación a micro acoplable

   2.2.1 ¿Cuál es Dockerfile

    Dockerfile es el guión de una serie de comandos y parámetros constituido estos comandos a la imagen base y, finalmente, crear una nueva imagen.

    1 , para los desarrolladores: proporcionar un entorno de desarrollo coherente para el equipo de desarrollo;

    2 , para los probadores: Usted puede tomar una imagen de espejo directa construido por el desarrollo o Dockerfile para construir un nuevo archivo de imagen para empezar a trabajar;

    3 , para el personal de operación y mantenimiento: En el tiempo de implementación, permite una migración transparente de aplicaciones.

   2.2.2 comandos Dockerfile comúnmente utilizados

  La siguiente springboot a proyecto como un ejemplo, la preparación de DockFile en el directorio del proyecto

FROM openjdk:8-jre-alpine
MAINTAINER wolter <[email protected]>
VOLUME /tmp
COPY target/live-service-2.0.0.jar /usr/local
EXPOSE 8099
ENTRYPOINT ["java", "-jar", "-Ddubbo.application.logger=slf4j","/usr/local/live-service-2.0.0.jar"]

  pom.xml aumentó ventana acoplable-maven-plugin enchufe, cuyo papel es el de construir ventana acoplable espejo y espejo acoplable empuje depósito privado (en este caso, haciendo caso omiso de la ventana acoplable construir una biblioteca privada);

<build>
        <finalName>${project.artifactId}-${project.version}</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>1.0.0</version>
                <!--docker镜像相关的 配置 信息-->
                <configuration>
                    <!--Dockerfile文件所在目录-->
                    <dockerDirectory>${project.basedir}</dockerDirectory>
                    <dockerHost>http://ip:2375</dockerHost>
                    <!--TAG,这里用工程版本号-->
                    <imageTags>
                        <imageTag>${project.version}</imageTag>
                    </imageTags>
                    <!--镜像名,这里用工程名-->
                    <imageName>ip:5000/${project.artifactId}:${project.version}</imageName>
                    <!--构建镜像的配置信息-->
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}</directory>
                            <include>${project.artifactId}-${project.version}.jar</include>
                        </resource>
                    </resources>
                </configuration>
            </plugin>
        </plugins>
    </build>

  ventana acoplable idea instalar plug-ins 

Acoplable dirección de la configuración del motor

 Terminal en el directorio del proyecto, ejecute el comando del compilador

  Una vez finalizada la construcción, el espejo se puede ver en la ventana acoplable servidor

  Hasta ahora la imagen de arranque se ha cargado correctamente.

Publicado 41 artículos originales · ganado elogios 47 · Vistas a 30000 +

Supongo que te gusta

Origin blog.csdn.net/u014526891/article/details/94603950
Recomendado
Clasificación