Actualizar VMWare Server 1 a 2

VMWareEsta semana me ha tocado actualizar mi VMWare Server 1, al nuevo VMWare Server 2.0.1. Lo he hecho, de la siguiente forma:

  1. He descargado el último fichero .tar.gz de la página oficial de VMWare, y lo he descomprimido con el comando «tar -zxvf«
  2. He parado todas las máquinas virtuales de mi servidor desde la interfaz gráfica VMWare Server Console.
  3. He ejecutado el instalador de vmware con el comando «./vmware-install.pl«, pero me ha dado el siguiente error: «The following VMware kernel modules have been found on your system that were not installed by the VMware Installer», mostrándome vmnet y vmmon como los módulos erroneos.
  4. Para solucionar el error anterior, he tirado de la recomendación de este foro donde recomiendan usar «find /lib/modules/ | grep vmnet» para encontrar el módulo vmnet (lo mismo para vmmon).
  5. Una vez encontrados, los he eliminado con el comando «rm«, tal y como ha sugerido el mismo instalador de VMWare.
  6. Finalmente he conseguido ejecutar el instalador de VMWare, que se encarga (según la documentación oficial) de actualizar de la versión 1 a la 2.
  7. Una vez finalizados los pasos del asistente (indicando, en la mayoría de ocasiones, los parámetros por defecto de configuración) ha quedado actualizado mi servidor VMWare.
  8. Desde la dirección https://ipservidor:8333 he podido acceder a la interfaz web de administración del servidor VMWare actualizado, previo reinicio del sistema.

NOTA: En el caso de querer lanzar de nuevo el asistente para la configuración, se podrá hacer ejecutando el comando «/usr/bin/vmware-config.pl«

Magento: pago contra reembolso

Contra reembolsoUno de los métodos de pago más sencillos y seguros, es el pago contra reembolso. Prácticamente no tienes que configurar nada en tu e-commerce (puesto que no necesitas integraciones para pagos con tarjetas de crédito) y el usuario paga únicamente cuando recibe el paquete (lo que da seguridad).

Las pegas:

  1. El usuario pagará una pequeña cantidad por usar el pago contra reembolso (en torno a un 3% más, en función del transportista).
  2. Esta opción no viene de forma nativa con Magento 1.4.1

Como es lógico, la segunda pega es la que más me preocupa.

Sin embargo, según he visto aquí, existe una utilidad llamada Cash on Delivery que permite introducir este método de pago en Magento.

Voy a explicar los pasos que he seguido para introducir esta funcionalidad:

  1. Realizamos una copia de seguridad TOTAL de nuestro e-commerce.
  2. Preparamos la instalación para el uso de Magento Connect (cambiando los permisos de la estructura de ficheros de Magento a 777).
  3. Vamos a la página de la extensión «Cash on Delivery» y pulsa sobre «Get Extensio Key» (solo podrás verlo si estás logueado en la página. El registro es gratuito).
  4. Seleccionamos la versión de Magento Connect apropiada (la 1 si usas la versión de Magento de la Comunidad 1.4.1.1 o inferior).
  5. Copiamos la Key.
  6. Entramos al panel de administració de Magento de tu e-commerce.
  7. Vamos a Sistema -> Magento Connect -> Magento Connect Manager.
  8. Introducimos de nuevo las credenciales de administración de Magento.
  9. Pegamos la Key que hemos copiado en el punto 5, y pulsar sobre «Instalar».
  10. Al finalizar, veremos el mensaje «Procedure completed. Please check the output frame for useful information and refresh the page to see changes.» justo debajo de la ventana negra que simula un shell de linux.
  11. Pulsamos sobre «refresh» para ver como efectivamente aparece listada la extensión instalada.
  12. Si lo queremos, mediante el enlace «Return to admin» podremos volver al panel de administración de Magento para gestionar la nueva extensión.
  13. Si lo queremos, podemos descargar el archivo csv con la traducción, tal y como comentan los amigos de elblogdemagento.
  14. Descomprimimos el archivo csv y lo subimos a app/locale/es_ES
  15. Refrescamos la caché para ver la extensión en español, desde Sistema > Gestor de la cache > Control de la cache > Seleccionamos «Seleccionar Todo» > Refrescar.
  16. Ahora ya tendremos la extensión de pago contra reembolso instalada, y en español.
  17. Desde Sistema > Configuración > Ventas > Métodos de pago, podremos ver el nuevo pago «Contrareembolso».
  18. Desde aquí, cambiaremos el nombre del método para adecuarlo a nuestro idioma, y nos aseguraremos de que únicamente se acepten pagos desde «Todos los países permitidos».
  19. Al pulsar sobre «Guardar la configuración» aplicaremos los cambios y tendremos listo el pago contra reembolso, a falta de aplicar los gastos del servicio.
  20. Desde Ventas > Reglas de pago contrareembolso > Envíos nacionales, añadiremos una nueva regla donde especificaremos, por ejemplo, que «aplique desde» 0 (entiendo que es el coste del pedido), y el coste (se deberá usar el punto como separador decimal).
  21. Con esto quedará finalmente, configurado el pago contra reembolso en nuestra web.
  22. Una vez acabado el proceso de instalación y configuración de la extensión, deberemos volver a cambiar los servicios de nuestro sistema de ficheros, a su estado anterior, tal y como se explica aquí.

