Actividad 01 Windows Azure y Control de Versiones con SVN



Documentos relacionados
Instituto Tecnológico de Las América. Materia Sistemas operativos III. Temas. Facilitador José Doñe. Sustentante Robín Bienvenido Disla Ramirez

Instituto Tecnológico de Las Américas (ITLA)

INSTRUCTIVO DE INSTALACIÓN DE OMEKA 2.1.4

CENTRO DE INVESTIGACIÓN CIENTÍFICA Y DE EDUCACIÓN SUPERIOR DE ENSENADA, BAJA CALIFORNIA Departamento de Cómputo / Dirección de Telemática ÍNDICE

Instituto Tecnológico Las Américas (ITLA) Sistemas Operativos 3 (SO3) Daniel Alejandro Moreno Martínez. Matrícula:

Servidor Web Apache Knoppix Linux.-

Paso 1 - Servidor de correo en Ubuntu: Instalar Apache 2

Guía de instalación del sistema de documentos laborales Orquídea

Servidor Apache. Instalación Configuración Apache con Webmin 24/03/2014. Vicente

INSTALACIÓN DE GITLAB

TÉCNICO EN PRACTICA 3: INTRODUCCION. Protocol Secure.) En esta guía por Linux. OBJETIVOS. Al finalizar esta. servidor WEB y FTP.

Ficheros de configuración de Nagios (ejemplo con nrpe y snmp)

PARTE III. Instalación y Configuración De Cacti

PRACTICA 9 SERVIDOR WEB APACHE SERVIDOR WEB APACHE. JEAN CARLOS FAMILIA Página 1

Manual de Instalación

MANUAL DE INSTALACIÓN OWNCLOUD

Implementación de una Solución Tecnológica para la Gestión y Control de la Planificación Institucional del Gobierno Regional de Los Lagos

INSTALACIÓN DE MySQL Índice de contenido

MANUAL DE USUARIO PARA LA INSTALACION DE LOS AGENTES COMMVAULT SIMPANA 9.0

Instalación Webmin y Servidor Apache

Acá vamos a ocuparnos de cómo realizar la instalación de una red intra-aula sobre Linux, concretamente en la distribución de GNU/Linux Ubuntu 9.04.

Profesor: José Luis Di Biase

Guí a Ra pida Dropbox.

INSTALACIÓN DE UBUNTU SERVER 12.4 EN MÁQUINA VIRTUAL

Manual de instalación del Programa. Para WINDOWS

Microsoft Virtual Server

Este documento recoge ejercicios prácticos relacionados con la gestión y monitorización de redes y servicios IPv6.

Animalandia. Manual de instalación. (Actualizado: Sept-2015) Fernando Lisón Martín

Ubuntu Server HOW TO : SERVIDOR VPN. EN ESTE SE REALIZA LO SIGUIENTE: En este how to se le va a enseñar como usar vpn. Qué es una VPN?

Servidor de correo en Ubuntu 10.4: Instalar Apache 2.

Servidor FTP en Ubuntu Juan Antonio Fañas

Tutorial: Primeros Pasos con Subversion

Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación. IIC1102 Introducción a la Programación

INSTALACION DE UN SERVIDOR PENTAHO 5.2 CON POSTGRESQL 9.1 EN LINUX CENTOS 6.6 de 32 BITS

11º Unidad Didáctica. Conexión Remota a Ordenador. Eduard Lara

UNIVERSIDAD ICESI Guía de instalación y configuración del servicio de Apache en Ubuntu. Los objetivos de esta práctica de laboratorio son:

MANUAL DE INSTALACIÓN GLPI EN CANAIMA

Resumen. DESlock+ Guía Básica de Configuración. Requerimientos del Sistema:

Integración Continua en Hudson

PROCESO DE INSTALACIÓN Y CONFIGURACIÓN DE APACHE, PHP Y MySQL

Instalación y configuración del servidor FTP Filezilla en Windows 2003 Server. Vicente Sánchez Patón I.E.S Gregorio Prieto.

Servidor de correo en Ubuntu: Instalar y configurar servidor de correo

