universidad de costa rica - biblioteca.uci.ac.cr · universidad para la cooperaciÓn internacional...
Post on 11-Oct-2020
15 Views
Preview:
TRANSCRIPT
UNIVERSIDAD PARA LA COOPERACIÓN INTERNACIONAL
(UCI)
Creación de procedimientos para actualización del sistema operativo de
servidores LINUX
Ram Antonio Miranda Cajiga
PROYECTO FINAL DE GRADUACIÓN PRESENTADO COMO REQUISITO
PARCIAL PARA OPTAR POR EL TÍTULO DE MASTER EN
ADMINISTRACIÓN DE PROYECTOS
San José, Costa Rica
Abril, 2013
ii
UNIVERSIDAD PARA LA COOPERACIÓN INTERNACIONAL
(UCI)
Este Proyecto Final de Graduación fue aprobado por la Universidad como
Requisito parcial para optar al grado de Máster en Administración de
Proyectos
________________________________
Ing. Luis D. Argüello Araya, MAP, PMP
PROFESOR TUTOR
_________________________
MSc. Fabio Muñoz Jiménez, PMP
LECTOR No.1
__________________________
Ing. Juan Carlos Navarro, MAP
LECTOR No.2
________________________
Ram Antonio Miranda Cajiga
SUSTENTANTE
iii
DEDICATORIA
“Dedicado a mi familia, mascota y amigos”
iv
AGRADECIMIENTOS
“Agradezco a mi familia, a mi trabajo y mi mascota por su
apoyo incondicional”
v
ÍNDICE
HOJA DE APROBACION ii
DEDICATORIA iii
AGRADECIMIENTO iv
INDICE v
INDICE ILUSTRACIONES vii
INDICE CUADROS viii
RESUMEN EJECUTIVO ix
ÍNDICE ................................................................................................................ v
ÍNDICE DE FIGURAS ....................................................................................... viii
ÍNDICE DE CUADROS ....................................................................................... ix
Glosario de términos y abreviaturas ................................................................... x
RESUMEN EJECUTIVO ..................................................................................... xi
1 INTRODUCCIÓN........................................................................................ 13
1.1 Antecedentes ...................................................................................... 13
1.2 Problemática ....................................................................................... 13
1.3 Justificación del problema ................................................................... 14
1.4 Objetivo general .................................................................................. 15
1.5 Objetivos específicos. ......................................................................... 15
2 MARCO TEÓRICO ..................................................................................... 16
2.1 Marco institucional .............................................................................. 16
2.2 Teoría de Administración de Proyectos .............................................. 18
vi
2.3 Características generales de un servidor web .................................... 21
2.4 Características generales de las aplicaciones web ............................ 23
2.5 Sistema operativo LINUX .................................................................... 24
2.6 Teoría de actualización de servidores ................................................ 24
3 MARCO METODOLÓGICO ....................................................................... 26
3.1 Fuentes de información ....................................................................... 26
3.2 Métodos de Investigación ................................................................... 27
3.3 Herramientas ....................................................................................... 29
3.4 Supuestos y Restricciones .................................................................. 29
Los Supuestos y Restricciones y su relación con los objetivos del proyecto final
de graduación se ilustran en el cuadro 4, a continuación. ................................ 29
3.5 Entregables ......................................................................................... 30
Los entregables y su relación con los objetivos del proyecto se ilustran en el
cuadro 5, a continuación. .................................................................................. 30
4 DESARROLLO ........................................................................................... 31
4.1 Proceso de planificación ..................................................................... 31
4.2 Análisis de la situación actual del servidor LINUX .............................. 38
4.3 Procedimientos necesarios para la actualización de los servidores
LINUX 39
4.4 Plan de capacitación para que los involucrados se apropien de los
procedimientos por implementar .................................................................... 45
5 CONCLUSIONES ....................................................................................... 49
6 RECOMENDACIONES .............................................................................. 51
7 BIBLIOGRAFÍA .......................................................................................... 52
8 ANEXOS..................................................................................................... 54
vii
Anexo 1: ACTA DEL PROYECTO ..................................................................... 54
Anexo 2: EDT .................................................................................................... 57
Actualícelo según el cambio del objetivo .......................................................... 57
Anexo 3: CRONOGRAMA Actualícelo según el cambio del objetivo ................ 58
Anexo 4: Otros ................................................................................................... 58
viii
ÍNDICE DE FIGURAS
Figura 1 Estructura Organizativa ...................................................................... 17
Figura 3 Ciclo de vida de un proyecto .............................................................. 20
Figura 4 Arquitectura de una aplicación web. ................................................... 24
Figura 2 Ciclo de vida de un software ............................................................... 25
ix
ÍNDICE DE CUADROS
Cuadro 1 Características principales ................................................................ 23
Cuadro 2 Otras características de interés ........................................................ 23
Cuadro 3 Fuentes de Información utilizadas .................................................... 27
Cuadro 4 Métodos de Investigación utilizados ................................................. 28
Cuadro 5 Herramientas Utilizadas .................................................................... 29
Cuadro 6 Supuestos y Restricciones ................................................................ 29
Cuadro 7 Entregables ....................................................................................... 30
Cuadro 8 Control de Respaldos ........................................................................ 38
Cuadro 9 Resultados de restauración de respaldos ......................................... 44
Cuadro 10 Plantilla comparativa de procesos .................................................. 46
x
Glosario de términos y abreviaturas
CentOS: distribución del sistema operativo LINUX.
Distribución LINUX: es desarrollo individual de un sistema operativo basado
en LINUX.
Front-end: parte del software que interactúa con el usuario final.
LAN: Local Area Network (Red de Área Local).
Librerías: es un conjunto de implementaciones de comportamiento, escritas
para un lenguaje de programación, que tienen una interfaz bien definida para
el comportamiento que se invoca.
MO: Project Management Office (Oficina de Administración de Proyectos)
PMI: Project Management Institute (Instituto de Administración de Proyectos)
PMI-ACP: PMI Agile Certified Practitioner.
SO: Sistema Operativo
TI: Tecnologías de Información.
xi
RESUMEN EJECUTIVO
El sistema operativo LINUX es uno de los de mayor crecimiento en los últimos años principalmente por su facilidad en las tareas de Administración de Proyectos identificado como un Sistema Operativo Abierto de amplia difusión, que ofrece hoy en día una gran cantidad de servicios a usuarios finales tales como: páginas web, base de datos, servicios de banca en línea, administración de archivos, entre otras múltiples aplicaciones.
El estudio permite abrir el pensamiento analítico para que los programadores vean la tarea de actualización de servidores LINUX como aquella que permite facilitar la implementación de tecnologías con versiones de software más recientes y la utilización de un método estandarizado para la actualización de servidores; así como en ampliar la posibilidad de desarrollo aprovechando las versiones más recientes.
Siendo una tarea crítica donde depende el futuro de las operaciones de un sitio web; las actualizaciones no solo corrigen errores de programación sino también dan soporte a nuevas tecnologías, evitan vulnerabilidades de seguridad y mantienen la estabilidad de los sistemas operativos. Actualizar un servidor LINUX es una operación crítica donde depende el futuro de las operaciones de un sitio web y la interacción con sus clientes potenciales ya sean visitantes o anunciantes.
El proyecto sirve como base para otros proyectos con diferentes alcances relacionados con la actualización de servidores LINUX con información organizadamente documentada de este trabajo y que pueda ser aplicada en cualquier tipo de organización, donde el administrador del sistema es el principal actor en la actualización.
Si bien es bueno actualizar los servidores LINUX a la versión más reciente, se concluye que no es necesario realizarlo cada vez que exista una nueva versión disponible ya que requiere de mucho esfuerzo innecesario en un periodo de tiempo relativamente corto, es mejor esperar por versiones en donde se puedan percibir realmente beneficios que sean de utilidad para el servidor y los servicios que ofrece.
Para este proyecto se definieron una serie de objetivos, como primer paso es necesario realizar un análisis de la situación actual para identificar mejoras para luego desarrollar los procedimientos necesarios para la actualización de los servidores y finalmente definir un plan de capacitación para que los involucrados se apropien de los procedimientos por implementar.
Para lograr todos los objetivos propuestos se utilizaron métodos de investigación como el analítico-sintético e inductivo-deductivo para poder realizar los análisis requeridos para llevar a cabo la planificación estructurada, del cual se derivaron las herramientas necesarias para alcanzar los objetivos, destacándose el plan de capacitación.
xii
El estudio toma en cuenta las diferentes áreas de conocimientos sobre el Ciclo de Proyectos y el proceso en administración de los mismos; basados en la Guía del PMI, 2008, asimismo destacando las características principales de los servidores web y sus aplicaciones, y se revisó la teoría de actualización de servidores; lo cual académicamente proporcionó una base sólida en el desarrollo de la propuesta para hacer la actualización de los servidores web.
Herramientas como el EDT y cronograma del trabajo fueron utilizados para llevar un control más eficiente, utilizando un plan de respaldo, considerándose como un punto crítico en el proyecto, y recomendándose el famoso formato “.tar.gz. “. Los servidores pueden diferenciarse de unos a otros por lo que fue necesario hacer un estudio de su composición interna para proporcionar las mejores recomendaciones.
Finalmente se presenta el desarrollo de la Estructura de Desglose del Trabajo (EDT) como la esencia del presente estudio, basada en la información resultante de investigaciones y colegas expertos en el tema, que incluye una metodología detallada paso por paso de todo el procedimiento de los trabajos y documentos necesarios para la actualización de servidores, presentándose igualmente la identificación de riesgos con diferentes criterios de medición y un plan de respuesta a los mismos.
Para finalizar LINUX como sistema operativo popularmente conocido como “seguro y confiable”, reconocido por su seguridad ante ataques a través de la red se destacan para su uso en servidores web. La administración de sistemas y la administración de proyectos tienen muchos elementos en común a la hora de controlar los procesos que involucren tareas para desarrollar algo nuevo. También son muy similares a la hora de mejorar procesos continuamente, refinando cada actividad e incrementar la eficiencia de trabajo.
Este esfuerzo, además de lanzar nuevas versiones, se encarga también de documentar los cambios realizados que sirven como guía para que el encargado de actualizar el servidor sepa que es lo que se está afectando con este proceso. Esta necesidad de obtener versiones más recientes de herramientas y sistema operativo viene a partir de poder trabajar con lo último en tecnología, ganar rendimiento gracias a las mejoras realizadas y aprovechar el espacio para innovar nuevas funcionalidades de un sistema de información.
13
1 INTRODUCCIÓN
1.1 Antecedentes
Si bien existen un sin números de tutoriales de cómo actualizar servidores, no
existe alguno que tome en cuenta el software que está instalado en el momento
de esta tarea ni un plan de acción para esta situación.
Cada día son más las tecnologías que desarrollamos, con respecto a la parte de
Tecnologías de Información (TI), los lenguajes de programación y los
administradores de base de datos tienen actualizaciones periódicas los cuales en
algunas ocasiones requieren una versión más reciente del sistema operativo, es
muy similar a una reacción en cadena, se necesitan implementar nuevas
funcionalidades que requieren de librerías más actualizadas que a su vez sólo son
soportados por sistemas operativos actualizados.
No se encontró ningún tipo de información concreta relacionada con las políticas
de la actualización de ningún tipo de servidor, y menos de LINUX. Al no existir
referencia alguna en la aplicación de administración de proyectos entorno a los
procesos que conlleva a la actualización de servidores, de aquí surge la
necesidad de utilizar estos conocimientos aprovechando conceptos claros en
cómo llevar a cabo los trabajos de manera estructurada.
1.2 Problemática
El desarrollo de aplicaciones, en este caso, en servidores LINUX, siempre es en
base a lo que se tiene inicialmente, difícilmente se pueden predecir las tendencias
y escribir aplicaciones que sean compatibles con versiones futuras de los
lenguajes de programación que vienen acoplados con versiones más recientes de
los sistemas operativos, la única posibilidad que cuenta el desarrollo de
aplicaciones es que sean compatibles con sistemas operativos anteriores, una
ayuda muy importante es que en la mayoría de los casos se cuenta con una
documentación adecuada del historial de cambios.
Los retos de trabajar con un sistema operativo LINUX desactualizado es un reto
en donde la dificultad se incrementa cuanto más tiempo pase. La posibilidad de
que ocurran riesgos de impacto negativo también se incrementará debido a un
14
gran número de factores como el personal correcto con conocimiento de versiones
anteriores de sistemas operativos (SO) LINUX, el cese de soporte tanto como el
SO y los software o paquetes instalados y las vulnerabilidades que esto último
conlleva con respecto al tema de la seguridad. En cuanto al primer factor es
común que la organización tenga cambios de su personal y es probable que sea
alguien de una generación más reciente que no tenga conocimientos de SO
desactualizados
Siempre existirá la necesidad de innovar, desarrollar e implementar nuevas
funcionalidades, tecnologías o técnicas ya sea para un sitio web público o privado
en servidores LINUX, esto se limita a aprovechar lo que esté disponible en el
presente. Es muy común ver servidores que se resisten al cambio, las razones
pueden variar mucho, pueden ir desde la complejidad de lo que ya tienen
desarrollado o la no necesidad de innovar, también está el dilema de actualizar o
buscar soluciones alternas de desarrollo que busca seguir utilizando las
herramientas desactualizadas y evitar los riesgos de actualización.
Esto último muchas veces es una solución a corto plazo ya que dependiendo del
esfuerzo que se necesite puede incluso resultar más costoso que una
actualización. Tarde o temprano la actualización va a ser necesaria y entre más
tarde se deje esta tarea, más costoso va a salir el tiempo a invertir para asegurar
la compatibilidad de las aplicaciones desarrolladas.
1.3 Justificación del problema
La manera de cómo se manejan los sistemas de información a su propio estilo
tiene mucho en común con la administración de proyectos por lo que es
interesante y válida la aplicación de conocimientos y metodologías que facilita la
guía del PMBoK (PMI, 2008).
La administración de proyectos profundiza conceptos importantes como el manejo
de recursos humanos, costos, tiempo, etc.; y lo más importante, la documentación
que acompañe los proyectos del área de sistemas de información. La idea es
aplicar las buenas prácticas, es decir, hacer el trabajo de actualizar un servidor
LINUX de la mejor manera posible.
15
El conjunto de procedimientos para actualizar el software de servidores Linux
incluido en esta propuesta tiene como objetivos:
Estimular el pensamiento analítico del encargado de los servidores.
Tratar de estandarizar un método generalizado para la actualización de
servidores LINUX.
Ampliar y aprovechar la posibilidad de desarrollo de nuevas tecnologías con
versiones más recientes de software.
1.4 Objetivo general
Desarrollar un conjunto de procedimientos que puedan ser utilizados para
actualizar el sistema operativo de servidores LINUX.
1.5 Objetivos específicos.
Los objetivos específicos de este proyecto son:
Realizar un análisis de la situación actual del servidor LINUX en cuanto a su
configuración, especificaciones y servicios instalados para identificar mejoras.
Desarrollar los procedimientos necesarios para la actualización de los
servidores LINUX.
Definir un plan de capacitación para que los involucrados se apropien de los
procedimientos por implementar.
16
2 MARCO TEÓRICO
2.1 Marco institucional
2.1.1 Antecedentes de la Institución
Las situaciones que pueden presentar los distintos servidores de empresa que
aloja un sitio web varían dependiendo de la funcionalidad que tenga la misma,
pueden existir múltiples servidores para diferentes trabajo (base de datos, lógica,
presentación, balance de carga.) Cada uno de estos, dependiendo de la
necesidad de actualizar el sistema operativo requiere de diferentes tratamientos y
contienen riesgos distintos.
Las versiones iniciales pueden variar y esto quiere decir que el esfuerzo puede
ser mayor en proporción a la antigüedad del sistema operativo inicial.
2.1.2 Misión y visión
Actualizar un servidor LINUX es una operación crítica donde depende el futuro de
las operaciones de un sitio web y la interacción con sus clientes potenciales ya
sean visitantes o anunciantes.
Misión
Proveer una metodología general de fácil aplicación para todo tipo de
organización que necesite una solución clara y transparente para actualizar
un sistema operativo LINUX.
Visión
Lograr la estandarización de una metodología en conjunto con la comunidad
que esté dedicada a la administración de servidores mediante el acceso a
este documento inicial y aceptar las recomendaciones que sean críticas para
ejecutar esta tarea siempre efectiva y eficientemente.
2.1.3 Estructura organizativa
La situación actual de este proyecto es que no se desarrolla dentro de ninguna
organización, una razón es que para este tipo de desarrollo de procedimientos
17
para la actualización de servidores LINUX pueda ser utilizado en cualquier
estructura organizativa.
A continuación la Figura 1 muestra cómo está compuesta una estructura
organizativa deseada:
Figura 1 Estructura Organizativa
Fuente: http://www.entertainergroup.com/images/chart.png
El administrador de sistema será el principal actor en cuando a la actualización de
un sistema lo cual se recomienda para cualquier tipo de estructura organizativa,
esto afectará de manera directa y progresiva los demás actores internos e
indirectamente a externos como anunciantes y visitantes del sitio web.
18
2.1.4 Productos que ofrece
Un servidor LINUX es capaz de ofrecer una infinidad de servicios a usuarios
finales, algunos servicios de gran importancia que ofrecen son los siguientes:
Páginas web.
Base de datos.
Repositorio de documentos (administrador de archivos).
Servicios en formato de objeto simple (comunicación entre sí entre múltiples
organizaciones Banca en línea que comunica pagos de servicios públicos).
El producto final es el sistema operativo actualizado, con todos sus componentes
funcionando con normalidad que se desglosan de la siguiente manera:
Determinar las características generales del servidor LINUX y los servicios
que provee.
Respaldos necesarios y actualización del servidor LINUX.
Pruebas al servidor LINUX que comprueben el normal funcionamiento.
2.2 Teoría de Administración de Proyectos
2.2.1 Proyecto
De acuerdo con lo que establece el Instituto de Gestión de Proyectos (PMI, 2008)
dice lo siguiente:
Un proyecto es un esfuerzo temporal que se lleva a cabo para crear un
producto, servicio o resultado único. La naturaleza temporal de los
proyectos indica un principio y un final definidos.
Los Sistemas de Información y los proyectos comparten muchas similitudes, la
diferencia es que la primera refiere a una especialidad y la segunda es aplicable a
cualquier trabajo de interés, al final ambas resultan en un producto o servicio
finalizado.
19
2.2.2 Administración de Proyectos
Es una práctica empleada en cualquier organización de manera profesional y
aplicada o informal y casual, en otras palabras, siempre se requiere dar
seguimiento a los trabajos que se estén realizando empírica o profesionalmente.
Como profesión se encarga de llevar a cabo metodológicamente los pasos para
iniciar, planificar, controlar y finalizar un trabajo que pueda resultar en un servicio
o producto, aplicando las áreas de conocimiento necesarias y las buenas
prácticas recomendadas.
El PMBoK (PMI, 2008) define que un proyecto es un esfuerzo temporal que se
lleva a cabo para crear un producto, servicio o resultado único. La naturaleza
temporal de los proyectos indica un principio y un final definidos. El final se
alcanza cuando se logran los objetivos del proyecto o cuando se termina el
proyecto porque sus objetivos no se cumplirán o no pueden ser cumplidos, o
cuando ya no existe la necesidad que dio origen al proyecto.
El concepto de proyecto señala que pueden ser realizados más de uno a la vez,
todos formalizados de la misma manera para cumplir con objetivos distintos de la
organización y la administración se encarga de que todos puedan ser realizados
eficientemente compartiendo un elemento en común que son los recursos.
2.2.3 Ciclo de vida de un proyecto
Como un proceso natural, un proyecto tiene un principio y un fin, en ese
transcurso se requiere en todo momento un seguimiento y control que pueda
asegurar el alcance y objetivos del proyecto.
20
Figura 2 Ciclo de vida de un proyecto
Fuente: PMI, 2008
2.2.4 Procesos en la Administración de Proyectos
De acuerdo con lo que establece el Project Management Institute (PMI, 2008) los
grupos de procesos que conforman el ciclo de vida de un proyecto son los
siguientes:
Inicio: es en donde se formaliza el proyecto entre todas las partes
involucradas directamente.
Planificación: es el proceso principal donde se definen los alcances del
proyecto y confeccionan documentos muy importantes como el cronograma y
la estructura detallada de trabajo.
Ejecución: se realizan los paquetes de trabajo y actividades planificadas para
obtener un resultado deseado.
Seguimiento y control: es un proceso que se ejecuta constantemente en
durante el proceso de ejecución para llevar el control de esta y asegurar el
plan de trabajo.
Cierre: se formaliza y documenta la terminación de un proyecto, las lecciones
aprendidas son vistas en este proceso.
2.2.5 Áreas del Conocimiento de la Administración de Proyectos
Las áreas de conocimiento son disciplinas comunes de gestión que se presentan
en actividades operaciones repetitivas en una organización y en los proyectos con
un enfoque único de esfuerzo y grado de aplicación.
21
Según el PMI (PMI, 2008) las 9 áreas de conocimiento son las siguientes:
Gestión de la Integración: describe los procesos y actividades que forman
parte de los diversos elementos de la dirección de proyectos.
Gestión del Alcance: se refiere a los procesos necesarios para asegurarse de
que el proyecto incluya todo el trabajo requerido para completar el proyecto
satisfactoriamente.
Gestión del Tiempo: describe los procesos relativos a la puntualidad en la
conclusión del proyecto.
Gestión de los Costes: está relacionado con los procesos involucrados en la
planificación, estimación, presupuesto y control de costes de forma que el
proyecto se complete dentro del presupuesto aprobado.
Gestión de la Calidad: son los procesos necesarios para asegurarse de que el
proyecto cumpla con los objetivos por los cuales ha sido emprendido.
Gestión de los Recursos Humanos: describe los procesos que organizan y
dirigen el equipo del proyecto.
Gestión de las Comunicaciones: son aquellos procesos relacionados con la
generación, recolección, distribución, almacenamiento y destino final de la
información del proyecto en tiempo y forma.
Gestión de los Riesgos: describe los procesos relacionados con el manejo de
las incertidumbres que puedan impactar de manera negativa (amenazas) o
positivamente (oportunidades) y de minimizar o maximizar respectivamente.
Gestión de la Integración: describe los procesos y actividades que forman
parte de los diversos elementos de la dirección de proyectos.
2.3 Características generales de un servidor web
Es más común encontrar servidores web LINUX que Windows ya que el primero
resulta ser más económico por razones como: gratuito (bajo costo) y libre. Estos
servidores LINUX pueden correr en 3 modalidades:
22
Virtual: se asignan recursos de múltiples sistemas sumándose entre sí para
un llamado servidor individual que pueden ser instanciadas ilimitadamente, los
recursos adicionales tienen una disponibilidad inmediata lo cual puede ser
modificado en cualquier momento.
Dedicado: un servidor físico con todos sus componentes iniciales donde hay
un dueño total del equipo. Los recursos adicionales no tienen disponibilidad
inmediata.
Compartido: Similar al dedicado con la diferencia de que se comparte todos
los recursos del sistema entre varios dueños que adquieran este servicio. Es
muy limitado con respecto a las actualizaciones que se puedan necesitar.
LINUX tiene una gran variedad de sistemas operativos popularmente llamados
distribuciones, los tres más populares para servidor web son: Debian, Centos y
Ubuntu. Internamente las diferencias son mínimas, pero de uso diario tienen
diferencias como el manejo de paquetería de software y el manejo de servicios
que se ejecutan.
23
Cuadro 1 Características principales
Distribución Creador Productor Primer lanzamiento publico
Distribución base
Propósito Costo
CentOS CentOS Project
CentOS Project
2003 Red Hat Enterprise Linux (RHEL)
servidor, escritorio de trabajo
gratuito
Ubuntu Canonical Ltd.
Canonical Ltd.
2004 Debian general gratuito
Debian Ian Murdock
Debian Project
1993 Ninguno general Gratuito
Cuadro 2 Otras características de interés
Distribución
Cantidad aproximada de paquetes pre-compilados
Administrador de paquetes por defecto
Formato del paquete
Instalador por defecto
¿Cuenta con instalador gráfico?
CentOS 1,660 RPM, yum/up2date .rpm
Si
Debian 48,615 APT .deb Debian-Installer Si
Ubuntu 47,595 APT .deb Ubiquity Si
2.4 Características generales de las aplicaciones web
Las aplicaciones web están escritas en un lenguaje de programación, este
lenguaje de programación depende del intérprete instalado en el servidor, al
actualizar un servidor es común que estos intérpretes necesiten ser actualizados
por lo que en pocos casos puede que en las aplicaciones queden con funciones
no soportadas.
Estos intérpretes o conjunto de paquetes pueden ser actualizados sin actualizar el
sistema operativo hasta que la nueva versión de uno o varios paquetes ya no
soporten el sistema operativo desactualizado.
24
Figura 3 Arquitectura de una aplicación web.
Fuente: propia
2.5 Sistema operativo LINUX
Es un software libre de tipo sistema operativo (SO), el cual se encarga de
administrar los recursos del sistema y ejecutar programas instalados por el
usuario final. Que este software sea libre quiere decir que su código fuente es
abierto y puede ser descargado y modificado por cualquier persona e incluso
desarrollar una distribución personalizada.
Para este SO existen muchos “sabores” de distribución en donde los más
populares para servidores web se encuentran CENTOS, UBUNTU y DEBIAN,
siendo el último el más común. Las ventajas que ofrece este sistema operativo
son la seguridad y robustez que es percibida por la mayoría de los expertos en los
sistemas de información.
2.6 Teoría de actualización de servidores
Para un sistema de información IBM y otras grandes corporaciones recomiendan
el uso de Desarrollo Ágil para esta índole, el PMI tiene una certificación llamada
PMI-ACP (Agile Certified Practitioner o Profesional certificado ágil) que consiste
en el desarrollo de proyectos de manera ágil que enfoca técnicas especializadas y
versatilidad.
25
Para un sistema de información la idea es que se realicen iteraciones repetitivas
de forma ágil en base a una lista de tareas en donde cada una se analiza,
desarrolla, prueba e integra hasta que esa lista de tareas esté completada. Esto
se puede interpretar como un proceso reaccionario con respecto a cantidad de
tareas necesarias y proyectos involucrados.
La actualización de un Sistema operativo afecta toda la operación de desarrollo ya
que se tiene que revisar la compatibilidad de dichos sistemas con respecto a la
nueva versión a instalar, con suerte los cambios son mínimos si no se deja como
un último recurso este proceso pero siempre es importante realizar las
prevenciones y revisiones necesarias y asegurar el buen funcionamiento.
Figura 4 Ciclo de vida de un software
Fuente: https://es.wikipedia.org/wiki/Software
26
3 MARCO METODOLÓGICO
3.1 Fuentes de información
Las fuentes de información son aquellos documentos o medios de información
que proporcionan conocimiento de un tema a investigar utilizado en el proceso de
recolección de datos.
Para recopilar la información se recurrió a dos tipos de fuentes de información:
Fuentes Primarias
Según Buonocore, 1980:
Son las que contienen información original no abreviada ni traducida: tesis,
libros, nomografías, artículos de revista, manuscritos. Se les llama también
fuentes de información de primera mano…
Las fuentes de información, que se consultarán para poder alcanzar los objetivos
de esta propuesta son las siguientes:
Revisión de otras fuentes bibliográficas: libros, revistas y guías en internet.
Consulta y revisión a fondo de sitios web especializados en la administración
de servidores.
Experiencia profesional.
Involucrados directos.
Los servidores.
Fuentes Secundarias
Según Buonocore, 1980:
Contienen datos o informaciones reelaborados o sintetizados…
A lo que se refiere el autor es que las fuentes secundarias son datos derivados de
una información original en un contexto resumido y breve. Son de gran utilidad
para el análisis comprensivo del tema de investigación.
27
El resumen de las fuentes de información secundarias que se utilizarán en este
proyecto se presenta en el Cuadro 1:
Cuadro 3 Fuentes de Información utilizadas
Objetivos
Fuentes de información
Primarias Secundarias
Realizar un análisis de la situación actual para identificar mejoras
Involucrados directos.
Inspección de los servidores (Base de datos y Front-End).
PMI, 2008
Desarrollar los procedimientos necesarios para la actualización de los servidores
Experiencia profesional.
PMI, 2008
Artículos de internet
Herramientas y concejos para la administración de servidores
Definir un plan de capacitación para que los involucrados se apropien de los procedimientos a implementar
Involucrados directos.
Experiencia profesional.
PMI, 2008
Artículos de internet
Capacitación Y Desarrollo De Personal
3.2 Métodos de Investigación
El cuadro adjunto presenta la relación entre los objetivos y los métodos de
investigación que se utilizarán en este proyecto.
Analítico-Sintético: es el proceso de analizar y descomponer en partes más
pequeñas para facilitar el entendimiento de un objeto de estudio.
“la síntesis es la meta y resultado final del análisis. No es propiamente un
método de investigación, sino más bien una operación fundamental del
espíritu, por medio de la cual logramos la compresión cabal de la esencia de
lo que hemos conocido en todos sus componentes particulares, es decir, a
partir del análisis.
La síntesis no es más que la meta y el resultado final del análisis, por lo que
podemos decir que, en la práctica, ambos son complementarios.”(Jurado,
2002)
28
Inductivo-Deductivo: hace uso de la observación para encontrar
características esenciales de un estudio inicial donde se deduce una
representación simplificada o grado de abstracción del hecho inicial.
“El método inductivo intenta ordenar la observación tratando de extraer
conclusiones de carácter universal desde la acumulación de datos
particulares.”(Francis Bacon, 1561-1626)
Cuadro 4 Métodos de Investigación utilizados
Objetivos
Métodos de Investigación
Analítico-Sintético Inductivo-Deductivo
Realizar un análisis de la situación actual para identificar mejoras.
Análisis del estado actual del servidor LINUX.
Determinar la distribución Linux instalado.
Análisis de los paquetes instalados.
Identificar las características generales del servidor por actualizar.
Desarrollar los procedimientos necesarios para la actualización de los servidores.
Análisis de riesgos.
Análisis de tiempo que lleva a cabo esta operación.
Análisis de respaldos asociados.
Identificar la ruta crítica.
Definir un plan de capacitación para que los involucrados se apropien de los procedimientos a implementar
Análisis de capacidad de acción del personal encargado de los servidores LINUX con los procedimientos de actualización.
Deducir los procedimientos a implementar.
29
3.3 Herramientas
El cuadro 3 presenta las herramientas que se utilizarán para alcanzar cada uno de
los objetivos específicos:
Cuadro 5 Herramientas Utilizadas
Objetivos Herramientas
Realizar un analisis de la situación actual para identificar mejoras
Observaciones, cuestionarios y encuestas.
Desarrollar los procedimientos necesarios para la actualización de los servidores
Juicio experto, identificación de alternativas.
Definir un plan de capacitación para que los involucrados se apropien de los procedimientos a implementar
Juicio experto, análisis de procedimientos para la actualización de servidores LINUX.
3.4 Supuestos y Restricciones
Los Supuestos y Restricciones y su relación con los objetivos del proyecto final de
graduación se ilustran en el cuadro 4, a continuación.
Cuadro 6 Supuestos y Restricciones
Objetivos Supuestos Restricciones
Realizar un análisis de la situación actual para identificar mejoras
El hardware es compatible con la última versión disponible a actualizar.
Se cuenta con el apoyo del gerente o encargado en el proceso de la actualización.
Servidores Linux
Desarrollar los procedimientos necesarios para la actualización de los servidores
Se contará con el apoyo del área de desarrollo para cualquier modificación del código fuente inminente.
Modo de trabajo (físico o remoto).
Definir un plan de capacitación para que los involucrados se apropien de los procedimientos a implementar
Las intervenciones en los sistemas de información serán mínimas.
Servidores Linux
30
3.5 Entregables
Los entregables y su relación con los objetivos del proyecto se ilustran en el
cuadro 5, a continuación.
Cuadro 7 Entregables
Objetivos Entregables
Realizar un análisis de la situación actual para identificar mejoras
Documento de análisis de la situación actual
Desarrollar los procedimientos necesarios para la actualización de los servidores
Documento de los procedimientos para realizar una actualización de un servidor
Definir un plan de capacitación para que los involucrados se apropien de los procedimientos a implementar
Documento del plan de capacitación para los involucrados.
31
4 DESARROLLO
A continuación se redactará el resultado final del trabajo de investigación para que
sirvan como guía para el desarrollo de la Propuesta de creación de
procedimientos para actualización del sistema operativo de los servidores LINUX.
4.1 Proceso de planificación
Es importante para todo proyecto tener definido hasta donde llegar en el
desarrollo de las actividades cumpliendo con cada uno de los requerimientos sin
salirse del plan de trabajo planificado. Los seguimientos y controles permitirán
asegurar que el trabajo a realizar cumpla con todos los puntos definidos, nada
más ni nada menos.
Los procedimientos para la actualización de un servidor LINUX será la entrega
final del proyecto junto con la documentación relacionada que involucra los
interesados directos como los administradores de sistemas o bases de datos y/o
programadores. Todo esto gracias a referencias obtenidas en línea y textos que
hablan sobre los comportamientos de los sistemas ante una actualización de un
sistema operativo LINUX y las características generales de sus distribuciones más
populares (las tres más usadas) como servidores.
4.1.1 Declaración de Alcance (Charter) del Proyecto
El cuadro No. 8 presenta la declaración de alcance del proyecto, basado en la
información resultante de la propuesta realizada.
Cuadro 8 Entregables
Fecha Nombre de Proyecto
4/21/2013 Propuesta de creación de procedimientos para actualización del sistema operativo de los servidores LINUX.
32
Justificación o propósito del proyecto (Aporte y resultados esperados)
Se espera que esta metodología mejores los procesos que conllevan a la actualización de un servidor LINUX que se detallan en los siguientes puntos:
Primero que todo una actualización se traduce como una mejoría de los viejos procesos que estuvieron una vez ejecutándose y mejoría del uso de recursos del sistema disponible.
Minimizar los riesgos y problemas de incompatibilidad de software o hardware ya instalados.
Hacer más eficiente y efectivo el proceso de actualización de los servidores.
Aprovechar las tecnologías más recientes que ofrecen los paquetes de instalación actualizados, una desventaja de no actualizar es tener el deseo de hacer implementaciones de última línea sin contar con las facilidades para ejecutarlas.
Descripción del producto o servicio que generará el proyecto – Entregables finales del proyecto
La meta de la propuesta es que al final de terminar todas las tareas recomendadas es tener un servidor con la versión más reciente y que todo funciona con normalidad. Todo esto se detallará con los siguientes documentos:
Documento de análisis de la situación actual.
Documento de los procedimientos para realizar una actualización de un servidor.
Documento del plan de capacitación para los involucrados.
Revision: 1
Entregables del proyecto a desarrollar
Entregable Descripción Criterio de Aplicación
Documento de análisis de la situación actual
Detalle de Actividades a realizar en el Proyecto
Documentos:
Charter
EDT
Cronograma en Diagrama GANTT
Asegurar que se incluyan todas las actividades propias de los siguientes procesos del proyecto:
Proceso de Compra de los Equipos
Recibo y entrega de equipos.
Proceso de Instalación física de los equipos
Proceso de Instalación de Software
Cierre del Proyecto
33
Documento de los procedimientos para realizar una actualización de un servidor
Definir el cronograma de las actividades que serán parte del proyecto.
Documentos:
Cronograma en Diagrama GANTT
Asegurarse que todas las actividades mencionadas en el Plan de Gestión de Alcance se logren en un máximo de 60 días.
Plan de Gestión de Riesgos
Se necesita:
Identificar los riesgos asociados al proyecto
Desarrollar un Plan de Respuesta a los Riesgos considerados como Altos
Documentos:
Matriz de Identificación de Riesgos
Matriz de Respuesta al Riesgo
Asegurarse de identificar apropiadamente todos los riesgos del proceso del proyecto, desde el momento de la creación de respaldo hasta la finalizar la actualización del servidor.
Plantilla para gestionar los cambios
Definir el manejo de cambios en el transcurso del proyecto
Documentación:
Plantilla de Gestión de Cambios
Desarrollar una plantilla que pueda utilizarse para gestionar los cambios necesarios en el desarrollo del proyecto.
34
4.1.2 Creación de la EDT
El cuadro No. 3 muestra la Estructura de Desglose del Trabajo (EDT) desarrollada
para el presente proyecto, basada en la información resultante de investigaciones
y colegas expertos en el tema.
Cuadro 8: Estructura de Desglose de Trabajo (EDT)
Tareas
I Iniciación
I-1 Documentar Alcance y acta del proyecto
P Planificación
P-1 Documentar los requerimientos del sitio
P-2 Documentar el hardware existente
P-3 Documentar el software y paquetes existente
P-4 Documentar las minutas
P-5 Documentar el cronograma
P-6 Documentar el Visto bueno del tutor
P-7 Documentar el acta cierre
E Ejecución
E-1 Realizar un análisis de la situación actual
E-2 Desarrollar los procedimientos para para la actualización de los servidores
E-3 Documentar los respaldos asociados
E-4 Documentar el informe de rendimiento
E-5 Definir un plan de capacitación para que los involucrados se apropien de los procedimientos a implementar
SC Seguimiento y Control
SC-1 Documentar acciones correctivas y preventivas
SC-2 Documentar informe de rendimiento
SC-3 Documentar los entregables finalizados
35
SC-4 Documentar los cambios del enunciado del alcance
SC-5 Contar con los vistos buenos del tutor
C Cierre
C-1 Documentar el cierre técnico
C-2 Documentar el cierre administrativo
C-3 Contar con el visto bueno del tutor
4.1.3 Diccionario de la EDT
Para detallar la EDT fue necesario crear el diccionario con el fin de tener la
claridad de las actividades que se realizaron.
I Iniciación:
I-1 Documentar Alcance y acta del proyecto: se formaliza el inicio del proyecto
con los interesados debidamente identificados; objetivos, supuestos, restricciones
debidamente definidos y detalle del producto final a entregar.
P Planificación:
P-1 Documentar los requerimientos del sitio: es necesario determinar todo lo
que el servidor necesita para funcionar con normalidad.
P-2 Documentar el hardware existente: por motivos de control y auditoría se
documenta todas las partes internas que hacen posible el funcionamiento del
servidor LINUX, esto es posible a través de la terminal interactiva disponible en
cualquier sistema operativo LINUX.
Hardware Existente
Servidor #1 – Frontend
Dual Quadcore @ 2.66Ghz
12Gb de RAM
Disco Duro de 250Gb
Servidor #2 – Base de datos
INTEL XEON E7450 @ 2.66Ghz
32Gb de RAM
Disco Duro de 550Gb
2 tarjetas de red
36
P-3 Documentar el software y paquetes existentes: como requerimiento del
nuevo sistema operativo LINUX a instalar, se necesita tener una lista de todo
software que está en funcionamiento para comprobar que todos queden funcionan
en la nueva versión del sistema operativo a instalar.
Software Instalado
Servidor #1 – Frontend
Software Tipo Version ¿Nueva versión disponible?
Dependencia
Centos Sistema Operativo 5.0 Si
Apache Servidor Web 1.9 Si Centos
PHP Lenguaje de programación (Intérprete)
5.2 Si Apache
Servidor #2 – Base de datos
Centos Sistema Operativo 5.0 Si
MySQL Motor de base de datos
5.1 Si Centos
P-4 Documentar las minutas: cuando existan reuniones con los involucrados es
necesario llevar un control de los acuerdos e integrantes que la componen.
P-5 Documentar el cronograma: por motivos de control se necesita verificar el
tiempo que han tomado las actividades a realizar.
P-6 Documentar el Visto bueno del tutor: El tutor determinará si se han aplicado
correctamente los conocimientos de la carrera universitaria.
P-7 Documentar el acta cierre: para la finalización del proyecto es necesario
tener listo los machotes para documentar los resultados finales.
E Ejecución
E-1 Realizar un análisis de la situación actual: se analiza los pasos a realizar
antes de proceder a la actualización del servidor.
37
E-2 Desarrollar los procedimientos para para la actualización de los
servidores: igual que el punto anterior per se detalla cada uno de los pasos.
E-3 Documentar los respaldos asociados: se enlista todos los respaldos que
necesitan ser restaurados en la nueva versión actualizada del sistema operativo
LINUX.
E-4 Documentar el informe de rendimiento: Se prueba el sistema actualizado
con todos los respaldos ya restaurados para verificar el buen funcionamiento del
servidor LINUX.
E-5 Definir un plan de capacitación para que los involucrados se apropien de
los procedimientos a implementar: Se hace un análisis de cómo se hacían las
cosas antes de actualizar el servidor para que cuando se apoderen nuevamente
de los servidores puedan seguir las mejores prácticas recomendadas.
SC Seguimiento y Control
SC-1 Documentar acciones correctivas y preventivas: parte incluida
dentro del análisis de riesto
SC-2 Documentar informe de rendimiento:
SC-3 Documentar los entregables finalizados: Formaliza la entrega de los
entregables del proyecto.
SC-4 Documentar los cambios del enunciado del alcance: Se formaliza
todo cambio realizado en el proyecto para asegurar la ruta crítica del proyecto.
SC-5 Contar con los vistos buenos del tutor
C Cierre
C-1 Documentar el cierre técnico: Una vez finalizado los objetivos del proyecto
se elabora un documento que indica la culminación de las actividades.
C-2 Documentar el cierre administrativo: Se hace una recopilación de toda la
documentación realizada en el proyecto para resumir la información general del
proyecto, sus entregables y se documentan las lecciones aprendidas.
C-3 Contar con el visto bueno del tutor
38
4.2 Análisis de la situación actual del servidor LINUX
Es necesario para todo servidor LINUX saber cómo se encuentra, el objetivo
principal de esto es que una vez el servidor actualizado exactamente igual (con
excepción del número de versión del sistema operativo ya que incrementa) o lo
más parecido a cómo estaba originalmente y que funcione sin ningún problema.o
4.2.1 Respaldos
Un punto crítico en el proyecto es la creación de los respaldos y que estos se
generen bien, libre de errores, para esto se requiere de una serie de procesos:
Estimar el tamaño del respaldo: requisito para verificar si hay espacio
suficiente en el disco duro.
Escoger un formato de compresión: esto disminuye la posibilidad de error en
los archivos a respaldar, reduce a solo un archivo conteniendo todos los
archivos respaldados (permite aprovechar más velocidad de transferencia) y
el peso total de un solo archivo es menor que todo los archivo sumados
individualmente.
Elegir alojamiento: puede guardarse este respaldo en el mismo servidor o se
puede transferir a otro servidor de la misma red en caso de que no se tenga
suficiente espacio, también pueden descargarse localmente si son varios
archivos de respaldos en donde algunos tengan un peso moderado.
Para el proyecto se utilizó el famoso formato .tar.gz ya que es reconocido por la
mayoría de las distribuciones LINUX (puede que no exista excepción de
reconocimiento) teniendo espacio suficiente en el disco duro para almacenar los
respaldos elaborados.
Para llevar un control de respaldos fue necesario diseñar una plantilla para
verificar que respaldos estaban listos y cuales hacían falta.
Cuadro 8 Control de Respaldos
Servidor #1
Respaldo Ruta Tamaño final
Virutual Hosts /va/www/vhosts/ 1.0 gb
39
Archivos de configuración /etc/httpd/conf/httpd.conf
/etc/php.ini 12 kb
Servidor #2
Respaldo Ruta Tamaño final
Configuración de la base de datos
/etc/my.cnf 202 b
Archivos binarios de las bases de datos
/var/lib/mysql/%nombre base de datos%/
40 gb
Script de las base de datos /usr/sbin/mysqld %base de datos%
80 gb
Fuente: propia
Los dos últimos respaldos de la base de datos tiene la misma información, esto se
hace en caso de alguna de las dos opciones falle.
4.2.2 Aprobación de tiempo para actualizar el servidor LINUX
Es necesario formalizar las horas en donde los servicios que se ofrecen a través de
los servidores sean desconectados temporalmente hasta finalizar el proceso de
actualización.
Para el caso de un servidor “Front-end” y otro de base de datos fue necesario
actualizar el primer servidor y en otro día actualizar el otro servidor de base de
datos, las horas de suspensión del servicio no superaron las 24 horas como tiempo
máximo establecido máximo para poder reestablecer todos los servicios.
4.3 Procedimientos necesarios para la actualización de los servidores LINUX
Para llegar a este punto fue necesario asegurar que los objetivos anteriores
fueran completados, el proceso de actualización es un proceso crítico donde si por
alguna razón falla, el producto final se puede ver comprometido.
4.3.1 Preparativos
Es necesario determinar un tiempo aproximado de cuánto va a durar el proceso
de actualización, para evitar dejar desatendido por mucho tiempo el servidor
LINUX. Los tiempos de estimación varían mucho dependiendo de muchos
factures como el hardware del servidor, velocidad de conexión, etc. Usualmente el
40
mismo proceso de actualización indica un estimado de cada uno de los procesos
que necesita realizar que son los siguientes:
Descarga: se descargan todos los paquetes y componentes necesarios
para poder llevar a cabo la actualización del servidor LINUX.
Instalación (actualización): este proceso empieza por reemplazar todo lo
viejo por las versiones más recientes, en algunos casos se eliminan para
ser reemplazados por otro tipo de software.
Reinicio del servidor: último paso en donde el sistema va a arrancar el
sistema operativo actualizado.
Se tomó la decisión de revisar el proceso de actualización cada hora para obtener
estimados más exactos que indiquen la finalización de cada uno de los procesos y
así evitar la desatención de los servidores.
4.3.2 Riesgos
4.3.2.1 Identificación de riesgos
La información obtenida en las entrevistas se tabuló en la Matriz de Identificación
de Riesgos, de tal manera que sea posible calificar cada riesgo y determinar
cuáles de ellos tienen un alto grado de incidencia y preparar así la Matriz de
Respuesta al Riesgo que contenga las acciones a seguir en caso de que el riesgo
se materialice en el transcurso del proyecto.
Para la correcta identificación de los riesgos del proyecto, se utilizaron tres
criterios de medición, de tal manera que se pudiera medir la probabilidad de que
un riesgo se materialice, el impacto que el mismo pueda tener en los alcances del
proyecto, el tiempo y el costo así como la categoría en la que se mide el riesgo.
Los Cuadros 8, 9 y 10 muestran las métricas para medir el la probabilidad, el
impacto y la categoría como instrumentos para medir los riesgos.
Cuadro 8: Convenciones de Probabilidad
Criterio Probabilidad
Certeza 100 %
Es Frecuente 85 %
41
Es Posible 60 %
Es Probable 40 %
Poco Probable 15 %
Imposibilidad 0 %
Cuadro 9: Tabla de Medición de Impacto en la Matriz de Riesgo
Impacto Definición de Categoría
Critico (C) Un posible evento que causaría serias fallas en el proyecto (incumplimiento de los requerimientos mínimos aceptables).
Alto (A) Un evento, que si ocurre, causaría incrementos severos en el costo y el tiempo. Requerimientos secundarios pueden no ser alcanzados.
Medio (M) Un evento, que si ocurre, causaría incrementos moderados en el costo y el tiempo, pero los requerimientos importantes pueden aún lograrse.
Bajo (B) Un evento, que si ocurre, causaría incrementos bajos en el costo y el tiempo.
Cuadro 10: Tabla de consideración de riesgo
Bajo Medio Alto Crítico
0-10% Bajo Bajo Medio Medio
11-40% Bajo Medio Medio Alto
41-60% Medio Medio Medio Alto
61-90% Medio Medio Medio Alto
91-100% Alto Alto Alto Muy Alto
42
Cuadro 11: Matriz de identificación de Riesgos
Riesgo Descripción Po% Impacto Categoría
Proceso de Análisis de la Situación Actual
1 Programas o servicios sin soporte en versiones futuras. 20 M Medio
2 Interrupción del servicio de internet 15 B Bajo
3 Falla abrupta del hardware 10 C Medio
Desarrollar los procedimientos para para la actualización de los servidores
4 Corrupción de los archivos de instalación 5 B Bajo
5 Interrupción del servicio de internet 15 B Bajo
Documentar los respaldos asociados
6 Falta de espacio de almacenamiento de archivo para los respaldos.
40 C Muy Alto
7 Corrupción de los archivos de respaldo 5 C Medio
8 Problemas con los permisos de los archivos 35 C Alto
9 Interrupción del servicio de internet 15 B Bajo
Documentar el informe de rendimiento
10 Resultados no esperados como el caso de que los recursos del sistemas estén siendo agotados fácilmente (Memoria RAM, Procesador)
10 A Medio
Definir un plan de capacitación para que los involucrados se apropien de los procedimientos a implementar
11 Resistencia al cambio 9 A Medio
43
4.3.2.2 Plan de Respuesta al Riesgo
Para la elaboración del Plan de Respuesta al Riesgo, se tomaron en cuenta
aquellos riesgos que quedaron en las categorías de “alto” y “muy alto”, ya que
pueden afectar muy seriamente el proyecto en cuanto al alcance y calidad
mínima.
El siguiente cuadro presenta los riesgos que han sido identificados como
crítico, y que su probabilidad de que sucedan supere 30 puntos porcentuales. Se
incluye también un Plan de Acción para mitigar la incidencia de cada uno de los
riesgos y el responsable de monitorear y controlar la incidencia del riesgo.
Cuadro 12: Matriz de Respuesta al Riesgo
RIESGO PLAN DE ACCION RESPONSABLE
Riesgo 6: Falta de espacio de almacenamiento de archivo para los respaldos
1. Verificar que todos los archivos que se van a respaldar sean necesarios, descartar archivos personales y archivos planos de registros del sistema, utilizar en todo momento un sistema de compresión de archivo.
2. Si lo anterior no soluciona el problema de espacio, va a ser necesario pedir espacio adicional al proveedor del servicio de alojamiento de servidores LINUX.
Departamento de Operaciones
Riesgo 8: Problemas con los permisos de los archivos
Hay que asegurar que no se modifiquen los permisos de lectura, escritura y ejecución ya que esto puede comprometer la seguridad del servidor LINUX.
Departamento de Operaciones
44
4.3.3 Proceso de actualización
La actualización en sí de un sistema operativo LINUX es relativamente sencillo, en
nuestro caso la distribución de CentOS sólo se requiere ejecutar dos líneas en la
terminal de comandos:
Primer comando: “yum check-update”, sin comillas, automáticamente
recolecta todas las dependencias del sistema operativo que utiliza para
funcionar y también intenta actualizar aquellas herramientas instaladas por
el que administra el servidor que no son dependencia del sistema
operativo.
Segundo comando: “yum update”, nuevamente sin comillas, se encarga de
realizar el proceso de actualización. A partir de aquí no es recomendable
cancelar el proceso, se procede con precaución.
4.3.4 Pruebas y restauración de respaldos
Una vez puesto en funcionamiento el servidor LINUX con la versión actualizada
del sistema operativo es necesario restaurar los respaldos paulatinamente. Se
procederá a parar todos los servicios relacionados y ejecutarlos nuevamente
cuando el proceso de restauración termine.
Cuadro 9 Resultados de restauración de respaldos
Servidor #1
Respaldo Ruta ¿Funciona Correctamente?
Virutual Hosts /va/www/vhosts/ Sí
Archivos de configuración /etc/httpd/conf/httpd.conf
/etc/php.ini
Sí
*Fue necesario reinstalar algunos módulos que no se actualizaron en el proceso de instalación
Servidor #2
Respaldo Ruta ¿Funciona Correctamente?
Configuración de la base de datos
/etc/my.cnf Sí
Archivos binarios de las bases /var/lib/mysql/%nombre base de Sí
45
de datos datos%/
Script de las base de datos /usr/sbin/mysqld %base de datos%
No es necesario
Al finalizar el trabajo de restauración se procede a levantar todos los servicios
suspendidos temporalmente, de manera que todo siga funcionando exactamente
como estaba en la versión anterior del sistema operativo del servidor LINUX. Se
procede a probar toda la funcionalidad que normalmente tenía el servidor para
comprobar su correcto funcionamiento.
4.4 Plan de capacitación para que los involucrados se apropien de los
procedimientos por implementar
El proceso de capacitación como cualquier otro es de carácter estratégico y
aplicado de manera organizada, la idea es que todos tengan claro cómo trabajar
con las nuevas versiones del sistema operativo LINUX.
Los requerimientos para estos procesos varían en relación con los cambios
resultantes de la actualización, normalmente son mínimos por la naturaleza de la
destreza que los encargados de los sistemas poseen, pero de todas maneras es
de suma importancia analizar cómo se hacen las cosas normalmente y mejorar los
procesos si lo requiere.
Para esta propuesta la capacitación puede antes o después de la actualización del
servidor LINUX, preferiblemente antes para que todas las tareas puedan ser
realizadas sin contratiempos.
4.4.1 Programación, desarrollo y planeación de la capacitación
Hay que determinar los procesos que realizan los encargados de los sistemas que
necesiten mejoras para desarrollar los temas que deben ser enfocados y
expuestos.
Es necesario documentar el proceso de capacitación para que pueda ser
empleado como política de uso de los servidores para los sucesores de los
actuales encargados de administrar los servidores LINUX.
46
Además, para el esquema de la capacitación es preciso conocer qué debe
enseñarse; quien debe aprender y quien enseñar; sin dejar de lado cuando, donde
y como debe enseñarse asegurándose de que todos conozcan.
4.4.2 Evaluación y objetivos de la capacitación
Como un método de retroalimentación para cualquier organización, se deben
comprobar que se han adquirido los nuevos conocimientos de la capacitación para
cumplir con el objetivo final de la propuesta para la actualización de un servidor
LINUX.
Es importante documentar el impacto generado en cuanto a mejora de
conocimientos, habilidades y destrezas de los participantes, los que influirán en
resultados de rendimiento y valor agregado en el desarrollo de las tareas
asignadas. La evaluación se puede realizar por diferentes medios, ya sea por
aplicación de pruebas de conocimiento adquirido o mediante medición de
resultados posteriores a la capacitación.
El siguiente cuadro facilita evaluar si se llegaron a cumplir los objetivos
específicos de esta capacitación por medio de un cuadro comparativo que indica
si se llegan a adquirir los nuevos conocimientos de la mejora.
Cuadro 10 Plantilla comparativa de procesos
Servidor #1
Antes Mejora
No se asignaban los permisos correctos de escritura, lectura, ejecución a archivos que son de mucha importancia pero rara vez modificados
Identificar y modificar los permisos de archivos a “sólo lectura” para evitar cambios accidentales o identificar fácilmente un brecha de seguridad.
Todos los desarrolladores utilizaban el usuario raíz para trabajar con los servidores.
Asegurar que todos los desarrolladores tengan un usuario de acceso con los permisos necesarios para tener un mejor control de lo que se hace en el servidor.
Servidor #2
Antes Concepto
47
La base de datos solo tenía un usuario que contiene todos los permisos posibles utilizado en múltiples entornos (desarrollo, prueba, web.)
Asegurar que se funcionen diferentes usuarios para diferentes entornos que puede contener la siguiente especificación
Web: únicamente DML (Data Manipulation Language)
Desarrollo: DML y DDL (Data Definition Language)
Administradores: DML, DDL y DCL (Data Control Language)
La base de datos utiliza el puerto por defecto
Asegurar que se asigne un puerto diferente por medidas de seguridad.
Común para ambos servidores
Se utilizan los puertos por defecto para acceso por protocolo SSH.
Asegurar que los puertos sean distintos a los que vienen por defecto.
4.4.3 Cronograma propuesto del plan de capacitación
Se presenta una propuesta de un programa de capacitación con su respectivo
cronograma. La propuesta contempla los puntos de mejora detectados en el
análisis de los resultados de los cuestionarios aplicados así como los puntos que
no tuvieron baja calificación pero como valor agregado fortalece las aptitudes de
los trabajadores.
El plan de capacitación expuesto en el cuadro 10, tiene como propósito que su
aplicación permita aumentar la eficiencia de la STIC, logrando así un desempeño
óptimo de su personal y alcanzando ventajas competitivas.
No se presentan el cronograma las fechas de la capacitación debido a que las
mismas están sujetas a disponibilidad de presupuesto, horarios, espacio físico,
instructores entre otros, así como a la aprobación de la propuesta por parte de la
jefatura correspondiente. En el caso del idioma inglés se depende del programa a
desarrollar, el centro de enseñanza y los instructores que se consideren
pertinentes.
48
Cuadro 11 Cronograma de capacitación propuesto
Tema Subtemas Días de
capacitación
Políticas de uso de los servidores LINUX
Creación de usuarios y permisos 1
Seguridad de los servidores 1
Políticas de uso de la base de datos
Creación de usuarios, permisos 1
Mejores prácticas en el acceso a la base de datos con respecto al origen de la conexión.
1
Los costos de la capacitación están directamente relacionas con los días de
trabajo requeridos para impartir los temas que en este caso son cuatro y si es
necesarios los días que se requieran para comprobar que se ha absorbido los
nuevos conocimientos.
49
5 CONCLUSIONES
A continuación se concluyen los siguientes puntos que se reflejan de la
información que ha sido investigada y recopilada:
1. Un sistemas operativo LINUX es un medio confiable y seguro, su diseño
facilita su instalación y más importante aún es este caso es su
actualización, ya que otros tipos de sistemas operativos requieren de un
tratamiento más complicado.
2. La administración de proyectos da un valor agregado a los trabajos en el
campo de tecnologías de información de mucha importancia, ambas
metodologías se complementan para realizar el trabajo de la mejor manera
posible y provee una documentación muy completa para futuras referencias.
3. La actualización de un servidor LINUX da acceso a nuevas oportunidades
de desarrollo empresarial y laboral ya que mantiene un ambiente fresco
para el desarrollo de aplicaciones y servicios y a su vez muchos
involucrados indirectos se verán beneficiados con estas mejoras.
4. Los sistemas operativos LINUX además de ser seguros y confiables
cuentan con mecanismos de seguridad que previenen errores en el proceso
de actualización, esto asegura que en caso de un fallo considerable el
servidor no quede inutilizable y pueda seguir funcionando sin problema
alguno.
5. Aunque el proceso de actualización de un servidor LINUX pueda no mostrar
inconvenientes, en necesario saber cuál es el mejor momento para hacer el
trabajo lo cual requiere de un estudio diferente luego de esta propuesta ya
que se tienen que tomar en cuenta los riegos asociados.
6. Un riesgo imposible de identificar es aquel que ni el mismo sistema operativo
reconozca, estos son identificados por los sistemas operativos como “error de
causa desconocida”, improbable que sucedan o puede que también sea una
falsa alarma, es decir, que un intento suceda el error y en otro (sin modificar
absolutamente nada) todo salga bien, en fin, los SO son complejísimos y la
idea no es consultar un experto o gurú de sistemas operativos, es aprender
cómo se comportan en situaciones impredecibles.
50
7. El llevar a cabo todas las actividades propuestas en el trabajo de
investigación permite una administración de una manera diferente y
ordenada en la actualización de servidores LINUX y además generó
información valiosa para la base de datos documental de proyectos que
puede ser de gran utilidad para proyectos futuros.
51
6 RECOMENDACIONES
Las recomendaciones del presente trabajo de investigación han sido determinadas
una vez finalizada la investigación y obtenida toda la información necesaria para la
correcta identificación de todos los aspectos involucrados en la ejecución del
proyecto. De esta manera se recomienda lo siguiente:
1. Se recomienda al grupo que administra los servidores LINUX que puedan
dedicar tiempo para preparar los sistemas para eventuales actualizaciones
que se presenten en el futuro, al menos para versiones que tengan un
periodo de soporte extendido y aprovechar al máximo todas las ventajas
que ofrece.
2. Se recomienda que la toma de decisión por parte de la junta directiva para
la actualización de los servidores deben ser respaldadas por un estudio
previo que pueda responder preguntas claves como: ¿Cuál es el mejor
momento para realizar la actualización? ¿En qué momento podemos
minimizar las pérdidas por interrupción de/los servicio(s)? Tomando en
cuenta los riesgo de esta propuesta.
3. Se recomienda no realizar este proceso cada vez que salga una nueva
versión del sistema operativo, es mejor esperar lanzamientos de versiones
mayores en donde se pueda apreciar realmente los beneficios que puedan
mejorar los procesos y servicios ofrecidos. Incluso se puede esperar a una
fecha cercana cuando ya no exista soporte al sistema operativo actual.
4. Para todo entorno de trabajo con servidores LINUX se recomienda tener un
servidor para pruebas y desarrollo, como en el caso de la actualización de
un servidor, esto posibilita observar cómo va a ser este proceso sin afectar
de ningún modo los servidores en producción.
5. Los ingenieros que trabajan con servidores LINUX que se encargan de
ofrecer uno o varios servicios a muchos clientes, es recomendable no
utilizar sólo un servidor, lo mejor es tener varios servidores que puedan
balancear la carga de los clientes que hacen uso de los servicios.
52
7 BIBLIOGRAFÍA
Buonacore, D. (1980). Diccionarario de Bibliotecología (2 ed.). Buenos Aires,
Argentina: Marymar.
Depth On Demand. (s.f.). Obtenido de
http://depthondemand.files.wordpress.com/2010/05/screen-shot-2010-05-15-
at-3-00-38-pm.png
howstuffworks. (s.f.). What is Linux and why is it so popular. Obtenido de
howstuffworks: http://www.howstuffworks.com/question246.htm
IBM. (16 de 6 de 2003). Best practices for software development projects.
Obtenido de developerWorks:
http://www.ibm.com/developerworks/websphere/library/techarticles/0306_perks
/perks2.html
Jiang, J. J., Klein, G., Hwang, H.-G., Huang, J., & Hung, S.-Y. (30 de 6 de
2003). An exploration of the relationship between software. Obtenido de
http://wase.urz.uni-magdeburg.de/evans/Journal%20Library/E-
business/Software%20development%20process%20maturity.pdf
Katherine Noyes, P. (11 de 1 de 2012). Debian Linux Named Most Popular
Distro for Web Servers. Obtenido de PCWorld:
http://www.pcworld.com/article/247845/debian_linux_named_most_popular_dis
tro_for_web_servers.html
Marchionni, E. A. (2011). Adminstrador de Servidores. Creative Andina Corp. .
PMI. (2008). Guía de los fundamentos para la dirección de proyectos (4ta ed.).
Newtown Square, Pennsylvania, Estados Unidos: Project Management
Institute, Inc.
PMI. (s.f.). PMI Agile Certified Practitioner (PMI-ACP)®. Obtenido de PMI:
http://www.pmi.org/Certification/New-PMI-Agile-Certification.aspx
53
Siliceo, A. (2006). Capacitacion Y Desarrollo De Personal (4ta ed.). Editorial
Limusa S.A. De C.V.
54
8 ANEXOS
Anexo 1: ACTA DEL PROYECTO
ACTA DEL PROYECTO
Fecha Nombre de Proyecto
4/21/2013 Creación de procedimientos para actualización del sistema operativo de servidores LINUX
Áreas de conocimiento / procesos: Área de aplicación (Sector / Actividad):
Procesos:
Iniciación, planificación, ejecución, seguimiento y control, cierre.
Áreas:
Integración, alcance, costos, calidad, riesgos.
Informática.
Proyectos de TI con énfasis en mejoramiento de procesos.
Fecha de inicio del proyecto Fecha tentativa de finalización del proyecto
6/21/2013 9/21/2013
Objetivos del proyecto (general y específicos)
Objetivo general
Crear una propuesta de los procedimientos para la actualización de servidores LINUX
Objetivos específicos
Realizar un análisis de la situación actual para identificar mejoras.
Desarrollar los procedimientos necesarios para la actualización de los servidores.
Definir un plan de capacitación para que los involucrados se apropien de los procedimientos a implementar.
Justificación o propósito del proyecto (Aporte y resultados esperados)
55
Se espera que esta metodología mejores los procesos que conllevan a la actualización de un servidor LINUX que se detallan en los siguientes puntos:
Primero que todo una actualización se traduce como una mejoría de los viejos procesos que estuvieron una vez ejecutándose y mejoría del uso de recursos del sistema disponible.
Minimizar los riesgos y problemas de incompatibilidad de software o hardware ya instalados.
Hacer más eficiente y efectivo el proceso de actualización de los servidores.
Aprovechar las tecnologías más recientes que ofrecen los paquetes de instalación actualizados, una desventaja de no actualizar es tener el deseo de hacer implementaciones de última línea sin contar con las facilidades para ejecutarlas.
Descripción del producto o servicio que generará el proyecto – Entregables finales del proyecto
La meta de la propuesta es que al final de terminar todas las tareas recomendadas es tener un servidor con la versión más reciente y que todo funciona con normalidad. Todo esto se detallará con los siguientes documentos:
Documento de análisis de la situación actual.
Documento de los procedimientos para realizar una actualización de un servidor.
Documento del plan de capacitación para los involucrados.
Supuestos
El hardware es compatible con la última versión disponible a actualizar.
Se contará con el apoyo del área de desarrollo para cualquier modificación del código fuente inminente.
Se cuenta con el apoyo del gerente o encargado en el proceso de la actualización.
Las intervenciones en los sistemas de información serán mínimas.
Se cuenta con respaldo de energía eléctrica en caso de falla de la misma.
Los procedimientos se harán de manera remota.
Restricciones
Conexión a internet.
Información histórica relevante
56
Hasta la fecha se habla mucho sobre actualización de software o de un sistema operativo en específico, pero no se hace una generalización de cómo se lleva a cabo esta tarea, de manera formar, para un servidor con alguna distribución de LINUX de las cuales existen muchas (CENTOS, UBUNTU, DEBIAN, etc.).
Identificación de grupos de interés (Stakeholders)
Involucrados directo(s):
Gerentes de proyectos
Desarrolladores de software.
Administrador de servidores.
Involucrados indirecto(s):
Director de la empresa.
Miembros del sitio hospedado.
Encargados de publicidad en línea.
Aprobado por: Firma:
Luis Diego Argüello
Realizado por Firma:
Ram Antonio Miranda Cajiga
57
Anexo 2: EDT
Actualícelo según el cambio del objetivo
58
Anexo 3: CRONOGRAMA Actualícelo según el cambio del objetivo
Anexo 4: Otros
top related