Flickr! Foto por borman818

Magento Connect: permisos

Magento tiene una utilidad llamada «Magento Connect» que nos permite instalar extensiones de forma automática. Ahora bien, esta utilidad tiene el inconveniente de que requiere cambiar todos los permisos de nuestra estructura de directorios de nuestra instalación Magento, a «todos los permisos», es decir, +777 (permisos totales, también de escritura, para el grupo «todos»).

Esto es un problema de seguridad, puesto que se está dando acceso tanto de lectura, como de escritura y ejecución de todos los archivos y carpetas de nuestro e-commerce a cualquier persona.

Para remediarlo, he encontrado esta entrada que explica de forma muy clara cómo proceder cuando se usa Magento Connect.

Básicamente, lo que propone es lo siguiente:

  1. Queremos instalar una extensión mediante Magento Connect
  2. Para ello, cambiamos todos los permisos de nuestra estructura de ficheros a 777 (puedes usar tu cliente FTP favorito, como FileZilla). Esto suele durar un buen rato si lo haces así.
  3. Una vez cambiado, instalamos la aplicación con Magento Connect
  4. Finalmente, y ya acabada la instalación, reseteamos los permisos, ya sea de forma manual, o mediante la aplicación Magento Cleanup Tool. Con esta última aplicación, haríamos lo siguiente:
    • Descomprimir la aplicación en la raíz de nuestro e-commerce (por ejemplo, justo en el directorio «magento» si nuestro e-commerce está ahí).
    • Navegar a http://yourdomain.com/magento/magento-cleanup.php (si como antes, nuestro e-commerce se encuentra dentro del directorio magento), para restablecer los permisos iniciales.

Magento: copias de seguridad

MagentoEn este post intentaré explicar cómo realizar copias de seguridad con Magento. Existen varias utilidades que realizan estas funciones de copia de seguridad, pero antes de instalarlas se recomienda (precisamente) realizar una copia de seguridad, por si la instalación fallase o provocase algún tipo de problema.

Así pues, explicaré cómo realizar una copia de seguridad manual, o por lo menos, como la haría yo.

Backup nativo de Magento

  1. Nos logueamos al panel de administración de Magento.
  2. Hacemos click en Sistema -> Herramientas -> Copias de seguridad.
  3. Pulsamos sobre «Crear copia de seguridad» en la esquina superior derecha.
  4. Al cabo de unos segundos, no aparecerá el mensaje «The backup has been created» y podremos ver listada la copia de seguridad recién creada.
  5. Pulsaremos sobre el link «gz» de la columna «Descargar» de la fila correspondiente al backup que hemos creado, y procederemos a descargar el archivo en local.

Backup con phpMyAdmin

Además del backup de la base de datos realizado en el apartado anterior, en mi caso he realizado un backup manual con la utilidad phpMyAdmin que me proporciona mi hosting (y que proporcionan de forma gratuita la mayoría de hostings). Se han seguido los pasos de aquí, y han sido los siguientes:

  1. Vamos a nuestra página de administración del hosting y nos logueamos.
  2. Entre las diferentes utilidades, seguramente en la sección de «gestión de las bases de datos», veremos la utilidad phpMyAdmin.
  3. Con phpMyAdmin podremos ver las diferentes tablas que conforman la base de datos de Magento (más de 300 en mi caso).
  4. Desde el menú de la izquierda, pulsaremos sobre la base de datos de magento (la que incluye todas las tablas, que tiene un número entre paréntesis al lado).
  5. Posteriormente, pulsaremos sobre la pestaña «Exportar».
  6. Pincharemos en el enlace «seleccionar todo», lo que seleccionará todas las tablas y pulsamos (o dejamos seleccionada) la opción «SQL».
  7. Bajo la opción «Estructura», marcaremos las casillas ««, «Añadir IF NOT EXISTS», «Añadir el valor AUTO_INCREMENT», así como «Usar «backquotes» con tablas y nombres de campo».
  8. Bajo la opción «Datos», marcaremos las casillas «Completar los INSERTS», «INSERTs extendidos» y «Usar hexadecimal para campos binarios».
  9. Finalmente marcaremos el checkbox «Enviar» y sin utilizar compresión (compresión «ninguna») pulsaremos sobre «Continuar».
  10. Nos aparecerá el fichero SQL listo para descargar, con la copia de la base de datos.