INSTALACION DE UN SERVIDOR PENTAHO 5.2 CON POSTGRESQL 9.1 EN LINUX CENTOS 6.6 de 32 BITS

La Video conferencia con Live Meeting

Servidor. Comenzaremos por confirmar que el servicio NFS esta instalado y ejecutandose desde la terminal, escribiremos lo siguiente: #rpm -q nfs-utils

SYNCTHING. Herramienta de sincronización de datos vía LAN. Laboratorio de Sistemas Operativos y Redes. Caminos Diego; Zapatero R.

INSTALACIÓN DE UBUNTU SERVER 12.4 EN MÁQUINA VIRTUAL

Manual de instalación de un Servidor Web

El proceso de Instalación de Microsoft SQL Server 2008

Manual de instalación de la plataforma web para producción

Instalando CodeKa v1.0 sobre Bitnami Xamp Stack (para Windows, Linux, OS X y Solaris).

PEDRO REVERTE GÓMEZ SERVICIOS DE RED E INTERNET / IMPLANTACIÓN DE APLICACIONES WEB 2º ASIR

Instalación de Tomcat7 en Ubuntu

Manual de Instalación y Configuración

Redes de área local Aplicaciones y Servicios Linux NFS

Instalación de FileZilla FTP Server

REQUISITOS DEL SISTEMA. Software Servidor. Cliente. Hardware Servidor. Cliente

SONARQUBE. Sandoval Lucas, Leutwyler Nicolás 1er cuatrimestre 2015

Ubuntu Server HOW TO : SERVIDOR FTP EN ESTE SE REALIZA LO SIGUIENTE: En este how to se le va a enseñar como compartir datos en un servidor ftp..

CAPITULO VI ANEXOS 6.1. ANEXO 1: CRONOGRAMA DE ACTIVADES. Gráfico 31 Cronograma de Actividades Parte1

Servidor DNS sencillo en Linux con dnsmasq

Guía de Instalación del servicio de BackupOnline de Idecnet. Indice

Servidor Web-Firewall Proxy DHCP

UNIDAD DIDACTICA 13 INICIAR SESIÓN EN LINUX DE FORMA REMOTA

INSTRUCTIVO DE INSTALACION ATOM 2.0.1

Creating your Single Sign-On Account for the PowerSchool Parent Portal

1. Ir a

Tutorial: Instalación de Eclipse para programar Android en Windows

Instalando Apache 2.0 en Ubuntu 11.04

Para poder instalar el producto, tendremos que obtener el instalador apropiado para nuestro entorno hardware y software.

MÒDUL 1: Instal lació, administració, gestió i implementació del servidor web i la seva seguretat. Conexión Remota a Computador

Ubuntu Server HOW TO : NFS EN ESTE SE REALIZA LO SIGUIENTE: En este how to se le va a enseñar como compartir datos en una Red Linux, usando NFS.

Actualizaciones de GateDefender Performa desde un servidor web local

Social Coding GIT - El control de versiones es la gestión de los diversos cambios que se realizan sobre algún archivo, en este caso, código.

ANEXO 3 MANUAL PARA INSTALACION PERSONALIZADA DE ABIESWEB EN LINUX

Instituto Tecnológico de Las América. Materia Sistemas operativos III. Temas. Facilitador José Doñe. Sustentante Robín Bienvenido Disla Ramirez

Laboratorio de Desarrollo Software

1/ Implantación de Arquitectura Web

SERVIDOR WEB. Servidores web IIS (Windows) / Apache (Windows y Linux)

Proyecto Fortalecimiento de las capacidades TIC en PyMEs y Gobiernos Locales mediante el uso de software libre Manual de Instalación Openbravo POS

Ubuntu Server HOW TO : SQUID. EN ESTE SE REALIZA LO SIGUIENTE: En este how to se le va a enseñar como instalar servidor proxi Squid.

SSH. El siguiente paso será descargarnos el módulo sshd.wbm.gz de la página para instalarlo.

MÒDUL 1: Instal lació, administració, gestió i implementació del servidor web i la seva seguretat. Instalación de servidores FTP y WEB en Linux

