Hola a todos Esto puede parecerle a alguien una historia instructiva de cómo no debe hacerlo y por qué un trabajo técnico importante a la una de la mañana (en un sistema en el que comprende poco) puede conducir a un gran colapso y tiempo de inactividad durante dos días.

Una breve nota es la historia de un administrador de sistemas aficionado que recién comienza a sumergirse en el mundo de la virtualización. La historia de cómo las instantáneas no ayudaron, sino que interfirieron e hicieron una reversión del sistema durante un mes, y luego, con el tiempo de inactividad en 2 días, saqué todos los archivos de allí y devolví el sistema.
Antecedentes
Después de dos años de estar sentado en sistemas nix , y en particular en el servidor ubuntu (16.04 LTS), decidí probar la virtualización. Un amigo aconsejó a ESXi como una solución gratuita para servidores pequeños (mi caso: 1 procesador + solo 8 GB de RAM). El proceso de mudanza fue complicado por el hecho de que primero tuvo que elevar la estación de trabajo vmware con el convertidor vmware en la computadora con Windows, transferir el sistema terminado allí, luego levantarlo en el servidor esxi y después del convertidor familiar transferir el sistema a esxi. Este es un viaje tan largo y doloroso. El error principal durante la transferencia, que realicé y que todavía me aparece, es que utilicé un disco delgado. Es decir, estando en un servidor ubuntu limpio con un disco formateado en exfat-4, tenía 223.8 GB de espacio en ssd. Pasando a esxi y formateando el disco en un formato incomprensible para cualquier cosa, perdí solo 300 MB, pero fue debido a ellos que no pude hacer un disco grueso, que (luego resultó) necesitaba tanto.
Inicio
Solía romper la leña con un servidor ubuntu (cuando simplemente "lo estudié"), retrocediendo y reinstalando el sistema una vez al mes o dos. Ahora estoy rompiendo leña con ESXi. Creo que no hay necesidad de describir el problema de los discos delgados (en resumen, después de expandir su espacio no lo "reducen" en la dirección opuesta. También pueden ir más allá de la cantidad física de memoria en el disco). En primer lugar, utilicé el intercambio en la misma unidad ssd sin configurarlo correctamente en ESXi. Comió memoria, escribió algunos archivos temporales allí y, mientras tanto, creció.
En segundo lugar, por alguna razón hice instantáneas. En ese momento me guié por el hecho de que "bueno, es conveniente, rápido y todo eso". Todavía no sospecho qué clase de cack y qué bomba lenta plantaron para mí. En tercer lugar, no seguí la cantidad de memoria que disminuía rápidamente en el disco.

Empate
La primera campana fue la parada del automóvil principal el 17 de julio. Una notificación ha llegado por correo sobre la caída del host. Al entrar en esxi para recogerlo (bueno, de repente algo podría pasar), la chica virtual me dio buenas noticias (desafortunadamente no hay captura de pantalla). Un recuento gratuito de una ventana emergente fue algo así como "Lo siento, el espacio en disco se ha agotado. Su máquina virtual está detenida. Limpia el lugar y puedes seguir usando la VM. Repetir Cancelar. En ese momento, el problema se resolvió eliminando la segunda máquina virtual, que tomó aproximadamente 16 GB. Pero esta fue una solución temporal, ya que todos los días, 5GB aún desaparecían en algún lugar, aunque el sistema no tuvo un aumento en estos archivos.
Como resultado, el 19 de julio por la noche, en un jueves frío, escribí por primera vez en la tostadora sobre este problema. No hubo respuesta. Creo que esto se debe a la etiqueta impopular esxi. Después de que Google no tuvo éxito, después de - la eliminación de instantáneas. En ese momento, desaparecieron 5 gigabytes, el espacio libre se hizo más grande, pero no tanto como para olvidarse de este problema.

Después, con un poco de cerebro, comencé a estudiar la jerarquía de las instantáneas. El último, 000003, ocupaba 12 GB de espacio en ese momento. En la configuración de VM, figuraba como el archivo de disco activo desde el que se arrancaba la máquina. Sin pensarlo dos veces, eliminé el archivo del disco duro 1 con el disco de instantánea activo e inserté el disco principal de toda la máquina virtual en su lugar.