Backup de los ficheros

Este último paso (al igual que el anterior), no es estrictamente necesario, pero para mayor seguridad, he preferido hacer un backup del sistema de ficheros en producción de mi e-commerce.

  1. Para ello he abierto mi cliente FTP favorito y me he conectado a mi hosting.
  2. Después únicamente he arrastrado toda la carpeta «magento» con sus directorios, sub-directorios y ficheros a mi disco duro (esto ha llevado un rato largo).

Con todo esto, ya me he quedado más tranquilo de cara a cualquier fallo en mi e-commerce.

ITIL Fase 5: CSI

CSI = Mejora Continua del Servicio

Objetivos

  • Recomendar sobre oportunidades de mejora en las diversas fases.
  • Mejorar la calidad del servicio TI, mejorando los procesos.

Propósito (Emblema de ITIL)

  • No se puede gestionar lo que no se puede controlar.
  • No se puede controlar lo que no se puede medir.
  • No se puede medir lo que no se puede definir.

Modelo (o pasos) de mejora continua:

  • ¿Cuál es la visión?
  • ¿Dónde estamos ahora?
  • ¿Dónde queremos llegar?
  • ¿Cómo llegamos? (mejorando servicios y procesos)
  • ¿Hemos llegado?
  • Keep the momentum going

Otros

  • VOI (Valor de la Inversión): valor extra por establecer las decisiones previas.
  • Ciclo Plan-Do-Check-Act

7 pasos de mejora continua (antes se ha de identificar la visión y estrategia y los objetivos tácticos y operacionales) – En orden

  1. ¿Qué se debería medir?
  2. ¿Qué se puede medir?
  3. Medición
  4. Procesamiento de datos
  5. Análisis
  6. Presentación y uso de la información
  7. Acciones correctivas

Valor para el negocio – En orden

  1. Validar: monitorizar y medir para validar las decisiones prévias.
  2. Dirigir: ordenar las actividades para alcanzar los objetivos.
  3. Justificar: presentar las pruebas para documentar las recomendaciones.
  4. Intervenir: implementar medidas correctivas

Tipos de métricas

  • De tecnología: basadas en componentes y responsabilidades.
  • De procesos: vinculadas a los CSF.
  • De servicios: mediciones del servicio de principio a fin (end to end).

Govierno Corporativo y TI

  • Responsable de promover sinceridad, transparencia y responsabilidad.

Y hasta aquí las entradas sobre los apuntes del curso de «Introducción a ITIL v3».

ITIL Fase 4: Operación

  • En esta fase el cliente puede ver el valor del servicio.
  • En esta fase, los planes, diseños y mejoras del Ciclo de Vida del Servicio son ejecutados.
  • Debe existir un equilibrio entre el punto de vista interno (orientado a la tecnología) y externo (orientado a servicios).

Ámbito (actividades)

  • Los servicios.
  • Los procesos de gestión.
  • La tecnología.
  • Las personas.

Objetivos

  • Coordina actividades y procesos necesarios para entregar los servicios acordes a sus SLA.

Funciones (personas o grupos de personas que realizan un trabajo)

  • Service Desk
  • Gestión Técnica: expertos técnicos
  • Gestión de aplicaciones
  • Gestión de operaciones TI: responsables de entregar servicio día a día, así como de la administración de instalaciones y el uso de informes.