CREAR UN REPOSITORIO DE ALMACENAMIENTO NFS PARA XEN SERVER O VMWARE SOBRE WINDOWS SERVER 2003 R2

SUBVERSION Y SUBCLIPSE

Hands-On Lab. Windows Azure: Java, Eclipse y Azure. Última Actualización: 16/12/2011

Redatam+SP REcuperación de DATos para Areas pequeñas por Microcomputador

Actividad 1: Utilización cliente FTP (mediante línea de comandos, entornos gráficos y navegadores/exploradores) (I).

Un pequeñísimo tutorial para explicar cómo darse de alta al MEJOR SISTEMA de compartición, backup... en la web.

Uso del servidor gráfico X en los servidores del CESGA mediante PuTTY y Cygwin

SUS (Software Update Services)

AQReports: Plugin de integración de JasperReports en AbanQ

ESCUELA POLITÉCNICA NACIONAL 28 DE OCTUBRE, 2015 ORTIZ JÁCOME LEONARDO JOSÉ

Manual de instalación Sistema S.I.S.E. Versión 1.0

CENTRO DE BACHILLERATO TECNOLÓGICO INDUSTRIAL Y DE SERVICIOS #166 Pablo Torres Burgos

Configuración de myapps

Manual de instalación de UdelaRTEX

Terminal Server desde una PC remota

Transcripción:

Actividad 01 Windows Azure y Control de Versiones con SVN Herramientas y Métodos de Ingeniería del Software. Universidad de Almería Joaquín Cañadas. Curso 2014-15 Introducción... 1 Términos de los pases académicos de Azure... 3 Pasos a realizar en la sesión... 3 1. Activación de la cuenta de Windows Azure... 3 2. Creación de la máquina Ubuntu... 4 3. Instalación del servidor Subversion... 4 4. Installing Apache on Ubuntu: reverse proxy... 7 5. Configuración y Administración de Collabnet SVN... 9 6. Ejercicios SVN... 13 7. Despliegue de la HomePage... 14 Introducción Para gestionar adecuadamente los artefactos producidos durante el desarrollo de software y sus versiones, así como para trabajar en equipo, necesitamos en un sistema de control de versiones (SVN, GIT, TFS, etc). La nube nos ofrece recursos muy valiosos para esta tarea. Esta práctica tiene como objetivos: 1. Activar la cuenta de Windows Azure para el equipo. 2. Crear una máquina virtual Ubuntu Server en Azure sobre la que instalaremos los servicios necesarios, el primero será el servidor SVN. 3. Instalar y configurar un sistema de control de versiones Subversion para el equipo en un servidor centralizado: Collabnet Subversion Edge. Este sistema lo usaremos durante el resto de la asignatura. 4. Gestionar adecuadamente el servidor SVN: Crear usuarios y crear equipos Crear repositorios Asignar permisos de acceso,... 5. Realizar unos ejemplos sencillos sobre el servidor SVN del equipo: para ello es necesario usar un cliente adecuado al servidor que hayamos instalado, por ejemplo, TortoiseSVN, Subversive en Eclipse, etc. Comenzaremos por los primeros ejemplos son los vistos en clase. Doc: Windows Azure y Control de Versiones con SVN (v.1.51) 1

Server 1 (Linux Ubuntu) SVN, GitLab, Jenkins, Tomcat,... Software Eng. support and teamwork Server Server 2 Testing or preproduction Server SQL Azure Web Apps Mobile Apps Open ports: 22 (SSH); 80; 8080 (HTTP) UAL Wifi for Students Ad Lab or Student s Computers (PCs and Mac books) La instalación del servidor SVN la realizaremos en un servidor virtual en la nube sobre el que instalaremos esta y otras herramientas de soporte a las actividades de ingeniería del software. Como servidor utilizaremos una máquina virtual en la cuenta Windows Azure del equipo, se recomienda Linux Ubuntu Server, ya que todas las herramientas que vamos a usar utilizan mejor los recursos en Linux que en Windows. This figure describes de infrastructure and resources available for this course. Each team has: - a Windows Azure acamedic pass which provides, among others, 2 small compute instances, to create two virtual machines in the cloud, and 35GB of extra storage. - Laptops for local work. Doc: Windows Azure y Control de Versiones con SVN (v.1.51) 2

