{"id":39249,"date":"2019-10-31T22:28:41","date_gmt":"2019-10-31T19:28:41","guid":{"rendered":"https:\/\/prohoster.info\/blog\/cse-kubernetes-dlya-teh-kto-v-vcloud-e\/"},"modified":"2019-10-31T22:28:41","modified_gmt":"2019-10-31T19:28:41","slug":"cse-kubernetes-dlya-teh-kto-v-vcloud-e","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/cse-kubernetes-dlya-teh-kto-v-vcloud-e","title":{"rendered":"CSE: Kubernetes para quienes est\u00e1n en vCloud","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"CSE: Kubernetes para quienes est\u00e1n en vCloud\" src=\"\/wp-content\/uploads\/2019\/10\/075d61be0d23254a37f4ae3267cd99d5.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<b>\u00a1Hola a todos!<\/b><\/p>\n<p>Por circunstancias, nuestro peque\u00f1o equipo, no exactamente reciente y ciertamente no de manera repentina, ha llegado al punto de migrar algunos (y potencialmente todos) los productos a Kubernetes. <\/p>\n<p>Las razones para esto fueron muchas, pero nuestra historia no se trata de disputas.<\/p>\n<p>Ten\u00edamos pocas opciones en t\u00e9rminos de infraestructura. vCloud Director y vCloud Director. Elegimos el m\u00e1s nuevo y decidimos comenzar. <\/p>\n<p>Al revisar de nuevo 'The Hard Way', llegu\u00e9 r\u00e1pidamente a la conclusi\u00f3n de que necesit\u00e1bamos una herramienta para automatizar al menos los procesos b\u00e1sicos, como el despliegue y el dimensionamiento, hace tiempo. Un estudio profundo en Google revel\u00f3 un producto llamado VMware Container Service Extension (CSE), un producto de c\u00f3digo abierto que permite automatizar la creaci\u00f3n y dimensionamiento de cl\u00fasteres de k8s para los que est\u00e1n en vCloud.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<blockquote><p>Descargo de responsabilidad: CSE tiene sus limitaciones, pero para nuestros prop\u00f3sitos fue perfecto. Tambi\u00e9n se debe contar con el soporte del proveedor de la nube, pero dado que la parte del servidor tambi\u00e9n es de c\u00f3digo abierto, ex\u00edjanos a su gerente m\u00e1s cercano \ud83d\ude42<\/p><\/blockquote>\n<p>Para comenzar a utilizarlo, se necesita una cuenta de administrador en la organizaci\u00f3n de vCloud y una red enrutada previamente creada para el cl\u00faster (durante el proceso de despliegue se requiere acceso a Internet desde esta red, no olvide configurar el Firewall\/NAT). La direcci\u00f3n no tiene importancia. En este ejemplo tomaremos 10.0.240.0\/24.<\/p>\n<p><img decoding=\"async\" alt=\"CSE: Kubernetes para quienes est\u00e1n en vCloud\" src=\"\/wp-content\/uploads\/2019\/10\/1306223d7ffe81e5d2d2cfc1f9476245.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<blockquote><p>Dado que despu\u00e9s de la creaci\u00f3n, el cl\u00faster necesita ser gestionado, se recomienda tener una VPN con enrutamiento a la red creada. Usamos un SSL-VPN est\u00e1ndar, configurado en el Edge Gateway de nuestra organizaci\u00f3n.<\/p><\/blockquote>\n<p> A continuaci\u00f3n, es necesario instalar el cliente CSE en el lugar desde donde se gestionar\u00e1n los cl\u00fasteres de k8s. En mi caso, es mi computadora port\u00e1til de trabajo y un par de contenedores bien ocultos que manejan la automatizaci\u00f3n. <\/p>\n<p>El cliente requiere tener Python instalado en la versi\u00f3n 3.7.3 o superior y el m\u00f3dulo <noindex><a rel=\"nofollow\" href=\"http:\/\/vmware.github.io\/vcd-cli\/\">vcd-cli<\/a><\/noindex>, as\u00ed que instalaremos ambas cosas.<\/p>\n<pre><code class=\"bash\">pip3 install vcd-cli\n\npip3 install container-service-extension\n<\/code><\/pre>\n<p>\nDespu\u00e9s de la instalaci\u00f3n, verificamos la versi\u00f3n de CSE y obtenemos lo siguiente:<\/p>\n<pre><code class=\"plaintext\"># vcd cse version\nError: No such command \"cse\".\n<\/code><\/pre>\n<p>\nSorprendentemente, pero solucionable. Resulta que CSE necesita ser integrado como un m\u00f3dulo en vcd-cli.<br \/>\nPara ello, primero es necesario iniciar sesi\u00f3n en vcd-cli en nuestra organizaci\u00f3n:<\/p>\n<pre><code class=\"plaintext\"># vcd login MyCloud.provider.com org-dev admin\nPassword: \nadmin logged in, org: 'org-dev', vdc: 'org-dev_vDC01'\n<\/code><\/pre>\n<p>\nDespu\u00e9s de esto, vcd-cli crear\u00e1 un archivo de configuraci\u00f3n <i>~\/.vcd-cli\/profiles.yaml<\/i><br \/>\nAl final de este, es necesario agregar lo siguiente:<\/p>\n<pre><code class=\"plaintext\">extensions:\n  - container_service_extension.client.cse\n<\/code><\/pre>\n<p>\nDespu\u00e9s de eso, verificamos nuevamente:<\/p>\n<pre><code class=\"plaintext\"># vcd cse version\nCSE, Container Service Extension for VMware vCloud Director, version 2.5.0\n<\/code><\/pre>\n<p>\nLa etapa de instalaci\u00f3n del cliente ha finalizado. Intentemos desplegar el primer cl\u00faster.<br \/>\nCSE tiene varios conjuntos de par\u00e1metros de uso, todos los cuales se pueden consultar. <noindex><a rel=\"nofollow\" href=\"https:\/\/vmware.github.io\/container-service-extension\/CLUSTER_MANAGEMENT.html\">aqu\u00ed.<\/a><\/noindex><\/p>\n<p>Primero, crearemos claves para el acceso sin contrase\u00f1a al futuro cl\u00faster. Este aspecto es importante, ya que, por defecto, el acceso por contrase\u00f1a a los nodos estar\u00e1 desactivado y si no se configuran las claves, puede ser complicado realizar muchas tareas a trav\u00e9s de la consola de m\u00e1quinas virtuales.<\/p>\n<pre><code class=\"plaintext\"># ssh-keygen\nGenerating public\/private rsa key pair.\nEnter file in which to save the key (\/root\/.ssh\/id_rsa): \nCreated directory '\/root\/.ssh'.\nEnter passphrase (empty for no passphrase): \nEnter same passphrase again: \nYour identification has been saved in \/root\/.ssh\/id_rsa.\nYour public key has been saved in \/root\/.ssh\/id_rsa.pub.\n<\/code><\/pre>\n<p>\nIntentemos iniciar la creaci\u00f3n del cl\u00faster:<\/p>\n<pre><code class=\"bash\">vcd cse cluster create MyCluster --network k8s_cluster_net --ssh-key ~\/\\.ssh\/id_rsa.pub --nodes 3 --enable-nfs<\/code><\/pre>\n<p>\nSi recibimos un error, <i>Error: La sesi\u00f3n ha expirado o el usuario no ha iniciado sesi\u00f3n. Por favor, vuelve a iniciar sesi\u00f3n.<\/i> \u2014 volvemos a iniciar sesi\u00f3n en vcd-cli en vCloud como se describi\u00f3 anteriormente y repetimos el intento.<\/p>\n<p>Esta vez todo est\u00e1 bien y la tarea de creaci\u00f3n del cl\u00faster ha comenzado.<\/p>\n<pre><code class=\"bash\">operaci\u00f3n del cl\u00faster: Creando el vApp del cl\u00faster 'MyCluster' (38959587-54f4-4a49-8f2e-61c3a3e879e0) a partir de la plantilla 'photon-v2_k8-1.12_weave-2.3.0' (revisi\u00f3n 1)\n<\/code><\/pre>\n<p>\nLa tarea tomar\u00e1 alrededor de 20 minutos, mientras tanto analizaremos los principales par\u00e1metros de inicio.<\/p>\n<blockquote><p>\u2014red de red \u2014 la red que creamos anteriormente.<br \/>\n\u2014clave-ssh \u2014 las claves que creamos, las cuales ser\u00e1n registradas en los nodos del cl\u00faster.<br \/>\n\u2014nodos n \u2014 N\u00famero de nodos Worker en el cl\u00faster. Siempre habr\u00e1 uno maestro, esta es una limitaci\u00f3n de CSE.<br \/>\n\u2014habilitar-nfs \u2014 crear un nodo adicional para el recurso compartido NFS para vol\u00famenes persistentes. Es una opci\u00f3n un poco opcional, sobre la configuraci\u00f3n de lo que hace, volveremos m\u00e1s tarde.\n<\/p><\/blockquote>\n<p> Mientras tanto, en vCloud se puede observar visualmente la creaci\u00f3n del cl\u00faster.<br \/>\n<img decoding=\"async\" alt=\"CSE: Kubernetes para quienes est\u00e1n en vCloud\" src=\"\/wp-content\/uploads\/2019\/10\/8698bfbd94a4c5b01805f128ad8b6479.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nUna vez que la tarea de creaci\u00f3n del cl\u00faster haya finalizado, estar\u00e1 listo para trabajar.<\/p>\n<p>Verifiquemos la correcci\u00f3n del despliegue con el comando <i>vcd cse cluster info MyCluster<\/i><\/p>\n<p><img decoding=\"async\" alt=\"CSE: Kubernetes para quienes est\u00e1n en vCloud\" src=\"\/wp-content\/uploads\/2019\/10\/d9ea5b02277fd8c87843c53a9269d485.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nA continuaci\u00f3n, necesitamos obtener la configuraci\u00f3n del cl\u00faster para usarla. <i>kubectl<\/i><\/p>\n<pre><code class=\"plaintext\"># vcd cse cluster config MyCluster &gt; .\/.kube\/config\n<\/code><\/pre>\n<p>\nY se puede verificar el estado del cl\u00faster ya con ella:<\/p>\n<p><img decoding=\"async\" alt=\"CSE: Kubernetes para quienes est\u00e1n en vCloud\" src=\"\/wp-content\/uploads\/2019\/10\/97a43470588da9d84dae8bedadc9df81.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nEn este punto, se puede considerar que el cl\u00faster est\u00e1 condicionalmente operativo, si no fuera por la historia de los vol\u00famenes persistentes. Dado que estamos en vCloud, no se puede usar el Proveedor de vSphere. La opci\u00f3n <i>\u2014habilitar-nfs<\/i> est\u00e1 dise\u00f1ada para suavizar este inconveniente, pero no funcion\u00f3 completamente. Se requiere una configuraci\u00f3n manual.<\/p>\n<p>Primero, nuestro nodo necesita crear un disco independiente en vCloud. Esto garantiza que nuestros datos no desaparezcan junto con el cl\u00faster, en caso de ser eliminado. Tambi\u00e9n, conectaremos el disco a NFS. <\/p>\n<pre><code class=\"plaintext\"># vcd disk create nfs-shares-1 100g --description 'Kubernetes NFS shares'\n# vcd vapp attach mycluster nfsd-9604 nfs-shares-1\n<\/code><\/pre>\n<p>\nDespu\u00e9s de esto, accedemos por ssh (realmente, \u00bfcreaste las claves?) a nuestro nodo NFS y conectamos finalmente el disco:<\/p>\n<pre><code class=\"plaintext\">root@nfsd-9604:~# parted \/dev\/sdb\n(parted) mklabel gpt\nAdvertencia: La etiqueta de disco existente en \/dev\/sdb se destruir\u00e1 y todos los datos en\neste disco se perder\u00e1n. \u00bfDesea continuar?\nS\u00ed\/No? s\u00ed\n(parted) unidad GB\n(parted) mkpart primary 0 100\n(parted) print\nModelo: Disco virtual de VMware (scsi)\nDisco \/dev\/sdb: 100GB\nTama\u00f1o del sector (l\u00f3gico\/f\u00edsico): 512B\/512B\nTabla de particiones: gpt\nBanderas del disco:\n\nN\u00famero  Inicio  Fin    Tama\u00f1o  Sistema de archivos  Nombre     Banderas\n 1      0.00GB  100GB  100GB                   primary\n\n(parted) quit\nroot@nfsd-9604:~# mkfs -t ext4 \/dev\/sdb1\nCreando sistema de archivos con 24413696 bloques de 4k y 6111232 inodos\nUUID del sistema de archivos: 8622c0f5-4044-4ebf-95a5-0372256b34f0\nCopias de seguridad de superbloques almacenadas en bloques:\n\t32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,\n\t4096000, 7962624, 11239424, 20480000, 23887872\n\nAsignando tablas de grupos: hecho\nEscribiendo tablas de inodos: hecho\nCreando diario (32768 bloques): hecho\nEscribiendo superbloques e informaci\u00f3n de contabilidad del sistema de archivos: hecho\n<\/code><\/pre>\n<p>\nCreamos un directorio para los datos y montamos all\u00ed la nueva partici\u00f3n:<\/p>\n<pre><code class=\"plaintext\">mkdir \/export\necho '\/dev\/sdb1  \/export   ext4  defaults   0 0' &gt;&gt; \/etc\/fstab\nmount -a\n<\/code><\/pre>\n<p>\nCrearemos cinco particiones de prueba y las compartiremos para el cl\u00faster:<\/p>\n<pre><code class=\"bash\">&gt;cd \/export\n&gt;mkdir vol1 vol2 vol3 vol4 vol5\n&gt;vi \/etc\/exports\n# Agregamos esto al final del archivo\n\/export\/vol1 *(rw,sync,no_root_squash,no_subtree_check)\n\/export\/vol2 *(rw,sync,no_root_squash,no_subtree_check)\n\/export\/vol3 *(rw,sync,no_root_squash,no_subtree_check)\n\/export\/vol4 *(rw,sync,no_root_squash,no_subtree_check)\n\/export\/vol5 *(rw,sync,no_root_squash,no_subtree_check)\n#:wq! ;)\n# A continuaci\u00f3n, exportamos las particiones\n&gt;exportfs -r\n<\/code><\/pre>\n<p>\nDespu\u00e9s de toda esta magia, podemos crear PV y PVC en nuestro cl\u00faster de esta manera:<br \/>\nPV:<\/p>\n<pre><code class=\"bash\">cat &lt;&lt;EOF | kubectl apply -f -\napiVersion: v1\nkind: PersistentVolume\nmetadata:\n  name: nfs-vol1\nspec:\n  capacity:\n    storage: 10Gi\n  accessModes:\n    - ReadWriteMany\n  nfs:\n    # La misma IP que el host NFS al que nos conectamos anteriormente.\n    server: 10.150.200.22\n    path: &quot;\/export\/vol1&quot;\nEOF\n<\/code><\/pre>\n<p>\nPVC:<\/p>\n<pre><code class=\"bash\">cat &lt;&lt;EOF | kubectl apply -f -\napiVersion: v1\nkind: PersistentVolumeClaim\nmetadata:\n  name: nfs-pvc\nspec:\n  accessModes:\n    - ReadWriteMany\n  storageClassName: &quot;&quot;\n  resources:\n    requests:\n      storage: 10Gi\nEOF\n<\/code><\/pre>\n<p>\nCon esto, la historia de la creaci\u00f3n de un cl\u00faster termina y comienza la historia de su ciclo de vida. Como bono, aqu\u00ed hay dos comandos CSE \u00fatiles que a veces pueden ahorrar o no recursos:<\/p>\n<pre><code class=\"bash\">#\u0423\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0435\u043c \u0440\u0430\u0437\u043c\u0435\u0440 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 \u0434\u043e 8 \u0432\u043e\u0440\u043a\u0435\u0440 \u043d\u043e\u0434\n&gt;cse cluster resize MyCluster --network k8s_cluster_net --nodes 8\n\n#\u0412\u044b\u0432\u043e\u0434\u0438\u043c \u043d\u0435\u043d\u0443\u0436\u043d\u044b\u0435 \u043d\u043e\u0434\u044b \u0438\u0437 \u043a\u043b\u0430\u0441\u0442\u0435\u0440\u0430 \u0441 \u0438\u0445 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435\u043c\n&gt;vcd cse node delete MyCluster node-1a2v node-6685 --yes\n<\/code><\/pre>\n<p>\nGracias a todos por su tiempo, si tienen preguntas, no duden en dejar comentarios.<br \/>\n<br \/>Fuente: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/472752\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442! \u0422\u0430\u043a \u0441\u043b\u043e\u0436\u0438\u043b\u043e\u0441\u044c, \u0447\u0442\u043e \u043d\u0430\u0448\u0430 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430, \u043d\u0435 \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e\u0431\u044b \u043d\u0435\u0434\u0430\u0432\u043d\u043e, \u0438 \u0443\u0436 \u0442\u043e\u0447\u043d\u043e \u043d\u0435 \u0432\u043d\u0435\u0437\u0430\u043f\u043d\u043e, \u0434\u043e\u0440\u043e\u0441\u043b\u0430 \u0434\u043e \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430 \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 (\u0430 \u0432 \u043f\u0435\u0440\u0441\u043f\u0435\u043a\u0442\u0438\u0432\u0435 \u0438 \u0432\u0441\u0435\u0445) \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432 \u0432 Kubernetes. \u041f\u0440\u0438\u0447\u0438\u043d \u0442\u043e\u043c\u0443 \u0431\u044b\u043b\u043e \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e, \u043d\u043e \u043d\u0430\u0448\u0430 \u0438\u0441\u0442\u043e\u0440\u0438\u044f \u043d\u0435 \u043f\u0440\u043e \u0445\u043e\u043b\u0438\u0432\u0430\u0440. \u0418\u0437 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043d\u043e\u0439 \u043e\u0441\u043d\u043e\u0432\u044b \u0432\u044b\u0431\u043e\u0440 \u0443 \u043d\u0430\u0441 \u0431\u044b\u043b \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439. vCloud Director \u0438 vCloud Director. \u0412\u044b\u0431\u0440\u0430\u043b\u0438 \u0442\u043e\u0442, \u0447\u0442\u043e [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":29455,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-39249","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=\"description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442! \u0422\u0430\u043a \u0441\u043b\u043e\u0436\u0438\u043b\u043e\u0441\u044c, \u0447\u0442\u043e \u043d\u0430\u0448\u0430.\" \/>\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\/cse-kubernetes-dlya-teh-kto-v-vcloud-e\" \/>\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\udd47CSE: Kubernetes \u0434\u043b\u044f \u0442\u0435\u0445 \u043a\u0442\u043e \u0432 vCloud-\u0435 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442! \u0422\u0430\u043a \u0441\u043b\u043e\u0436\u0438\u043b\u043e\u0441\u044c, \u0447\u0442\u043e \u043d\u0430\u0448\u0430.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/cse-kubernetes-dlya-teh-kto-v-vcloud-e\" \/>\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:28:41+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:28:41+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\udd47CSE: Kubernetes para quienes est\u00e1n en vCloud | ProHoster","description":"\u00a1Hola a todos! As\u00ed ha sido nuestra.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/cse-kubernetes-dlya-teh-kto-v-vcloud-e","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\udd47CSE: Kubernetes \u0434\u043b\u044f \u0442\u0435\u0445 \u043a\u0442\u043e \u0432 vCloud-\u0435 | ProHoster","og:description":"\u0412\u0441\u0435\u043c \u043f\u0440\u0438\u0432\u0435\u0442! \u0422\u0430\u043a \u0441\u043b\u043e\u0436\u0438\u043b\u043e\u0441\u044c, \u0447\u0442\u043e \u043d\u0430\u0448\u0430.","og:url":"https:\/\/prohoster.info\/es\/blog\/administrirovanie\/cse-kubernetes-dlya-teh-kto-v-vcloud-e","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:28:41+00:00","article:modified_time":"2019-10-31T19:28:41+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"39249","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-24 01:28:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 00:53:37","updated":"2026-01-24 01:28: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\/39249","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=39249"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/39249\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/29455"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=39249"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=39249"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=39249"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}