SERVICE DESK

  • Objetivos
    • Registrar incidencias y peticiones de servicio.
    • Asignar prioridad y categoría.
    • Notificar a los usuarios los cambios programados.
    • Identificar si hemos de actualizar la CMS.
  • Rol
    • SPOC (Single Point Of Contact)
    • Responsable del manejo eficaz de incidencias y peticiones de servicio
  • Estructura organizativa
    • Local (distribuido): 1 Service Desk por zona (se puede escalar a 1 Service Desk único).
    • Centralizado: 1 Service Desk único para todos.
    • Virtual: Service Desk único pero no centralizado, sin ubicación definida, con acceso a la SKMS.
    • Follow the Sun: operarios disponibles por usos horarios, 24h.
  • Otros
    • El Personal del Service Desk depende de a) la demanda b) y lo definido en los SLA.
    • Deben usarse métricas para medir el éxito del Service Desk.

PROCESOS

1- Gestión de incidencias

  • Objetivo: resolver la incidencia lo más rápidamente posible sin resolver la causa raíz.
  • Definición
    • Interrupción no planificada o reducción de la calidad del servicio TI.
    • También lo es un fallo de un elemento de configuración que no haya afectado todavía al servicio.
  • Prioridad = impacto + urgencia.
  • Incidencias graves: tienen mayor urgencia debido a su alto impacto en el negocio. Requieren procesos separados, para no descuidar el proceso de Gestión de incidencias .
  • Proceso de gestión de incidencias: Identificación -> Registro -> Categorización -> Priorización -> Investigación y diagnóstico -> Resolución y recuperación -> Cierre

2- Gestión de problemas

  • Objetivo: prevenir proactívamente incidencias (investigando la causa raíz), problemas y errores.
  • Usa una Base de Datos de Errores Conocidos (KEDB). Esta base de datos es deseable que esté integrada con la CMDB, formando así parte del SKMS.
  • Definiciones:
    • Problema: causa de una o más incidencias.
    • Solución temporal (workaround): levantar un servicio antes de identificar la causa raíz.
    • Error conocido: problema que posee una causa raíz documentada y una solución temporal.
  • La categorización de incidencias ayuda a establecer tendencias.
  • KEDB:
    • Almacena errores conocidos y resoluciones de incidencias y problemas.
    • Contiene detalles exactos del fallo y de los síntomas.

3- Gestión de peticiones (Request Fullfilment)

  • Abastece y entrega servicios estándar, predefinidos y aprobados. También incluye consultas o dudas.
  • Las peticiones no son ni incidencias ni cambios. Es un término genérico para diferentes solicitudes o peticiones de los usuarios. En el caso de pedir algún cambio, éste no entraría dentro de la categoría de cambios, al tratarse de algo todavía más simplificado que un «cambio estándar».
  • El catálogo de servicios proporciona información a los usuarios sobre qué servicios les corresponden.
  • Son responsabilidad del Service Desk.

4- Gestión de accesos (a servicios)

  • Derecho a usar un servicio (por ejemplo, telefonía móvil).
  • Ejecuta políticas definidas en Gestión de la disponibilidad y Gestión de la Seguridad de la Información.
  • Este proceso puede iniciarse con una petición de servicio.
  • Definiciones:
    • Acceso: alcance de la funcionalidad a la que tiene derecho el usuario.
    • Identidad: identificación única de un usuario en una empresa.

5- Gestión de Eventos

  • Evento: valor inusual en un componente de servicio.
  • Son alertas o notificaciones sobre cambios de estado.
  • Categorías:
    • Informativo: valor regular.
    • Advertencia: valor inusual.
    • Excepción: valor anormal.
  • Instrumentación: es lo que se puede monitorizar de los CIs.
  • Alerta: cuando un evento sobrepasa un umbral predefinido.

ITIL Fase 3: Transición

Objetivos

  • Llevar con éxito a producción un servicio nuevo o modificado, diseñado previamente, con los costes previstos.
  • Menor impacto y riesgos acotados.
  • Proporcionar planes claros e integrales.

PROCESOS

