{"id":36207,"date":"2019-10-31T22:10:17","date_gmt":"2019-10-31T19:10:17","guid":{"rendered":"https:\/\/prohoster.info\/blog\/ispsystem-prosti-i-proshhaj-pochemu-i-kak-my-napisali-svoyu-panel-upravleniya-serverami\/"},"modified":"2019-10-31T22:10:17","modified_gmt":"2019-10-31T19:10:17","slug":"ispsystem-prosti-i-proshhaj-pochemu-i-kak-my-napisali-svoyu-panel-upravleniya-serverami","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/ispsystem-prosti-i-proshhaj-pochemu-i-kak-my-napisali-svoyu-panel-upravleniya-serverami","title":{"rendered":"ISPsystem, \u00a1adi\u00f3s y gracias! Por qu\u00e9 y c\u00f3mo escribimos nuestro propio panel de control de servidores","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"ISPsystem, \u00a1adi\u00f3s y gracias! Por qu\u00e9 y c\u00f3mo escribimos nuestro propio panel de control de servidores\" src=\"\/wp-content\/uploads\/2019\/07\/512df00a9ec2d8ff8e3586dd57702924.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n\u00a1Hola! Somos 'Tecnolog\u00edas de Hosting' y hace 5 a\u00f1os lanzamos <noindex><a rel=\"nofollow\" href=\"https:\/\/vdsina.ru\/?partner=habr1\">VDSina<\/a><\/noindex> \u2014 el primer hosting vds creado espec\u00edficamente para desarrolladores. Nos esforzamos por hacerlo tan conveniente como DigitalOcean, pero con soporte en ruso, m\u00e9todos de pago y servidores en Rusia. Pero DigitalOcean no es solo fiabilidad y precio, tambi\u00e9n es servicio.<\/p>\n<p>El software de ISPsystem result\u00f3 ser una cuerda que ataba nuestras manos en el camino hacia un gran servicio. Hace tres a\u00f1os utilizamos la facturaci\u00f3n Billmanager y el panel de control de servidores VMmanager y r\u00e1pidamente nos dimos cuenta de que ofrecer un buen servicio sin nuestro propio panel era pr\u00e1cticamente imposible. <br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>C\u00f3mo ISPsystem mataba la comodidad<\/h2>\n<p>\n<b>Errores<\/b><\/p>\n<p>No pod\u00edamos arreglar los errores por nuestra cuenta; cada vez ten\u00edamos que escribir al soporte de otros y esperar. La resoluci\u00f3n de cualquier problema requer\u00eda la reacci\u00f3n de una empresa externa. <\/p>\n<p>El soporte de ISPsystem respond\u00eda de manera normal, pero las soluciones llegaban solo despu\u00e9s de varias versiones, y no siempre y no todos los errores. A veces, errores cr\u00edticos tardaban semanas en ser resueltos. Ten\u00edamos que calmar a los clientes, disculparnos y esperar a que ISPsystem reparara el error.<\/p>\n<p><b>Amenaza de ca\u00eddas<\/b><\/p>\n<p>Las actualizaciones pod\u00edan provocar ca\u00eddas impredecibles, que a su vez causaban nuevos errores. <\/p>\n<p>Cada actualizaci\u00f3n era una loter\u00eda: hab\u00eda que cerrar la facturaci\u00f3n y hacer sacrificios a los dioses de las actualizaciones; un par de veces, la actualizaci\u00f3n caus\u00f3 una ca\u00edda de entre 10 y 15 minutos. Nuestros administradores estaban al borde del colapso; nunca sab\u00edamos cu\u00e1nto durar\u00eda la ca\u00edda y no pod\u00edamos prever cu\u00e1ndo ISPsystem lanzar\u00eda una nueva actualizaci\u00f3n. <\/p>\n<p>Con la quinta generaci\u00f3n de Billmanager mejor\u00f3 un poco, pero para acceder a las funciones necesarias tuvimos que instalar la beta, que ya se actualizaba cada semana. Si algo fallaba, hab\u00eda que dar acceso a desarrolladores externos para que arreglaran algo. <\/p>\n<p><b>Interfaz del panel inc\u00f3moda<\/b><\/p>\n<p>Todo estaba dividido en diferentes paneles y gestionado desde distintos lugares. Por ejemplo, los clientes pagaban a trav\u00e9s de Billmanager, pero ten\u00edan que reiniciar o reinstalar su VDS en VMManager. Nuestros empleados tambi\u00e9n ten\u00edan que cambiar entre ventanas para ayudar al cliente, verificar la carga en su servidor o ver qu\u00e9 SO utilizaba.<\/p>\n<p>Tal interfaz consume tiempo, tanto el nuestro como el de los clientes. No se puede hablar de comodidad, como en DigitalOcean, en una situaci\u00f3n as\u00ed. <\/p>\n<p><b>Ciclos de vida cortos con actualizaciones frecuentes de la API<\/b><\/p>\n<p>Escribimos nuestros propios complementos, por ejemplo, un complemento con m\u00e9todos de pago adicionales que no est\u00e1n en VMManager.<\/p>\n<p>En los \u00faltimos a\u00f1os, VMManager ha tenido un ciclo de vida relativamente corto, y en nuevas versiones, los nombres de las variables o funciones en la API pod\u00edan cambiar arbitrariamente, lo que romp\u00eda nuestros complementos. El soporte para versiones antiguas se descontinuaba r\u00e1pidamente y hab\u00eda que actualizar.<\/p>\n<p><b>No se puede modificar<\/b><\/p>\n<p>En realidad, s\u00ed se puede, pero es extremadamente ineficiente. Las restricciones de licencia no permiten modificar el c\u00f3digo fuente, solo se pueden escribir complementos. El m\u00e1ximo de complementos son algunos elementos de men\u00fa, un asistente paso a paso. ISPsystem est\u00e1 dise\u00f1ado para la versatilidad, pero nosotros necesit\u00e1bamos soluciones especializadas.<\/p>\n<p>As\u00ed naci\u00f3 la decisi\u00f3n de escribir nuestro propio panel. Nos propusimos objetivos:<\/p>\n<ul>\n<li>Responder r\u00e1pidamente a errores y bugs y tener la capacidad de solucionarlos por nuestra cuenta, sin hacer esperar al cliente.<\/li>\n<li>Modificar libremente la interfaz seg\u00fan los procesos de trabajo y necesidades del cliente.<\/li>\n<li>Mejorar la usabilidad con un dise\u00f1o limpio y comprensible.<\/li>\n<\/ul>\n<p>\nY comenzamos el desarrollo.<\/p>\n<h2>Arquitectura del nuevo panel<\/h2>\n<p>\nTenemos un equipo de desarrollo autosuficiente, por lo que el panel lo escribimos nosotros mismos. <br \/>\nEl trabajo principal lo realizaron tres ingenieros: el director t\u00e9cnico, Sergey, ide\u00f3 la arquitectura y escribi\u00f3 el agente del servidor, Alexey se ocup\u00f3 de la facturaci\u00f3n, y nuestro frontendista, Artysh, arm\u00f3 el frontend. <\/p>\n<h3>Paso 1. Agente del servidor<\/h3>\n<p>El agente del servidor es un servidor web en Python que gestiona la biblioteca <noindex><a rel=\"nofollow\" href=\"https:\/\/libvirt.org\/\">libvirt<\/a><\/noindex>, que a su vez gestiona <noindex><a rel=\"nofollow\" href=\"https:\/\/www.qemu.org\/\">el hipervisor Qemu-kvm<\/a><\/noindex>. <\/p>\n<p>El agente gestiona todos los servicios en el servidor: creaci\u00f3n, detenci\u00f3n, eliminaci\u00f3n de VDS, instalaci\u00f3n de sistemas operativos, modificaci\u00f3n de par\u00e1metros, etc., a trav\u00e9s de la biblioteca libvirt. En el momento de la publicaci\u00f3n de este art\u00edculo, hay m\u00e1s de cuarenta funciones diferentes, que complementamos seg\u00fan las tareas y necesidades del cliente.<\/p>\n<p>En teor\u00eda, se pod\u00eda gestionar libvirt directamente desde la facturaci\u00f3n, pero eso requer\u00eda demasiado c\u00f3digo adicional y decidimos separar estas funciones entre el agente y la facturaci\u00f3n: la facturaci\u00f3n simplemente hace solicitudes al agente a trav\u00e9s de la API JSON.<\/p>\n<p>El agente fue lo primero que hicimos, ya que no requer\u00eda ninguna interfaz y se pod\u00eda probar directamente desde la consola del servidor. <\/p>\n<p><b>\u00bfQu\u00e9 nos aport\u00f3 el agente del servidor?<\/b> se ha creado una capa que simplifica la vida de todos: la facturaci\u00f3n no necesita enviar un mont\u00f3n de comandos, solo hacer una solicitud. Y el agente har\u00e1 todo lo necesario: por ejemplo, asignar\u00e1 espacio en el disco y memoria RAM. <\/p>\n<h3>Paso 2. Facturaci\u00f3n<\/h3>\n<p>\nPara nuestro desarrollador Alex, este no era su primer panel de control: Alex ha estado en el hosting durante mucho tiempo, por lo que comprend\u00eda en general lo que necesitaba el cliente y lo que necesitaba el host.<\/p>\n<p>Nosotros llamamos a la facturaci\u00f3n entre nosotros \"panel de control\": no solo se trata de dinero y servicios, sino tambi\u00e9n de su gesti\u00f3n, soporte al cliente y mucho m\u00e1s.<\/p>\n<p>Para migrar desde el software ISPSystem, era necesario conservar completamente la funcionalidad anterior para los clientes, trasladar todas las acciones financieras de los usuarios del antiguo sistema de facturaci\u00f3n al nuevo, as\u00ed como todos los servicios y las conexiones entre ellos. Estudiamos lo que hay en el producto actual, luego las soluciones de la competencia, principalmente DO y Vultr. Observamos las desventajas y ventajas, recopilamos los comentarios de las personas que trabajaron con los antiguos productos de ISPsystem. <\/p>\n<p>En el nuevo sistema de facturaci\u00f3n utilizamos dos pilas: PHP cl\u00e1sico, MySQL (y en el futuro planeamos pasar a PostgreSQL), Yii2 como marco en el backend y VueJS en el frontend. Las pilas funcionan de manera independiente entre s\u00ed, son desarrolladas por diferentes personas y se comunican mediante JSON API. Para el desarrollo, en aquel entonces y ahora, usamos <noindex><a rel=\"nofollow\" href=\"https:\/\/www.jetbrains.com\/phpstorm\/\">PHPStorm<\/a><\/noindex> y <noindex><a rel=\"nofollow\" href=\"https:\/\/www.jetbrains.com\/webstorm\/\">WebStorm<\/a><\/noindex> de JetBrains y los amamos mucho (\u00a1hola, chicos!)<\/p>\n<p>El panel est\u00e1 dise\u00f1ado de manera modular: m\u00f3dulos de sistemas de pago, m\u00f3dulos de registradores de dominios o, por ejemplo, m\u00f3dulos de certificados SSL. Se puede agregar f\u00e1cilmente una nueva funci\u00f3n o eliminar una antigua. La arquitectura est\u00e1 preparada para la expansi\u00f3n, incluyendo hacia atr\u00e1s, \"hacia el hardware\".<br \/>\n<img decoding=\"async\" alt=\"ISPsystem, \u00a1adi\u00f3s y gracias! Por qu\u00e9 y c\u00f3mo escribimos nuestro propio panel de control de servidores\" src=\"\/wp-content\/uploads\/2019\/07\/8f4b1bf9c16cc73023cacdde44cae0b3.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<b>Lo que obtuvimos<\/b>: un panel de control sobre el que tenemos control total. Ahora, los errores se corrigen en horas, no en semanas, y las nuevas funciones se implementan a pedido de los clientes, no por deseo de ISPSystem.<\/p>\n<h3>Paso 3. Interfaz<\/h3>\n<p>\n<img decoding=\"async\" alt=\"ISPsystem, \u00a1adi\u00f3s y gracias! Por qu\u00e9 y c\u00f3mo escribimos nuestro propio panel de control de servidores\" src=\"\/wp-content\/uploads\/2019\/07\/48be006688e2246f9a416d2d6a717a82.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nLa interfaz es nuestro proyecto conjunto. <\/p>\n<p>Primero miramos qu\u00e9 pasar\u00eda si hici\u00e9ramos una extensi\u00f3n sobre la API de ISPsystem, sin cambiar nada dr\u00e1sticamente en la interfaz. El resultado fue mediocre y decidimos hacer todo desde cero.<\/p>\n<p>Cre\u00edmos que lo principal era hacer que la interfaz fuera l\u00f3gica, con un dise\u00f1o limpio y minimalista, y as\u00ed obtendr\u00edamos un hermoso panel. Discutimos la disposici\u00f3n de los elementos en Megaplan y poco a poco naci\u00f3 la interfaz que los usuarios ven en el panel de control ahora. <\/p>\n<p>El dise\u00f1o de la p\u00e1gina de facturaci\u00f3n fue el primero, ya que ya hab\u00edamos creado plugins de pago para ISPsystem. <\/p>\n<p><b>Frontend<\/b><\/p>\n<p>Decidimos hacer el panel como una aplicaci\u00f3n SPA, que no requer\u00eda muchos recursos y cargaba datos r\u00e1pidamente. Nuestro frontend, Artysh, decidi\u00f3 escribirlo en Vue; en ese momento, Vue acababa de aparecer. Supusimos que el marco se desarrollar\u00eda din\u00e1micamente, al igual que React, y con el tiempo la comunidad de Vue crecer\u00eda y habr\u00eda un mont\u00f3n de bibliotecas. Apostamos por Vue y no nos arrepentimos; ahora, agregar nuevas funciones al frontend que ya hemos programado en el backend lleva poco tiempo. Hablaremos m\u00e1s sobre el frontend del panel en un art\u00edculo separado.<\/p>\n<p><b>Conexi\u00f3n del frontend con el backend<\/b><\/p>\n<p>Conectamos el frontend con el backend a trav\u00e9s de 'pushes'. Fue un reto escribir nuestro propio manejador, pero ahora la actualizaci\u00f3n de la informaci\u00f3n en la p\u00e1gina ocurre casi instant\u00e1neamente.<\/p>\n<p><b>Lo que obtuvimos:<\/b> La interfaz del panel se volvi\u00f3 m\u00e1s simple. La hicimos adaptable y la r\u00e1pida carga permite usarla incluso desde m\u00f3viles en los \u00faltimos minutos antes del despegue, sin necesidad de instalar una aplicaci\u00f3n separada para trabajar con el panel.<\/p>\n<h3>Paso 4. Pruebas y esquema de migraci\u00f3n <\/h3>\n<p>\nCuando todo estuvo listo y pasamos las primeras pruebas, surgi\u00f3 la pregunta de la migraci\u00f3n. Lo primero que hicimos fue instalar la facturaci\u00f3n y comenzar a probar su funcionamiento con el agente de servidor.<\/p>\n<p>Luego escribimos un simple script que transfer\u00eda la base de datos de la antigua facturaci\u00f3n a la nueva.<\/p>\n<p>Tuvimos que probar y verificar casi todo, ya que los datos se consolidaron en una nueva base a partir de tres antiguas: Billmanager, VMmanager e IPmanager. Aparentemente, las migraciones de prueba fueron lo m\u00e1s complicado con lo que nos enfrentamos en el proceso de desarrollo del nuevo panel.<\/p>\n<p>Despu\u00e9s de las verificaciones, cerramos la antigua facturaci\u00f3n. La migraci\u00f3n final de datos fue un momento muy inquietante, pero, gracias a Dios, se realiz\u00f3 en unos minutos y sin problemas evidentes. Hubo peque\u00f1os errores que corregimos durante la semana. La mayor parte del tiempo se dedic\u00f3 a probar lo que hab\u00edamos conseguido.<\/p>\n<p>Luego enviamos correos a los clientes con la direcci\u00f3n del nuevo panel y la facturaci\u00f3n y realizamos una redirecci\u00f3n. <\/p>\n<p><b>En resumen:<\/b> <b>\u00a1EST\u00c1 VIVO!<\/b><\/p>\n<h2>Final feliz<\/h2>\n<p>\nDesde las primeras horas de funcionamiento de nuestro software, sentimos todas las ventajas de la transici\u00f3n. El c\u00f3digo era completamente nuestro, con una arquitectura conveniente, y la interfaz era limpia y l\u00f3gica.<br \/>\n<img decoding=\"async\" alt=\"ISPsystem, \u00a1adi\u00f3s y gracias! Por qu\u00e9 y c\u00f3mo escribimos nuestro propio panel de control de servidores\" src=\"\/wp-content\/uploads\/2019\/07\/c673e49afb4bf25c8922161a8bb927a2.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>La primera rese\u00f1a tras el lanzamiento del nuevo panel<\/i><\/p>\n<p>Iniciamos el proceso de transici\u00f3n en diciembre, justo antes del A\u00f1o Nuevo 2017, cuando la carga era m\u00e1s baja, para facilitar el cambio a los clientes: casi nadie trabaja antes de las festividades.<\/p>\n<p>Lo m\u00e1s importante que obtuvimos al migrar a nuestro sistema (adem\u00e1s de la fiabilidad y la comodidad) fue la capacidad de agregar r\u00e1pidamente funcionalidad para clientes clave: ser su cara, no su lado oscuro.<\/p>\n<h3>\u00bfQu\u00e9 sigue?<\/h3>\n<p>\nEstamos creciendo, aumentando la cantidad de datos, clientes y datos de clientes. Tuvimos que a\u00f1adir un servidor Memcached en el backend y dos gestores de colas con diferentes tareas. En el frontend hay cach\u00e9 y nuestras propias colas. <\/p>\n<p>Por supuesto, tuvimos algunas aventuras a medida que desarroll\u00e1bamos y complic\u00e1bamos el producto, por ejemplo, cuando a\u00f1adimos HighLoad. <\/p>\n<p>En el pr\u00f3ximo art\u00edculo, contaremos c\u00f3mo lanzamos la tarifa Hi-CPU: sobre el hardware, el software, qu\u00e9 tareas resolvimos y qu\u00e9 logramos.<br \/>\n<br \/>Fuente: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/vdsina\/blog\/460107\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0438\u0432\u0435\u0442! \u041c\u044b \u00ab\u0425\u043e\u0441\u0442\u0438\u043d\u0433 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438\u00bb \u0438 5 \u043b\u0435\u0442 \u043d\u0430\u0437\u0430\u0434 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b\u0438 VDSina \u2014 \u043f\u0435\u0440\u0432\u044b\u0439 vds \u0445\u043e\u0441\u0442\u0438\u043d\u0433, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u043e\u0432. \u041c\u044b \u0441\u0442\u0440\u0435\u043c\u0438\u043c\u0441\u044f \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0435\u0433\u043e \u0443\u0434\u043e\u0431\u043d\u044b\u043c, \u043a\u0430\u043a DigitalOcean, \u043d\u043e \u0441 \u0440\u0443\u0441\u0441\u043a\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439, \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438 \u043e\u043f\u043b\u0430\u0442\u044b \u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c\u0438 \u0432 \u0420\u043e\u0441\u0441\u0438\u0438. \u041d\u043e DigitalOcean \u044d\u0442\u043e \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u0434\u0435\u0436\u043d\u043e\u0441\u0442\u044c \u0438 \u0446\u0435\u043d\u0430, \u044d\u0442\u043e \u0435\u0449\u0435 \u0438 \u0441\u0435\u0440\u0432\u0438\u0441. \u0421\u043e\u0444\u0442 \u043e\u0442 ISPsystem \u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u0432\u0435\u0440\u0435\u0432\u043a\u043e\u0439, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0441\u0432\u044f\u0437\u044b\u0432\u0430\u043b\u0430 \u043d\u0430\u043c [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":27085,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-36207","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/ispsystem-prosti-i-proshhaj-pochemu-i-kak-my-napisali-svoyu-panel-upravleniya-serverami\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47ISPsystem, \u043f\u0440\u043e\u0441\u0442\u0438 \u0438 \u043f\u0440\u043e\u0449\u0430\u0439! \u041f\u043e\u0447\u0435\u043c\u0443 \u0438 \u043a\u0430\u043a \u043c\u044b \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0441\u0432\u043e\u044e \u043f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/ispsystem-prosti-i-proshhaj-pochemu-i-kak-my-napisali-svoyu-panel-upravleniya-serverami\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:10:17+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:10:17+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47ISPsystem, perd\u00f3n y adi\u00f3s! Por qu\u00e9 y c\u00f3mo creamos nuestro propio panel de control de servidores | ProHoster","description":"","canonical_url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/ispsystem-prosti-i-proshhaj-pochemu-i-kak-my-napisali-svoyu-panel-upravleniya-serverami","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47ISPsystem, \u043f\u0440\u043e\u0441\u0442\u0438 \u0438 \u043f\u0440\u043e\u0449\u0430\u0439! \u041f\u043e\u0447\u0435\u043c\u0443 \u0438 \u043a\u0430\u043a \u043c\u044b \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0441\u0432\u043e\u044e \u043f\u0430\u043d\u0435\u043b\u044c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c\u0438 | ProHoster","og:url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/ispsystem-prosti-i-proshhaj-pochemu-i-kak-my-napisali-svoyu-panel-upravleniya-serverami","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:10:17+00:00","article:modified_time":"2019-10-31T19:10:17+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"36207","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-22 02:25:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:48:27","updated":"2026-01-22 02:25:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/36207","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=36207"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/36207\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/27085"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=36207"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=36207"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=36207"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}