Términos de los pases académicos de Azure http://azure.microsoft.com/en-us/offers/azure-pass/ - You receive Microsoft Azure monetary credits as entitled customers $100/month, 6 months. - The choice is yours on how you use your Microsoft Azure credits. Use them on any Microsoft Azure service including, Virtual Machines, Websites, Cloud Services, Mobile Services, Storage, SQL Database, HDInsight, Media Services, and many more. - Use up to your monthly Microsoft Azure credits at no charge. - If you exceed your monthly credits, your service will be disabled for that month. - Any unused monthly credits cannot be carried over to subsequent months and cannot be transferred to other Azure subscriptions. - You can choose to turn off your Spending Limit, and any usage each month in excess of the monthly credits will be charged at the Pay-As-You-Go rates. Pasos a realizar en la sesión 1. Activación de la cuenta de Windows Azure Los pasos a realizar son: 1. Apuntarse a un equipo de prácticas (2 personas) 2. Crear una cuenta Microsoft (live.com) para el equipo de prácticas. 3. Seguir los pasos de activación de la cuenta de Windows Azure indicados en el documento que encontrareis en el foro del equipo de prácticas Getting_Started- Windows_Azure_Platform_Academic_Pass.pptx. Doc: Windows Azure y Control de Versiones con SVN (v.1.51) 3

During the Azure registration process, enter the information related to the University of Almería: First Name: TeamXX Last Name: HMIS Email: your new Microsoft account Company Name: University of Almeria Zip Code: 04120 Check your email in order to read the activation email. It last no more than 5 minutes. After that, log in to https://manage.windowsazure.com/ 2. Creación de la máquina Ubuntu 4. Crear un servidor virtual Linux Ubuntu Server para el Servidor de soporte IS. Para ello hay que seguir los pasos indicados en http://www.windowsazure.com/es-es/ Windows Azure / Documentation / Virtual Machines / Linux Create a virtual machine running Linux 5. Para poder acceder a la máquina Linux habrá que usar la aplicación Putty. Se explica con detalle aquí: How to log on to a virtual machine running Windows Server 6. Crear los usuarios en la máquina Linux, uno para cada miembro del equipo, y otro para el profesor. 7. Si se desea mayor seguridad usar parejas de claves SSH en lugar de login/password ENTREGA: Enviar un mensaje en el foro privado del equipo con Name of the Linux virtual machine:.cloudapp.net Professor credentials: username and password. 3. Instalación del servidor Subversion http://www.collab.net/downloads/subversion La instalación de Collabnet Subversion Edge sobre Ubuntu en Azure se puede realizar siguiendo los pasos que se indican en el enlace a continuación. Como requisito será necesario tener instalado JDK, se recomienda OpenJDK, y Python. http://www.collab.net/lightbox/download_info/61/34 Descargar Collabnet del siguiente enlace: wget https://downloads-guests.open.collab.net/files/documents/61/10489/collabnetsubversionedge- 4.0.13_linux-x86_64.tar.gz --> Actualizado 2015! Extraerlo a la carpeta /opt/ mediante el commando cd /opt sudo tar -zxvf /home/youruser/yourfile.tar.gz Doc: Windows Azure y Control de Versiones con SVN (v.1.51) 4

Install Java: Open JDK sudo apt-get install openjdk-7-jdk Install Python: sudo add-apt-repository ppa:fkrull/deadsnakes sudo apt-get update sudo apt-get install python2.7 How to set JAVA_HOME for OpenJDK? http://askubuntu.com/questions/175514/how-to-set-java-home-for-openjdk Open /etc/environment in any text editor like nano or gedit and add the following JAVA_HOME="/usr/lib/jvm/open-jdk" (java path could be different) JAVA_HOME="/usr/lib/jvm/java-7-openjdk-amd64 este es el path para OpenJDK After that, close Putty session and enter again. Cambiar permisos a la carpeta /opt/csvn: sudo chown -R $USER:$USER /opt/csvn/ La variable $USER tomará el valor del usuario con el cual actualmente estás identificado. Install the application so that it will start automatically when the server restarts $ cd /opt/csvn $ sudo -E bin/csvn install Comprobar que el usuario con permisos en la carpeta csvn (dados antes con chown) es el mismo que aparece en el archivo data/conf/csvn.conf en la variable RUN_AS_USER. Start the server. Be sure that you are logged in as your own use rid and not running as root. This will take a few minutes. $ bin/csvn start Apertura de puertos en Windows Azure Tras el paso 5 de la instalación, csvn start, mientras se carga el servidor, será necesario abrir los puertos 3343 y el 9090 en Azure (ver EXTREMOS de la máquina virtual) Doc: Windows Azure y Control de Versiones con SVN (v.1.51) 5