El sistema arrancó (aplausos), y con él los archivos del 30 de junio. Última fecha de modificación de todos los archivos en el disco principal. Sospecho que fue en este día que creé la primera instantánea. Lógicamente, no había más lugares. En el espacio libre, todavía es de unos 5 GB, y los archivos se han ido.
Los primeros pensamientos son lógicos: lo que hice, todos los archivos se evaporaron hasta el 19 de julio. Luego vi que los archivos de instantáneas no se eliminaron. Sin embargo, cuando traté de cargarlos como el disco principal, ESXi juró ante el disco primario modificado, que no debería ser "El disco virtual primario se ha modificado desde que se creó el secundario" Mi error eterno en los próximos dos días.
Googlear
El tiempo se acercaba a las dos de la mañana, y abandoné todos los intentos vanos de obtener al menos alguna información de estos desafortunados * -0000? -. Archivos de instantáneas Vmdk.
El viernes por la mañana comenzó con un google activo, muy activo como "cómo obtener archivos de vmdk". Artículos, lector de Linux (programa de Windows) y todo lo que se encontró muy a menudo. Transferí estos 223 gigabytes del servidor al portátil con Windows en el canal de 100Mbit, lo cual fue muy doloroso. Traté de montar un disco ssd de formato vmware en un sistema Linux, enrollé vmware-tools en él, ella juró sobre la incompatibilidad de versiones (la última admitida era 5, pero tenía 6.5). Los intentos de abrir a través de Windows y Java también fueron inútiles.
E incluso después de que pude acceder (usando el programa lector de Linux en Windows) al archivo * -flat.vmdk, recibí los archivos solo hasta el 30 de junio. Todos los intentos posteriores de montar archivos de instantáneas no produjeron nada, el programa maldijo en un disco no válido y se negó a seguir trabajando.
Salida encontrada
El viernes terminó, estaba exhausto, y también molesto porque los archivos no pueden ser devueltos. Pero el sábado comenzó con éxito. En los errores de google (se desconoce por qué no lo hice de inmediato) "El disco virtual principal se ha modificado desde que se creó el secundario" en la primera línea de Google le dio un enlace a la página vmware. Un montón de personajes de miedo, líneas rojas y todo lo que inmediatamente se asustó. Abrí el enlace y lo dejé con la esperanza de encontrar algo más comprensible.
Y fue encontrado. https://communities.vmware.com/thread/323730 El foro VmWare en ruso y un problema similar se encontraron conmigo en Internet. Probablemente este no sea el mismo caso que el mío, pero después de desplazarme hacia abajo y leer los comentarios, intenté hacer esto.
En un editor de texto, conectando a esxi a través de sftp, abrí el archivo con la configuración del disco principal. .vmdk (no -flat.vmdk) Reconocí el CID del disco y luego subí a * -00001.vmdk, haciendo lo descrito por la persona con el apodo apavlyuchenko en el foro.
En la primera instantánea, los campos CID y parentCID deben indicar el CID del disco principal. Y luego en el archivo .vmx en los campos
scsi0: 1.present = "false"
scsi0: 1.fileName = " .vmdk"
scsi0: 1.deviceType = "scsi-hardDisk"
cambie el parámetro FALSE a TRUE y .vmdk a -00001.vmdk.
Y de hecho, después de eso, el auto arrancó y no juró por el error. ¡Y he aquí! ¡Los archivos aparecieron antes de crear una segunda instantánea!
En el foro, un amigo describió una forma de recuperar archivos de una sola instantánea. Pero mi caso es difícil (aparentemente, debido a mi enfermedad, que se llama "meter todo con las manos en una máquina que funciona"). Y no tenía una instantánea, sino tres. Lo cual es lógico, era necesario continuar cambiando los archivos.
Entonces, mis acciones.
Abre el disco principal. Descubre su CID. A continuación, copie el CID del disco primario en la línea parentCID del disco -00001.vmdk (primera instantánea). Allí miramos el CID de esta instantánea y lo copiamos en la línea parentCID de la unidad -00002.vmdk (segunda instantánea). Allí miramos el CID de esta instantánea y la copiamos en la línea parentCID de la unidad -00003.vmdk (tercera instantánea), bueno, después de eso subimos a .vmx y especificamos el nombre del archivo de instantánea en la línea fileName (en mi caso * -0003.vmdk)
El resultado es el siguiente.
* .vmdk
CID = 387edddf
parentCID = ffffffff
* -00001.vmdk
CID = 0284jf712 (tomé todos los CID de la negrita)
parentCID = 387edddf
* -00002.vmdk
CID = 732fhhtud
parentCID = 0284jf712
* -00003.vmdk
CID = 3747jfj4ff
parentCID = 732fhhtud
.vmx
scsi0: 1.present = "true"
scsi0: 1.fileName = " -00003.vmdk"
scsi0: 1.deviceType = "scsi-hardDisk"
Enciendo la VM, veo que los datos se restauran. Parece dejarlo ir. Copio todo a otro servidor, detengo la máquina (ya está gritando sobre el mal funcionamiento del disco y algunos otros problemas críticos), devuelvo la configuración * .vmx y copio los archivos nuevamente a la máquina en funcionamiento. ¡Hurra!
Conclusión
Esta historia me enseñó varias verdades de oro que no se podían entender antes.
En primer lugar, haga una copia de seguridad de todo siempre y en todas partes y no en el disco dentro de la máquina virtual, como lo hice antes. Es necesario tener una, o incluso dos unidades de respaldo, para que no haya un tiempo de inactividad de dos días. (¿desaparecieron los archivos? Retrocedemos, copiamos los archivos de la copia de seguridad, y la simple, no 48 horas, sino 2 horas de la fuerza) En segundo lugar, no haga nada sobre mi cabeza pesada a la una de la mañana (si me acostara, vendría con la cabeza limpia el viernes a otra salida, pero no partió leña en la segunda hora de la noche) En tercer lugar, no haga modificaciones importantes a las máquinas en funcionamiento. Saque la segunda máquina virtual, haga una instantánea allí, luego haga que la unidad principal sea la principal y vea qué sucede después de eso: así fue como se hizo. Y cuarto, hacer aún más copias de seguridad. No solo VM, sino también esxi en su conjunto.
Recursos de PS que finalmente me ayudaron:
El mismo foro con apavlyuchenko increíble (si no estamos familiarizados)
Página sobre la base de conocimiento de vmvara con una descripción de mi problema y formas de resolverlo
La foto que usé
si alguien está interesado, en los comentarios puedo dejar esos recursos cuyos artículos no me ayudaron
Pss
Lamentablemente, el problema de la desaparición del lugar sigue siendo relevante. Si tiene pensamientos o desea ayudarme a lidiar con esto, por favor comente. Podemos hablar de eso allí. O si conoce otra forma de recuperar archivos de discos de instantáneas y también desea compartirlo, entonces me interesará leerlo. Gracias