1- Gestión de Cambios

  • META: medios y procedimientos estandarizados (bien documentados) reduciendo cualquier impacto sobre el servicio.
  • Va de la mano con gestión de configuraciones.
  • Gestión de cambios no se encarga de gestionar facturas ni gastos.
  • Definiciones:
    • Cambio: «adición, modificación o eliminación de un servicio, y su documentación asociada».
      • No son cambios, ni cambios mayores (cambios estructurales, a nivel de empresa o en un proceso de negocio) ni cambios menores (a nivel operativo).
    • Solicitud de cambio (RFC): petición formal para un cambio.
    • Cambio estándar: cambios rutinarios de bajo riesgo.
    • Cambio de emergencia: cambio que no tiene Service Design Package.
    • Comité de cambios (CAB): se reúne periódicamente para evaluar, priorizar, autorizar, revisar los RFC y ejecutar los PIR (Revisión post-implementación).
    • Comité de cambios de emergencia (ECAB).
  • Hay que definir qué es un cambio y qué es operativa normal.
  • Documentos de la planificación de cambios:
    • Calendario de Cambios (CS) aprobados.
    • Documento de Paradas Planificadas (Planned Downtime) PD.
  • El proceso de cambios consta de las siguientes etapas: Registro -> Revisión -> Evaluación del impacto -> Priorización -> Análisis de riesgo -> Verificación -> Cierre.
    • Registro y revisión
      • Los cambios deben registrarse.
      • Han de existir procedimientos para solicitar cambios.
      • El CAB revisará los RFC.
    • Evaluación: Las 7R de la gestión de cambios -> Evaluación del impacto.
      • Requerimiento: ¿quién solicitó el cambio?
      • Razón: ¿cuál es el motivo del cambio?
      • Resultado esperado con el cambio.
      • Riesgos: ¿qué riesgos presenta el cambio?
      • Recursos que se necesitan para efectuar el cambio.
      • Responsables de hacer el cambio.
      • Relación con otros cambios.
    • Priorización y riesgos
      • Primero se usará el impacto que puede provocar (el impacto determinará la categoría del cambio, menor, medio o mayor).
      • Segundo se le dará una prioridad al cambio.
    • Análisis y cierre
      • El CAB realizará la Revisión Post Implementación (PIR), que garantiza:
        • Que el cambio ha alcanzado sus objetivos.
        • Que todos están satisfechos y no hay efectos secundarios imprevistos.
        • Que todo está documentado.
  • Plan de remediación:
    • Actúa cuando el resultado de un cambio no es satisfactorio.
    • No siempre existen back outs (vuelta atrás). Es entonces cuando se usa la remediación.

2- Gestión de la Configuración y Activos de Servicio (SACM)

  • Objetivo: definir los componentes de los servicios y de TI y mantener la CMDB.
  • Proporciona info precisa sobre configuraciones.
  • Minimiza los problemas causados por malas configuraciones.
  • La CMDB
    • No es solo de ítems, también lleva relaciones.
    • El número de columnas marca la amplitud de la CMDB.
    • La profundidad de la CMDB (el detalle) viene marcada
  • Definiciones:
    • CI (Configuration Item): cada uno de los componentes de la infraestructura.
    • CMDB (Configuration Management DataBase): base de datos para organizar y relacionar los CI. Contiene información sobre incidencias, problemas y solicitudes de cambio de cada CI.
    • CMS (Configuration Management System): herramientas y bases de datos usadas para gestionar la información de configuración.
    • SKMS (Service Knowledge Management System): herramientas y bases de datos usadas para gestionar el conocimiento y la información. Tiene toda la información que un proveedor de servicios necesita para gestionar sus servicios.

SKMS

  • DML (Biblioteca Definitiva de Medios): contiene versiones aprobadas de CI de software. Puede contener licencias y documentación.
  • Configuration Baseline: configuración de un servicio funcionando correctamente.
  • Snapshot: estado más reciente de un entorno o CI. Se incluye en el CMS.

3- Gestión de Versiones y Despliegues

  • Objetivos:
    • Garantizar que existen planes de versiones y despliegues.
    • Asegurar que pueden crearse, instalarse, testearse y desplegarse paquetes de versiones con éxito y dentro de los plazos, con el menor impacto posible.
  • Definiciones:
    • Unidad de lanzamiento: parte de un servicio o infraestructura TI que será liberada conjuntamente. No tiene por qué ser un primer lanzamiento, puede ser cualquiera. Por ejemplo: departamento contable.
    • Identificación de la versión: todos los lanzamientos deben identificarse de forma única.
  • Tipos de despliegue:
    • Big Bang: a todos los usuarios conjuntamente.
    • Phased (por fases): a diversos grupos en momentos diferentes.
  • Opciones:
    • Pushed
    • Pulled
  • Modelo en V del servicio (a la izquierda, requisitos del servicio, a la derecha, validación y verificación)

Modelo en V

  • Roles:
    • Gestor de versiones: crea y prueba la versión final.
    • Gestor de despliegues: planifica el despliegue y es el responsable del mismo.
  • Early Life Support: provee recursos para resolver problemas durante el despliegue.