Agregar Finalmente, debemos poder entrar en la administración de Collabnet Subversion Edge: Attention!! When using the UAL Wifi, only ports 22, 80, 443 and 8080 are available to connect in machines outside the UAL!! We need to connect to ports 3343 and 9090!! Doc: Windows Azure y Control de Versiones con SVN (v.1.51) 6

4. Installing Apache on Ubuntu: reverse proxy Alternativamente se puede usar nginx, como se propone después! Proxy inverso con Apache2 sudo apt-get install apache2 Apache2 is installed on the following path: /etc/apache2/ Configuring Apache2 Historically the main Apache2 configuration file is httpd.conf However, in Ubuntu 14.04 the Apache configuration resides in /etc/apache2/apache2.conf and all options modified by users should go into a new *.conf-file inside /etc/apache2/conf-enabled/. This method should be "updatesafe", as httpd.conf or apache2.conf may get overwritten on the next server update. This is implemented inside /etc/apache2/apache2.conf, you will find the following line, which includes those files: # Include the virtual host configurations: IncludeOptional conf-enabled/*.conf Adding virtual host and reverse proxy to Apache2 We need to install two paths in reverse proxy configuration, to enable Collabnet Subversion administration tool (port 3343) and SVN server (port 9090) to be available on port 80. First, we install the mod_proxy Apache2 module. sudo apt-get install libapache2-mod-proxy-html sudo apt-get install libxml2-dev sudo a2enmod proxy proxy_http sudo /etc/init.d/apache2 restart Then, create a new file with the virtualhost configuration: sudo nano /etc/apache2/conf-enabled/virtualhosts.conf <VirtualHost *:80> ProxyRequests off ProxyPass /csvn http://localhost:3343/csvn ProxyPassReverse /csvn http://localhost:3343/csvn ProxyPass /svn http://localhost:9090/svn ProxyPassReverse /svn http://localhost:9090/svn </VirtualHost> Save the file, and restart Apache2: sudo /etc/init.d/apache2 restart Refs: https://www.digitalocean.com/community/tutorials/como-configurar-virtual-host-de-apache-en-ubuntu-14-04-lts-es Doc: Windows Azure y Control de Versiones con SVN (v.1.51) 7

Proxy inverso con Nginx # <- esto quiere decir que el comando hay que ejecutarse como root, o con sudo. # apt-get install nginx # nano /etc/nginx/sites-enabled/default Borrar todo el contenido del archivo, y poner lo siguiente, editando el nombre de máquina por el vuestro: server { listen 80 default_server; root /usr/share/nginx/html; index index.html index.htm; server_name NOMBRE DE VUESTA MÁQUINA.cloudapp.net; location / { try_files $uri $uri/ =404; } location /csvn { proxy_pass http://127.0.0.1:3343/csvn; } location /svn { proxy_pass http://127.0.0.1:9090/svn; } } Finalmente, ejecutar nginx: # service nginx start Doc: Windows Azure y Control de Versiones con SVN (v.1.51) 8

5. Configuración y Administración de Collabnet SVN Wizard de configuración. Cambiar el nombre del servidor (y el Puerto si no es 9090) Crear usuarios Un usuario para cada miembro del equipo, y otro para el profesor En caso de duda, consultar la ayuda: Doc: Windows Azure y Control de Versiones con SVN (v.1.51) 9

Crear repositorios Doc: Windows Azure y Control de Versiones con SVN (v.1.51) 10

