Cloud con Redhat OpenShift Flex: Difference between revisions

From Dolibarr ERP CRM Wiki
Jump to navigation Jump to search
No edit summary
m (Import interlang links (links to translated versions of this page in other languages) from origin English page "Cloud_with_Redhat_OpenShift_Flex".)
 
(31 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<!-- BEGIN interlang links -->
<!-- Do NOT edit this section
    Links below are automatically managed by PolyglotBot
    You can edit links on the English source page : Cloud_with_Redhat_OpenShift_Flex -->
[[en:Cloud_with_Redhat_OpenShift_Flex]]
<!-- END interlang links -->
[[Category:Admin]]
[[Category:Admin]]
[[Category:Admin_es]]
[[Category:Cloud]]
[[Category:Cloud]]
{{TemplateDocUser}}
{{TemplateDocUser}}


This page is a tutorial to explain how to install Dolibarr ERP-CRM on the Redhat OpenShift Flex Platform www.openshift.com
Esta página es un tutorial para explicar cómo instalar Dolibarr ERP-CRM en la plataforma Redhat OpenShift Flex www.openshift.com


''click twice on image to enlarge''
''haga clic dos veces sobre la imagen que desea agrandar''


Image 1<br />
Image 1<br />
Line 15: Line 23:
'''OpenShift plataforma como servicio'''
'''OpenShift plataforma como servicio'''


OpenShift es Plataforma como Servicio (PaaS) de Red Hat, que permite a los desarrolladores crear rápidamente aplicaciones escalables host,  en un entorno de nube. Con OpenShift tienes elección de ofertas, en línea, en la premisa, y las opciones de proyectos de código abierto.
OpenShift es Plataforma como Servicio ([http://en.wikipedia.org/wiki/Platform_as_a_service PaaS]) de Red Hat, que permite a los desarrolladores crear rápidamente aplicaciones escalables host,  en un entorno de nube. Con OpenShift tienes elección de ofertas, en línea, en la premisa, y las opciones de proyectos de código abierto.


OpenShift brinda ayuda para  construir y desplegar aplicaciones web, backends móviles, arquitecturas orientadas a servicios, y recibe sus servicios favoritos.
OpenShift brinda ayuda para  construir y desplegar aplicaciones web, backends móviles, arquitecturas orientadas a servicios, y recibe sus servicios favoritos.
Line 23: Line 31:


'''Que es un Gear?'''<br />
'''Que es un Gear?'''<br />
Un gear es un contenedor de recursos limitados que se ejecuta una o más pilas de software especificados por el usuario, también conocidas como cartridges. Cada gear tiene una cantidad limitada de memoria RAM y espacio en disco.
Un gear es un contenedor de recursos limitados que ejecuta una o más pilas de software especificados por el usuario, también conocidas como cartridges. Cada gear tiene una cantidad limitada de memoria RAM y espacio en disco.
Si una aplicación necesita más recursos, puede ser configurado para utilizar automáticamente más gears.
Si una aplicación necesita más recursos, puede ser configurado para utilizar automáticamente más gears.




'''¿Cómo trabajan los Gears?'''<br />
'''¿Cómo trabajan los Gears?'''<br />
Echemos un vistazo a una aplicación de ejemplo basada en Drupal que se ejecuta en OpenShift. Podemos estimar las necesidades y los costos de la aplicación en las diferentes etapas.
Echemos un vistazo a una aplicación de ejemplo basada en Drupal que se ejecuta en OpenShift. Podemos estimar las necesidades de la aplicación en las diferentes etapas.


15 páginas / segundo
*15 páginas / segundo
Cientos de artículos
*Cientos de artículos
~ 50k visitantes por mes
*~ 50k visitantes por mes
3 pequeños engranajes
*3 pequeños Gears
Plan Libre
*Plan Libre


Como vemos, un plan libre, puede ser suficiente, para una Empresa pequeña o mediana.
Como vemos, un plan libre, puede ser suficiente, para una Empresa pequeña o mediana.
Line 40: Line 48:




En OpenShift, tenemos dos posibilidades claras, para poner en marcha Dolibarr.
En OpenShift, tenemos dos posibilidades claras, para Dolibarr, desde la puesta en marcha, hasta la puesta en producción.


1.- Como desarrolladores, nos da la posibilidad de extender o crear nuestros propios módulos.<br />
1.- Extender o crear nuestros propios módulos.<br />
2.- Como empresarios, nos da la posibilidad de poner en producción nuestro DoliBarr.
2.- Poner en producción nuestro DoliBarr.




'''Ventajas que nos ofrece OpenShift'''
'''Ventajas que nos ofrece OpenShift'''


Es un sitio seguro, al cual se accede a través de SSH.
Es un sitio seguro, al cual se accede a través de [http://en.wikipedia.org/wiki/Secure_Shell SSH].


Es escalable
Es escalable<br />
Aplicación de escala permite que la aplicación reaccionar a los cambios en el tráfico y automáticamente asignar los recursos necesarios para manejar su demanda actual. La infraestructura OpenShift monitorea el tráfico de Internet entrante y automáticamente trae copias de su cartucho de Web en línea para manejar las peticiones.
Aplicación escalable, permite a la aplicación reaccionar a los cambios en el tráfico y automáticamente asignar los recursos necesarios para manejar su demanda actual. La infraestructura OpenShift monitorea el tráfico de Internet entrante y automáticamente trae copias de su cartucho de Web en línea para manejar las peticiones.


Nos da control total, sobre nuestra base de datos, para conectarnos remotamente a través de un cliente GUI como HeidySQL.
Nos da control total, sobre nuestra base de datos, para conectarnos remotamente a través de un cliente GUI como HeidySQL.


En caso de decantarnos por MySql, tenemos a disposición, el motor InnoDB, imprescindible para transacciones.
En caso de decantarnos por MySql, tenemos a disposición, el motor [http://en.wikipedia.org/wiki/InnoDB InnoDB], imprescindible para transacciones.


Nos da la posibilidad, de compartir Certificados SSL de RedHat o personalizar nuestro propio SSL, en caso de tenerlo. Imprescindible, para enviar nuestros datos, tanto de logín o de transferencias bancarias, encriptadas y seguras.
Nos da la posibilidad, de compartir Certificados SSL de RedHat o personalizar nuestro propio [http://en.wikipedia.org/wiki/Transport_Layer_Security SSL], en caso de tenerlo. Imprescindible, para enviar nuestros datos, tanto de logín o de transferencias bancarias, encriptadas y seguras.


Dicho todo esto, comencemos, la puesta en marcha de nuestra aplicación DoliBarr.
Dicho todo esto, comencemos, la puesta en marcha de nuestra aplicación DoliBarr.
Line 88: Line 96:




Elija un cartucho de programación web
Elija un Cartridge de programación web


Image 5<br />
Image 5<br />
Line 101: Line 109:
2. Configure la aplicación.
2. Configure la aplicación.


Es importante, definir bien el nombre de dominio, para este tutorial, hemos usado sdme. El domino, no se puede cambiar más a menos que, borremos todas nuestras aplicaciones y empecemos nuevamente de cero y eso es algo que a nadie quiere.
Es importante, definir bien el nombre de dominio, para este tutorial, hemos usado sdme. El dominio, no se puede cambiar más a menos que, borremos todas nuestras aplicaciones y empecemos nuevamente de cero y eso es algo que nadie quiere.


También, tendremos que informar, si tenemos un repositorio externo Git, con nuestro código.
También, tendremos que informar, si tenemos un repositorio externo Git, con nuestro código.
Line 150: Line 158:
Manos a la obra.
Manos a la obra.


Necesitamos un cliente SSH/FTP como WinSCP y PuTTY.
Necesitamos un cliente SSH/FTP como [http://sourceforge.net/projects/winscp WinSCP] y PuTTY.


Los Bajamos y los instalamos.
Los Bajamos y los instalamos.
Line 160: Line 168:




Double Click in puttygen.
Doble Click en puttygen.


image 11<br />
image 11<br />
[[File:Puttygen_initial.JPG|400px]]
[[File:Puttygen_initial.JPG|400px]]


We leave the default values, SSH-2 RSA, and the number of bits in 2048.
Dejamos los valores por defecto, SSH-2 RSA y el número de bits en 2048.


With these values and will have a key, heavily encrypted.
Con estos valores ya tendremos una key, fuertemente encriptada.


Click en Generate


Image 12<br />
Image 12<br />
[[File:Puttygen_generating.JPG|400px]]
[[File:Puttygen_generating.JPG|400px]]


To generate our key, we must move the mouse pointer constantly in the blank space of program.
Para que genere de nuestra key, debemos mover el puntero del ratón, constantemente en el espacio en blanco del programa.




Line 179: Line 188:
[[File:Puttygen_generate_end.JPG|400px]]
[[File:Puttygen_generate_end.JPG|400px]]


Once our key generation is complete, we will add a passphrase.
Una vez que ha finalizado la generación de nuestra key, tendremos que poner una passphrase.


Click Save public key to save our public key, we give the name of rsa.pub, do the same with save private key, and give the name of rsa.ppk.
Click en Save public key, para guardar nuestra key publica, le damos el nombre de rsa.pub, hacemos lo mismo con Save private key, y le damos el nombre de rsa.ppk.


A public key is like a lock on a door and the private key is like a key that opens the lock.
Una key pública, es como la cerradura de una puerta y la key privada es como la llave que abre esa cerradura.


We mark the generated code in the text area and copy it, then we go to our OpenShift console.
Marcamos el código generado en el área de texto y lo copiamos, luego nos vamos a nuestra consola de OpenShift.




Line 191: Line 200:
[[File:Settings_openshift_copy_public_key.JPG|500px]]
[[File:Settings_openshift_copy_public_key.JPG|500px]]


Paste the code into Paste the contents of your public key file (. Pub) and click Save.
Pegamos el código en Paste the contents of your public key file (.pub) y click en Save.




Line 197: Line 206:
[[File:Settings_openshift_public_key_saved.JPG|500px]]
[[File:Settings_openshift_public_key_saved.JPG|500px]]


Perfect OpenShift now has our lock and we have the key.
Perfecto ahora OpenShift, tiene nuestra cerradura, y nosotros la llave.


Now we go to the Applications tab in our console OpenShift.
Ahora vamos al tab Applications en nuestra consola de OpenShift




Click on our application startdolibarr.
Click sobre nuestra aplicación startdolibarr.


Click in Want to log in to your application?.
Click en Want to log in to your application?.


Image 16<br />
Image 16<br />
[[File:SourceCode_and_Remote_Access.JPG|500px]]
[[File:SourceCode_and_Remote_Access.JPG|500px]]


Copy the code ssh 53641a41e0b8cdf5ec000b76@startdolibarr-sdme.rhcloud.com
Copiamos el código ssh 53641a41e0b8cdf5ec000b76@startdolibarr-sdme.rhcloud.com




We opened our WinSCP.
Abrimos nuestro WinSCP.


Image 17<br />
Image 17<br />
[[File:Login_WinSCP.JPG|500px]]
[[File:Login_WinSCP.JPG|500px]]


We put the first part, 53641a41e0b8cdf5ec000b76 before the @ in the User name field, and the second part, startdolibarr-sdme.rhcloud.com after the @ in the Host name field.
Ponemos la primera parte, 53641a41e0b8cdf5ec000b76 antes de la @ en el campo User name, y la segunda parte, startdolibarr-sdme.rhcloud.com después de la @ en el campo Host name.


It is advisable not to place the password / passphrasse, at this point, for security reasons. We'll use it later.
Es aconsejable no colocar el password/passphrasse, en este punto, por motivos de seguridad. La usaremos más adelante.


Click in Advanced.
Click en Advanced.




Line 227: Line 236:
[[File:Login_WinSCP_SSH_private_Key.JPG|500px]]
[[File:Login_WinSCP_SSH_private_Key.JPG|500px]]


In Private key file: select your private key rsa.ppk, click OK, click save, and click Login.
En Private key file: seleccionamos nuestra clave privada rsa.ppk, click en OK, click en guardar y click en Login.




Line 233: Line 242:
[[File:Warning_connect_to_WinSCP.JPG|500px]]
[[File:Warning_connect_to_WinSCP.JPG|500px]]


When we leave this nice window click Yes.
Cuando nos salga esta agradable ventanita click en Yes.




Line 239: Line 248:
[[File:WinSCP_login_passphrasse.JPG]]
[[File:WinSCP_login_passphrasse.JPG]]


Here we place our passphrase and click OK.
Aquí colocamos nuestra passphrase y click en OK.




Line 245: Line 254:
[[File:Session_WinSCP_accept.JPG|500px]]
[[File:Session_WinSCP_accept.JPG|500px]]


Viola we have access via SSH to our Gear.
Viola tenemos acceso vía SSH a nuestro Gear.


On the left is our local space and right remote.
En la parte izquierda esta nuestro espacio local y a la derecha el remoto.




= Submit Dolibarr files =
= Enviar archivos de Dolibarr =


Image 22<br />
Image 22<br />
[[File:Download_Dolibarr_generic_version.JPG|500px]]
[[File:Download_Dolibarr_generic_version.JPG|500px]]


We went down the generic version of Doibarr.
Bajamos la versión genérica de Doibarr.




Line 261: Line 270:
[[File:Uploading_DoliBarr_into_repo.JPG|500px]]
[[File:Uploading_DoliBarr_into_repo.JPG|500px]]


In the remote part, selected route
En la parte remota seleccionamos la ruta
/var/lib/openshift/53641a41e0b8cdf5ec000b76/app-root/runtime/repo
/var/lib/openshift/53641a41e0b8cdf5ec000b76/app-root/runtime/repo


Transfer the Dolibarr folder on the local machine to OpenShift, pressing F5. This process may take several minutes, so while we wait, we will work to create our Gear for the database.
Transferimos la carpeta dolibarr, de nuestra máquina local a Openshift, presionando F5. Este proceso, puede tardar varios minutos, así que mientras esperamos, nos dedicaremos a  crear nuestro Gear, para la base de datos.




Line 270: Line 279:
[[File:Add_MySQL_5.5.JPG|500px]]
[[File:Add_MySQL_5.5.JPG|500px]]


We return to the console and with our OpenShift application selected, we click on the bottom of the Databases section and select Add MySQL 5.5
Volvemos a la consola de OpenShift y con nuestra aplicación seleccionada, hacemos click en la parte inferior, del apartado Databases y seleccionamos Add MySQL 5.5




Line 276: Line 285:
[[File:Add_Cartridge_MySL_to_startdolibarr.JPG|500px]]
[[File:Add_Cartridge_MySL_to_startdolibarr.JPG|500px]]


Click in add Cartridge.
Click en add Cartridge.


Note -. In a normal application without Scale, the Cartridge Mysql be added to current Gear, but in our case, OpenShift reports that will address a new Gear for MySQl.
Nota.- En una aplicación normal sin Scale activado, el Cartridge Mysql se añadiría al Gear actual, pero en nuestro caso, openShift nos informa que se ocupará un nuevo Gear para MySQL.




Line 284: Line 293:
[[File:Add_MySQL_Please_make_note_of_these_credentials.JPG|500px]]
[[File:Add_MySQL_Please_make_note_of_these_credentials.JPG|500px]]


Copy the MySQL access credentials. They will be used later to access our data base.
Copiamos los credenciales de acceso a MySQL. Los usaremos más adelante, para acceder a nuestra base de datos.




Line 290: Line 299:
[[File:Delete_Index_php.JPG|500px]]
[[File:Delete_Index_php.JPG|500px]]


Once you have completed the upload of dolibarr described in picture 23. Edit the index.php file.
Una vez que ha terminado el upload de dolibarr, descrito en la imagen 23. Editamos el file index.php.


We opened our favorite text editor and replace with the following code.
Lo abrimos en nuestro editor de texto favorito y reemplazamos con el siguiente código.


<?php<br />
<?php<br />
Line 298: Line 307:
?>
?>


We make a copy of index.php in dolibarr folder and re-edit it and remove dolibarr/.
Hacemos una copia del index.php en la carpeta dolibarr y  volvemos a editarlo  y quitamos dolibarr/.


<?php<br />
<?php<br />
Line 308: Line 317:
[[File:Index_php_inside_dolibarr_folder.JPG|500px]]
[[File:Index_php_inside_dolibarr_folder.JPG|500px]]


What we have just done, serves don't shown the structure our folders and files of dolibarr from the web browser, with the index.php we force redirect to the home of Dolibarr.
Lo que acabamos de hacer, sirve, para que no se muestre la estructura de nuestros folders y files de dolibarr en el navegador web, con el index.php obligamos a que se redirija al inicio de DoliBarr.


Finally, before starting the configuration of dolibarr, should use SSL (encryption protocol), which provides security when sending our data from the web browser to the server. The use of SSL provides plus extra measures of the dolibarr security, which are already good.
Por último y antes de empezar con la configuración de dolibarr, conviene usar SSL (protocolo criptográfico), que nos proporciona seguridad a la hora de enviar nuestros datos desde el Navegador web al servidor. El uso de SSL es para dar un plus extra a las medidas de seguridad propias de dolibarr, que ya son buenas.


We opened our text editor again and add the following.
Abrimos nuestro editor de textos una vez más y añadimos lo siguiente.


*RewriteEngine on<br />
*RewriteEngine on<br />
Line 318: Line 327:
*RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
*RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [R,L]


Save with the name .htaccess right next to our dolibarr folder and index.php.
Guardar con el hombre de .htaccess justo al lado de nuestro folder dolibarr y del index.php


As shown in the following image.
Como se muestra en la siguiente imagen.




Line 335: Line 344:
[[File:Dolibarr_con_SSL_unfoll.JPG|500px]]
[[File:Dolibarr_con_SSL_unfoll.JPG|500px]]


We see the SSL certificate is accepted by the browser.
Vemos como el certificado SSL es aceptado por el navegador.




= Run Dolibarr install Wizard =
= Ejecutar el asistente de instalación Dolibarr =


We start the Dolibarr setup.
Comenzamos con la configuración  de DoliBarr.


We select from the drop down, Default language to use (language code):, the appropriate language and click Next step.
Seleccionamos del desplegable, Default language to use (language code): , el idioma correspondiente y click en Next step.




Line 348: Line 357:
[[File:Start_Install.JPG|500px]]
[[File:Start_Install.JPG|500px]]


Click in start.
Click en start.




Line 354: Line 363:
[[File:Environment_Variables_conextion_MySQL.JPG|500px]]
[[File:Environment_Variables_conextion_MySQL.JPG|500px]]


We review the image 26, when we created the MySQL Cartridge.
Revisamos la imagen 26, cuando creamos el Cartridge MySQL.


And we focus on the lines.
Y nos enfocamos en las líneas.


*Root User: adminCRERXju<br />
*Root User: adminCRERXju<br />
Line 364: Line 373:




To create the connection to the database, OpenShift gives us some environment variables. For dolibarr can connect to the database, we need to know the value of these variables, so back to WinSCP and the .env/mysql folder find these variables, as shown in the picture above.
Para crear la conexión con la base de datos, OpenShift nos proporciona unas variables de entorno. Para que dolibarr pueda conectarse a la base de datos, necesitamos saber el valor, de estas variables, así que volvamos a WinSCP y en la carpeta .env/mysql encontraremos dichas variables, como se muestra en la imagen de arriba.


Click the right mouse button on OPENSHIFT_MYSQL_DB_HOST, click on edit and show us the value of the variable, copy and paste into the Server field as shown in the image below. We do the same for OPENSHIFT_MYSQL_DB_PORT variable and paste its value in the Port field.
Click con el botón derecho sobre OPENSHIFT_MYSQL_DB_HOST, click en edit y nos mostrara el valor que tiene la variable, copiamos y pegamos en el campo Server como se muestra en la imagen de abajo. Hacemos lo mismo para la variable OPENSHIFT_MYSQL_DB_PORT y pegamos su valor en el  campo Port.




Line 372: Line 381:
[[File:Create_DDBB_in_configure_DoliBarr.JPG|500px]]
[[File:Create_DDBB_in_configure_DoliBarr.JPG|500px]]


Note.- When you will these follow steps for the host and port for your particular installation, should be different than shown in this example.
Nota.- Para cuando sigan estos pasos, el host y el puerto, para su instalación particular, debería ser diferente, al mostrado en este ejemplo.


Note2. - In this step, we also could create a different data base and a different owner, because be have the superuser credentials of MySQL, but this step does not touch it here today.
Nota2.- En este pasó, también podríamos crear una Base de datos diferente y un propietario diferente, ya que poseemos las credenciales de súper usuario de MySQL, pero este paso no lo tocaremos aquí hoy.


Click Next Step and displays the following window.
Click en Next Step y nos muestra la siguiente ventana.




Line 382: Line 391:
[[File:Confirm_configuration.JPG|500px]]
[[File:Confirm_configuration.JPG|500px]]


This screen basically tells us that the connection to the database has been established and this information is saved in the configuration file conf.php of dolibarr.
Esta pantalla, básicamente nos informa que, la conexión a la base de datos se ha establecido y que se ha guardado esta información, en el file de configuración de dolibarr conf.php.


Click Next Step and start creating tables in the database, necessary for the work of Dolibarr.
Click en Next Step y comenzará la creación de las tablas en la base de datos, necesarias para el trabajo de DoliBarr.




Line 390: Line 399:
[[File:Database_susetfull_created.JPG|500px]]
[[File:Database_susetfull_created.JPG|500px]]


This screen reports that have completed the creation of the tables.
Esta pantalla informa que, ha terminado la creación de las tablas.


Click in Next step.
Click en Next step.




Line 398: Line 407:
[[File:Insert_admin_credentials.JPG|500px]]
[[File:Insert_admin_credentials.JPG|500px]]


We fill the fields with the username and password, which will be the administrator, for this example I used admin/admin. For the real case should be a stronger password.
Llenamos los campos con el username y password, del que será el administrador, para este ejemplo he usado admin/admin. Para el caso real debería ser un password más fuerte.


Click in Next step.
Click en Next step.




Line 406: Line 415:
[[File:End_of_setup.JPG|500px]]
[[File:End_of_setup.JPG|500px]]


Click in Go to Dolibarr (setup area).
Click en Go to Dolibarr (setup area).




Line 412: Line 421:
[[File:Insert_admin_credentials.JPG|500px]]
[[File:Insert_admin_credentials.JPG|500px]]


Insert the username and password of the administrator, as defined above and Viola. We are within Dolibarr.
Introducimos el username y password del administrador, definido anteriormente y Viola. Estamos dentro de DoliBarr.




= Appendix: Connection remote MySQL =
= Apéndice: MySQL conexión remota =


As a final step, we will see the connection from a local client database, to our remote MySQL.
Como paso final, veremos la conexión, desde un cliente local de Base de datos, hasta nuestro MySQL remoto.


For this example I will use HeidiSQL, which serves both MySQL or PostgreSQL database and is Free.
Para este ejemplo usare [http://sourceforge.net/projects/heidisql HeidiSQL], que sirve tanto para base de datos MySQL o PostgreSQL y es Gratuito.


Open HeidiSQL.
Abrimos HeidiSQL.


The first thing to do is select MySQL (SSH tunnel) Network type drop down, in so doing, HeidiSQL adds a new tab called SSH tunnel, as shown in the image below.
Lo primero que debemos hacer es seleccionar MySQL (SSH tunnel) del desplegable Network type, al hacer esto, HeidiSQL añade un nuevo tab llamado SSH tunnel, como se muestra en la imagen de abajo.




Line 429: Line 438:
[[File:Ssh_tunnel_HeidiSQL.JPG|500px]]
[[File:Ssh_tunnel_HeidiSQL.JPG|500px]]


Note that, in the plink.exe location: field must specify the path PuTTY.exe, in the Password field entered the passphrase and Local Port field should always be in 3307.
Tenga en cuenta que, en el campo plink.exe location: de deberá especificar la ruta de PuTTY.exe, en el campo Password introducidos la passphrase y el campo Local Port debe estar siempre en 3307.


We return to the Settings tab.
Volvemos al tab Settings.




Line 437: Line 446:
[[File:Settings_heidisql.JPG|500px]]
[[File:Settings_heidisql.JPG|500px]]


We fill the fields with the credentials of the database, select the database, click in Save and click in Open to test the connection.
Obtenemos el hostname y el port, de MySQL, para conectar DoliBarr a la Base de datos. Arriba en la imagen 33.
Llenamos los campos, con las credenciales de la base de datos, seleccionamos la base de datos y click en guardar y en Open para probar la conexión.


Image 43<br />
Image 43<br />
[[File:HeidiSQL_has_established_connection.JPG|500px]]
[[File:HeidiSQL_has_established_connection.JPG|500px]]


And with that we end this tutorial.
 
 
== Adición ==
 
=== Conexión al Gear MySQL ===
 
Recordaréis cuando obtuvimos el hostname y el port, de MySQL, para conectar DoliBarr a la Base de datos. Arriba en la imagen 33.
 
Image 44<br />
[[File:WinSCP_connect_MySQL_Gear.JPG|500px]]
 
La primera parte del Host name: es también el User name: 5364c670e0b8cd09f500036d-sdme.rhcloud.com damos click en Advanced y verificamos, que todo este como en la imagen 18.
 
Click en Save y click en Login.
 
Con WinSCP abierto, vamos al menú Options --> preferences --> Integration --> Applications como se muestra en la imagen de abajo.
 
En el campo PuTTY/terminal client path: seleccionamos la ruta, donde tenemos el putty.exe y marcamos los tres CheckBoxes.
 
 
Image45<br />
[[File:Preferences_winscp_run_putty.JPG|500px]]
 
 
Cada vez que iniciemos sesión con WinSCP también se iniciará sesión en PuTTY. Como vemos en la imagen de abajo.
 
Image 46<br />
[[File:Initialize_session_winscp_with_putty.JPG|500px]]
 
Tener PuTTY abierto y conectado a la misma sesión, nos permitirá ejecutar sentencias de línea de comandos, para parar o arrancar el Gear o el servidor MySQL.
 
Nota.- También en la parte remota de WinSCP, podemos navegar hacia carpetas como /var/lib/openshift/5364c670e0b8cd09f500036d/mysql/data/startdolibarr donde esta físicamente nuestra base de datos o podemos ir a /var/lib/openshift/5364c670e0b8cd09f500036d/app-root/logs para ver los logs de MySQL.
 
Si escribimos help, en la ventana de PuTTY, nos mostrará algunos comandos importantes.
 
Entre los comandos más comunes están:
 
ctl_app<br />
Controle su aplicación (MySQL)
 
*ctl_app start
*ctl_app stop
*ctl_app restart
*ctl_app status
 
 
ctl_all<br />
Similar a ctl_app pero podemos controlar todo el Gear.
 
*ctl_all start
*ctl_all stop
*ctl_all restart
*ctl_all status
 
Citados aquí www.openshift.com/developers/remote-access donde encontraremos más comandos útiles.
 
Y con esto terminamos este tutorial.

Latest revision as of 13:20, 23 July 2019

Esta página es un tutorial para explicar cómo instalar Dolibarr ERP-CRM en la plataforma Redhat OpenShift Flex www.openshift.com

haga clic dos veces sobre la imagen que desea agrandar

Image 1
Url openshift.JPG


Un poco sobre OpenShift

OpenShift plataforma como servicio

OpenShift es Plataforma como Servicio (PaaS) de Red Hat, que permite a los desarrolladores crear rápidamente aplicaciones escalables host, en un entorno de nube. Con OpenShift tienes elección de ofertas, en línea, en la premisa, y las opciones de proyectos de código abierto.

OpenShift brinda ayuda para construir y desplegar aplicaciones web, backends móviles, arquitecturas orientadas a servicios, y recibe sus servicios favoritos.

Openshfit trabaja con Gears y Cartridges, que son términos, con los que tendremos que familiarizarnos.


Que es un Gear?
Un gear es un contenedor de recursos limitados que ejecuta una o más pilas de software especificados por el usuario, también conocidas como cartridges. Cada gear tiene una cantidad limitada de memoria RAM y espacio en disco. Si una aplicación necesita más recursos, puede ser configurado para utilizar automáticamente más gears.


¿Cómo trabajan los Gears?
Echemos un vistazo a una aplicación de ejemplo basada en Drupal que se ejecuta en OpenShift. Podemos estimar las necesidades de la aplicación en las diferentes etapas.

  • 15 páginas / segundo
  • Cientos de artículos
  • ~ 50k visitantes por mes
  • 3 pequeños Gears
  • Plan Libre

Como vemos, un plan libre, puede ser suficiente, para una Empresa pequeña o mediana. Para empresas más grandes, se puede cambiar al plan siguiente.


En OpenShift, tenemos dos posibilidades claras, para Dolibarr, desde la puesta en marcha, hasta la puesta en producción.

1.- Extender o crear nuestros propios módulos.
2.- Poner en producción nuestro DoliBarr.


Ventajas que nos ofrece OpenShift

Es un sitio seguro, al cual se accede a través de SSH.

Es escalable
Aplicación escalable, permite a la aplicación reaccionar a los cambios en el tráfico y automáticamente asignar los recursos necesarios para manejar su demanda actual. La infraestructura OpenShift monitorea el tráfico de Internet entrante y automáticamente trae copias de su cartucho de Web en línea para manejar las peticiones.

Nos da control total, sobre nuestra base de datos, para conectarnos remotamente a través de un cliente GUI como HeidySQL.

En caso de decantarnos por MySql, tenemos a disposición, el motor InnoDB, imprescindible para transacciones.

Nos da la posibilidad, de compartir Certificados SSL de RedHat o personalizar nuestro propio SSL, en caso de tenerlo. Imprescindible, para enviar nuestros datos, tanto de logín o de transferencias bancarias, encriptadas y seguras.

Dicho todo esto, comencemos, la puesta en marcha de nuestra aplicación DoliBarr.

Create an account

Click en SIGN UP

Image 2
Sing up.JPG

Rellenamos nuestros datos, para crear una cuenta. Click en Sign Up


Image 3
Verify your account with OpenShift Online.JPG

Nos enviaran, un email, a nuestra cuenta de correo, para confirmar.

Cree una instancia

Parte 1 - Creando una instancia

Click en LOG IN nuevamente y nos mostrara el aspecto inicial de nuestra Consola de Aplicaciones.

Image 4
Control panel openshift account.JPG

Click en Create your first application now


Elija un Cartridge de programación web

Image 5
PHP apart.JPG

1. Busque el tipo de aplicación


Image 6
Configure de application.JPG

2. Configure la aplicación.

Es importante, definir bien el nombre de dominio, para este tutorial, hemos usado sdme. El dominio, no se puede cambiar más a menos que, borremos todas nuestras aplicaciones y empecemos nuevamente de cero y eso es algo que nadie quiere.

También, tendremos que informar, si tenemos un repositorio externo Git, con nuestro código.


Aquí viene lo divertido.

En scaling cambiaremos a Scale with web traffic.

La creación de esta aplicación, usara un Gear de los 3 que disponemos, lo indica justamente, al lado del botón Create Application.

Click en Create Application.

Image 7
Console startdolibarr Application.JPG

Cuando la aplicación es escalable, no se puede añadir más Cartridges, al Gear. Por ejemplo sí queremos usar MySql, deberá ir aparte, en otro Gear.

En la imagen, de arriba, vemos que a nuestro Gear, se ha añadido el balanceador de carga, que hará nuestra aplicación escalable.

Arriba en el extremo derecho, existe también un botón, por si necesitamos reiniciar el Gear.

Nota.- Con PuTTY, podríamos solventar necesidades más explicitas, para controlar nuestros Gears, con línea de comandos.


Click en el enlace Web load Balancer.

Image 8
HAProxy.JPG

HAProxy en Acción.

Image 9
Aspect your webpage.JPG

Si vemos nuestra url startdolibarr-sdme.rhcloud.com este es el aspecto inicial, que tiene.


Parte 2 - Configuración de Herramientas de administración

Hasta aquí todo bien. Ahora, pasemos a la segunda parte, de nuestro tutorial.

Para esta parte, que será la referida a la administración de nuestra aplicación, existen dos caminos, el primero es por CLI (línea de comandos basado en Ruby) y el segundo, de forma más declarativa, por consola y con SSH.

Para este tutorial, he elegido la forma más fácil he intuitiva, que es la segunda opción.


Manos a la obra.

Necesitamos un cliente SSH/FTP como WinSCP y PuTTY.

Los Bajamos y los instalamos.

Image 10
Folder WinSCP - PUTTY.JPG

Dentro la carpeta donde se instaló WinSCP, encontraremos la carpeta PuTTY y dentro de esta carpeta, el programa puttygen.exe, este programa es importante, ya que, es el que nos ayudara a generar nuestro acceso SSH, para conectarnos a nuestro Gear.


Doble Click en puttygen.

image 11
Puttygen initial.JPG

Dejamos los valores por defecto, SSH-2 RSA y el número de bits en 2048.

Con estos valores ya tendremos una key, fuertemente encriptada.

Click en Generate

Image 12
Puttygen generating.JPG

Para que genere de nuestra key, debemos mover el puntero del ratón, constantemente en el espacio en blanco del programa.


Image 13
Puttygen generate end.JPG

Una vez que ha finalizado la generación de nuestra key, tendremos que poner una passphrase.

Click en Save public key, para guardar nuestra key publica, le damos el nombre de rsa.pub, hacemos lo mismo con Save private key, y le damos el nombre de rsa.ppk.

Una key pública, es como la cerradura de una puerta y la key privada es como la llave que abre esa cerradura.

Marcamos el código generado en el área de texto y lo copiamos, luego nos vamos a nuestra consola de OpenShift.


Image 14
Settings openshift copy public key.JPG

Pegamos el código en Paste the contents of your public key file (.pub) y click en Save.


Image 15
Settings openshift public key saved.JPG

Perfecto ahora OpenShift, tiene nuestra cerradura, y nosotros la llave.

Ahora vamos al tab Applications en nuestra consola de OpenShift


Click sobre nuestra aplicación startdolibarr.

Click en Want to log in to your application?.

Image 16
SourceCode and Remote Access.JPG

Copiamos el código ssh 53641a41e0b8cdf5ec000b76@startdolibarr-sdme.rhcloud.com


Abrimos nuestro WinSCP.

Image 17
Login WinSCP.JPG

Ponemos la primera parte, 53641a41e0b8cdf5ec000b76 antes de la @ en el campo User name, y la segunda parte, startdolibarr-sdme.rhcloud.com después de la @ en el campo Host name.

Es aconsejable no colocar el password/passphrasse, en este punto, por motivos de seguridad. La usaremos más adelante.

Click en Advanced.


Image 18
Login WinSCP SSH private Key.JPG

En Private key file: seleccionamos nuestra clave privada rsa.ppk, click en OK, click en guardar y click en Login.


Image 19
Warning connect to WinSCP.JPG

Cuando nos salga esta agradable ventanita click en Yes.


Image 20
WinSCP login passphrasse.JPG

Aquí colocamos nuestra passphrase y click en OK.


Image 21
Session WinSCP accept.JPG

Viola tenemos acceso vía SSH a nuestro Gear.

En la parte izquierda esta nuestro espacio local y a la derecha el remoto.


Enviar archivos de Dolibarr

Image 22
Download Dolibarr generic version.JPG

Bajamos la versión genérica de Doibarr.


Image 23
Uploading DoliBarr into repo.JPG

En la parte remota seleccionamos la ruta /var/lib/openshift/53641a41e0b8cdf5ec000b76/app-root/runtime/repo

Transferimos la carpeta dolibarr, de nuestra máquina local a Openshift, presionando F5. Este proceso, puede tardar varios minutos, así que mientras esperamos, nos dedicaremos a crear nuestro Gear, para la base de datos.


Image 24
Add MySQL 5.5.JPG

Volvemos a la consola de OpenShift y con nuestra aplicación seleccionada, hacemos click en la parte inferior, del apartado Databases y seleccionamos Add MySQL 5.5


Image 25
Add Cartridge MySL to startdolibarr.JPG

Click en add Cartridge.

Nota.- En una aplicación normal sin Scale activado, el Cartridge Mysql se añadiría al Gear actual, pero en nuestro caso, openShift nos informa que se ocupará un nuevo Gear para MySQL.


Image 26
Add MySQL Please make note of these credentials.JPG

Copiamos los credenciales de acceso a MySQL. Los usaremos más adelante, para acceder a nuestra base de datos.


Image 27
Delete Index php.JPG

Una vez que ha terminado el upload de dolibarr, descrito en la imagen 23. Editamos el file index.php.

Lo abrimos en nuestro editor de texto favorito y reemplazamos con el siguiente código.

<?php
header("Location: dolibarr/htdocs");
?>

Hacemos una copia del index.php en la carpeta dolibarr y volvemos a editarlo y quitamos dolibarr/.

<?php
header("Location: htdocs");
?>


Image 28
Index php inside dolibarr folder.JPG

Lo que acabamos de hacer, sirve, para que no se muestre la estructura de nuestros folders y files de dolibarr en el navegador web, con el index.php obligamos a que se redirija al inicio de DoliBarr.

Por último y antes de empezar con la configuración de dolibarr, conviene usar SSL (protocolo criptográfico), que nos proporciona seguridad a la hora de enviar nuestros datos desde el Navegador web al servidor. El uso de SSL es para dar un plus extra a las medidas de seguridad propias de dolibarr, que ya son buenas.

Abrimos nuestro editor de textos una vez más y añadimos lo siguiente.

Guardar con el hombre de .htaccess justo al lado de nuestro folder dolibarr y del index.php

Como se muestra en la siguiente imagen.


Image 29
Add htaccess.JPG

HttpAndhttps.JPG


Image 30
Dolibarr con SSL.JPG

Image 31
Dolibarr con SSL unfoll.JPG

Vemos como el certificado SSL es aceptado por el navegador.


Ejecutar el asistente de instalación Dolibarr

Comenzamos con la configuración de DoliBarr.

Seleccionamos del desplegable, Default language to use (language code): , el idioma correspondiente y click en Next step.


Image 32
Start Install.JPG

Click en start.


Image 33
Environment Variables conextion MySQL.JPG

Revisamos la imagen 26, cuando creamos el Cartridge MySQL.

Y nos enfocamos en las líneas.

  • Root User: adminCRERXju
  • Root Password: tccRTZ8-xCnK
  • Database Name: startdolibarr
  • Connection URL: mysql://$OPENSHIFT_MYSQL_DB_HOST:$OPENSHIFT_MYSQL_DB_PORT/


Para crear la conexión con la base de datos, OpenShift nos proporciona unas variables de entorno. Para que dolibarr pueda conectarse a la base de datos, necesitamos saber el valor, de estas variables, así que volvamos a WinSCP y en la carpeta .env/mysql encontraremos dichas variables, como se muestra en la imagen de arriba.

Click con el botón derecho sobre OPENSHIFT_MYSQL_DB_HOST, click en edit y nos mostrara el valor que tiene la variable, copiamos y pegamos en el campo Server como se muestra en la imagen de abajo. Hacemos lo mismo para la variable OPENSHIFT_MYSQL_DB_PORT y pegamos su valor en el campo Port.


Image 34
Create DDBB in configure DoliBarr.JPG

Nota.- Para cuando sigan estos pasos, el host y el puerto, para su instalación particular, debería ser diferente, al mostrado en este ejemplo.

Nota2.- En este pasó, también podríamos crear una Base de datos diferente y un propietario diferente, ya que poseemos las credenciales de súper usuario de MySQL, pero este paso no lo tocaremos aquí hoy.

Click en Next Step y nos muestra la siguiente ventana.


Image 35
Confirm configuration.JPG

Esta pantalla, básicamente nos informa que, la conexión a la base de datos se ha establecido y que se ha guardado esta información, en el file de configuración de dolibarr conf.php.

Click en Next Step y comenzará la creación de las tablas en la base de datos, necesarias para el trabajo de DoliBarr.


Image 36
Database susetfull created.JPG

Esta pantalla informa que, ha terminado la creación de las tablas.

Click en Next step.


Image 37
Insert admin credentials.JPG

Llenamos los campos con el username y password, del que será el administrador, para este ejemplo he usado admin/admin. Para el caso real debería ser un password más fuerte.

Click en Next step.


Image 38
End of setup.JPG

Click en Go to Dolibarr (setup area).


Image 39
Insert admin credentials.JPG

Introducimos el username y password del administrador, definido anteriormente y Viola. Estamos dentro de DoliBarr.


Apéndice: MySQL conexión remota

Como paso final, veremos la conexión, desde un cliente local de Base de datos, hasta nuestro MySQL remoto.

Para este ejemplo usare HeidiSQL, que sirve tanto para base de datos MySQL o PostgreSQL y es Gratuito.

Abrimos HeidiSQL.

Lo primero que debemos hacer es seleccionar MySQL (SSH tunnel) del desplegable Network type, al hacer esto, HeidiSQL añade un nuevo tab llamado SSH tunnel, como se muestra en la imagen de abajo.


Image 41
Ssh tunnel HeidiSQL.JPG

Tenga en cuenta que, en el campo plink.exe location: de deberá especificar la ruta de PuTTY.exe, en el campo Password introducidos la passphrase y el campo Local Port debe estar siempre en 3307.

Volvemos al tab Settings.


Image 42
Settings heidisql.JPG

Obtenemos el hostname y el port, de MySQL, para conectar DoliBarr a la Base de datos. Arriba en la imagen 33. Llenamos los campos, con las credenciales de la base de datos, seleccionamos la base de datos y click en guardar y en Open para probar la conexión.

Image 43
HeidiSQL has established connection.JPG


Adición

Conexión al Gear MySQL

Recordaréis cuando obtuvimos el hostname y el port, de MySQL, para conectar DoliBarr a la Base de datos. Arriba en la imagen 33.

Image 44
WinSCP connect MySQL Gear.JPG

La primera parte del Host name: es también el User name: 5364c670e0b8cd09f500036d-sdme.rhcloud.com damos click en Advanced y verificamos, que todo este como en la imagen 18.

Click en Save y click en Login.

Con WinSCP abierto, vamos al menú Options --> preferences --> Integration --> Applications como se muestra en la imagen de abajo.

En el campo PuTTY/terminal client path: seleccionamos la ruta, donde tenemos el putty.exe y marcamos los tres CheckBoxes.


Image45
Preferences winscp run putty.JPG


Cada vez que iniciemos sesión con WinSCP también se iniciará sesión en PuTTY. Como vemos en la imagen de abajo.

Image 46
Initialize session winscp with putty.JPG

Tener PuTTY abierto y conectado a la misma sesión, nos permitirá ejecutar sentencias de línea de comandos, para parar o arrancar el Gear o el servidor MySQL.

Nota.- También en la parte remota de WinSCP, podemos navegar hacia carpetas como /var/lib/openshift/5364c670e0b8cd09f500036d/mysql/data/startdolibarr donde esta físicamente nuestra base de datos o podemos ir a /var/lib/openshift/5364c670e0b8cd09f500036d/app-root/logs para ver los logs de MySQL.

Si escribimos help, en la ventana de PuTTY, nos mostrará algunos comandos importantes.

Entre los comandos más comunes están:

ctl_app
Controle su aplicación (MySQL)

  • ctl_app start
  • ctl_app stop
  • ctl_app restart
  • ctl_app status


ctl_all
Similar a ctl_app pero podemos controlar todo el Gear.

  • ctl_all start
  • ctl_all stop
  • ctl_all restart
  • ctl_all status

Citados aquí www.openshift.com/developers/remote-access donde encontraremos más comandos útiles.

Y con esto terminamos este tutorial.