Hay que crear un repositorio para cada miembro del equipo sobre el que se ejecutarán los ejemplos sencillos y otro repositorio para el proyecto de homepage del equipo. Asignar permisos de acceso Doc: Windows Azure y Control de Versiones con SVN (v.1.51) 11

Se pueden crear grupos de usuarios para asignar permisos de acceso (lectura y escritura) a los repositorios, tantos grupos como se deseen en el bloque [groups] Tras ello, se asignan permisos a cada repositorio: [/] hace referencia a la carpeta raíz donde cuelgan todos los repositorios. Lo adecuado para esa carpeta es dar permiso al grupo de administradores, y denegar acceso al resto. [repo1:/] hacer referencia a la raíz del repositorio 1. Con @nombregrupo se asignan permisos de acceso a los miembros del grupo (r: read, w: write, rw: read&write) A continuación se muestra un ejemplo de archivo de configuración: ## Grupos [groups] Admin_User_Group = admin,joaquin users = usuario1, usuario2 ## Repositorios [/] @Admin_User_Group = rw * = [hmisrepo01:/] @users = rw [hmisrepo03:/] @users = rw Doc: Windows Azure y Control de Versiones con SVN (v.1.51) 12

6. Ejercicios SVN Se pide: 1) Resolver de forma individual (cada miembro del equipo en su repositorio) los ejemplos básicos vistos en el aula de GD: simples y con ramas. 2) Crear un proyecto HomePage del equipo, sincronizado con un repositorio SVN, para la página Web estática del grupo. La HomePage debe tener por ahora, al menos 3 páginas: 1. Principal: nombre del equipo, número de equipo, links a las herramientas instaladas (Collabnet y SVN) 2. Miembros del equipo: una página por miembro del equipo, que incluya nombre y foto (o nick y avatar) 3. Links: Repositorio de HMIS, documentación oficial Azure, documentación oficial CollabNet SVN, documentación SVN (SVN book: http://svnbook.red-bean.com/en/1.7/), etc, etc La página debe ser creada de forma colaborativa, cada miembro del equipo debe hacer una parte del trabajo, y sincronizar los archivos locales con el repositorio SVN de nombre homepage en vuestro servidor. Se deben incrustar las imágenes disponibles en el repositorio de la asignatura http://sauce.ual.es:9090/svn/hmis2014/trunk/gt/a01/logoual/. Para ello, utilizar la propiedad externals sobre el repositorio HomePage. Una vez terminada la Homepage del equipo, desplegarla como página principal en vuestro servidor Apache que se está ejecutando en el puerto 80 del servidor Linux. Para ello, usar el comando de consola svn para hacer un checkout como es explica a continuación. Doc: Windows Azure y Control de Versiones con SVN (v.1.51) 13

7. Despliegue de la HomePage El despliegue de la Homepage en vuestro servidor se realiza copiando los archivos de la HomePage en la ruta raiz (DocumentRoot) del servidor que se esté ejecutando en el puerto 80 (Apache2 o Nginx). En Apache2, el documentroot predeterminado es /var/www. Para copiar la homepage en ese path, debéis hacer checkout desde vuestro repositorio Homepage, mediante el comando: sudo svn co URLdelRepo /var/www --username=miusuario Os recomiendo que antes probéis en otra carpeta, por ejemplo /home/miusuario, y verifiqueis que el checkout se está haciendo correctamente: svn co URLdelRepo /home/miusuario --username=miusuario Tras ello, haced el checkout en la ruta "buena". Después, simplemente con el navegador conectad a vuestro servidor y debería visualizar vuestra homepage. Si no se visualizan vuestros archivos, probad el comando: sudo tail /var/log/apache2/error.log In order to find out exact path that Apache tries to find. En mi caso, mi servidor Apache busca en la ruta /etc/apache2/htdocs, por lo que el checkout lo he tenido que hacer en esa otra ruta. Para los que useis Nginx tendreis una carpeta DocumentRoot diferente, pero el proceso es el mismo. En el servidor del profesor, estarán enlazadas las páginas principales de todos los equipos... algo así: Doc: Windows Azure y Control de Versiones con SVN (v.1.51) 14