Getting virtual machine's virtual disk usage in vmware with pyvmomi - pyvmomi

I've recently started using pyvmomi to get a detailed inventory of vmware servers.I want to get the virtual disk usage of the virtual machine.
I can find the capacity(total amount) of each virtual disk in vim.vm.device.VirtualDisk, and i can find disk usage of VM in vim.VirtualMachine.storage.How can I get the usage of each vitrual disk?
For example, the vm disk has two vitrual disks.
vm disk summary :10GB usage:8GB
vitrual disk 1 :6GB usage:5GB
vitrual disk 2 :4GB usage:3GB
I want get 5GB and 3GB

Related

why reclaimable space from ASMFLASH not show in ASMPROD size in oracle RAC database?

In my database I have 2 nodes RAC 10g database ,
I want to reclaim some space from flash recovery (ASMFLASH) to my production database (ASMPROD)
I tried the following command :
ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_SIZE = 50G SCOPE=BOTH SID='*';
ASMFLASH size before 65 GB and after execute this command the size changed to 50GB
but still the released space not appear on my production database
How to show and use these 15GB in my production database why its not show ?

Why does Instant File Initialisation make my restore slower

I have a Azure VM with the following:
Windows DataCenter 2019
SQL Server 2017 Developer
Virtual drive of 6TB (built up of 12 512GB Premium SSD disks)
112 GB of RAM
16 VCPUS
I have a db that has a data file of approx ~5TB (2TB empty) and log file of approx ~1TB (99% empty).
I have backed this up to Azure blob storage (64 block blobs).
When I restore to my SQL Server with Instant File Initialisation enabled, it takes ~ 40 hours.
I can see the network and disk Throughput really low.
When I disable Instant File Initialisation, it takes ~3hours to zero out the files and then I get good performance on the restore ~1 1/2 hours (on top of the ~3 hours to zero out the files)
Does anyone know why this could be.
My code to restore
restore database [<db_name>] from
url = 'https://.....url_1.bak',
...
url = 'https://.....url_64.bak',
move 'db_log' to 'new log location' -- i am only moving the log file, as the data file's location doesn't change
stats = 1, norecovery;

Sql server consuming more memory than max memory limit

Sqlserver.exe showing memory greater than max memory limit lock pages also enabled its confusing
AS stated here
SQL Servers max memory setting defines the limits for buffer pool usage only. There will be variable but significant allocations required over and above that limit.
Jonathan Kehayias's, Christian Bolton and John Samson have level 300/400 posts on the topic. Brent Ozar has an easier to read article that might be a better place to start.
Also related: SQL Server 2008 R2 “Ghost Memory”
Min & Max Server Memory
Microsoft SQL Server Management Studio → Right Click the Server → Properties →Memory → Server Memory Options → Minimum server memory (In MB): = 0 and Maximum server memory (In MB): = 2147483647
Configure this memory allocation Based on the RAM installed in the DB Server.
For Ex:
IF DB server is installed with 6 GB of RAM, then maintain the 20% breadth space for the OS installed in the server.
For 6 GB of RAM, Maximum server memory (In MB) will be = 4915 for the SQL server.
Right Click the Server → Properties →Security → Login Auditing → Enable the Failed logins only. This option will avoid the log write and memory log space will be saved.

Windows Server 2012 with ASP.NET MVC application stops working (ESENT errors)

The solution is an ASP.NET MVC application using E/F hosted in IIS on a Windows Server 2012 R2 Standard VM hosted in a Hyper-V environment. The same VM is running SQL Server 2012.
The hosting environment is hosting 30 other solutions and there is plenty of free disk space and no known disk problems with hosting environment or VM (chkdsk and sfc has been run on VM and did not report any problems).
The problem is that the solution/server stops working for short periods of 5-1o minutes and every time we see event ID 508/533 from ESENT and a message about writing to "C:\Windows\system32\LogFiles\Sum".
A similar message has been seen with sqlsvr but this was solved by giving everyone all rights to C:\Windows\system32\LogFiles\Sum.
When the problem persists, it affects the whole VM and sometimes it is no even possible to connect via remote desktop.
We have seen a high number of open SQL Server connections when the problems occurs and prior to introducing caching for a specific Web API method we were actually able to empty the SQL Server connection pool. Just in case we have changed the connection pool from 100 to 200 connections even though we have not seen this particular problem since we introduced the cache.
All DbContext instances are disposed by "using", an ApiController.Dispose override or a Controller.Dispose override and only one SqlConnection are used (for the logging system).
I suspect the problem to be outside the solution and that the high number of SQL Server connections are related to the fact that SQL Server is unable to write to the disk.
Below is some Windows Event Log excerpts for three recent "break downs" with some additional info about the number of web request prior to the problem and after the server has automatically recovered.
Any suggestions?
web requests during the 10 minutes right before the problem: 1399
web requests during the first 10 minutes after the server has recovered: 1630
18-03-2015 20:07:20 833 MSSQLSERVER
SQL Server has encountered 1 occurrence(s) of I/O requests taking longer than 15 seconds to complete on file [C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\Xxx.mdf] in database [Xxx] (5). The OS file handle is 0x0000000000000A7C. The offset of the latest long I/O is: 0x000003e104e000
18-03-2015 20:07:40 833 MSSQLSERVER
SQL Server has encountered 1 occurrence(s) of I/O requests taking longer than 15 seconds to complete on file [C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\Xxx_log.ldf] in database [Xxx] (5). The OS file handle is 0x0000000000000A8C. The offset of the latest long I/O is: 0x0000007f203000
18-03-2015 20:08:16 533 ESENT
svchost (1740) A request to write to the file "C:\Windows\system32\LogFiles\Sum\Svc.log" at offset 1806336 (0x00000000001b9000) for 4096 (0x00001000) bytes has not completed for 36 second(s). This problem is likely due to faulty hardware. Please contact your hardware vendor for further assistance diagnosing the problem.
18-03-2015 20:17:14 508 ESENT
svchost (1740) A request to write to the file "C:\Windows\system32\LogFiles\Sum\Svc.log" at offset 1806336 (0x00000000001b9000) for 4096 (0x00001000) bytes succeeded, but took an abnormally long time (36 seconds) to be serviced by the OS. This problem is likely due to faulty hardware. Please contact your hardware vendor for further assistance diagnosing the problem.
web requests during the 10 minutes right before the problem: 696
web requests during the first 10 minutes after the server has recovered: 614
19-03-2015 01:17:19 533 ESENT
svchost (1740) A request to write to the file "C:\Windows\system32\LogFiles\Sum\Svc.log" at offset 3067904 (0x00000000002ed000) for 4096 (0x00001000) bytes has not completed for 36 second(s). This problem is likely due to faulty hardware. Please contact your hardware vendor for further assistance diagnosing the problem.
19-03-2015 01:33:02 508 ESENT
svchost (1740) A request to write to the file "C:\Windows\system32\LogFiles\Sum\Svc.log" at offset 3067904 (0x00000000002ed000) for 4096 (0x00001000) bytes succeeded, but took an abnormally long time (983 seconds) to be serviced by the OS. This problem is likely due to faulty hardware. Please contact your hardware vendor for further assistance diagnosing the problem.
19-03-2015 01:33:03 833 MSSQLSERVER
SQL Server has encountered 5 occurrence(s) of I/O requests taking longer than 15 seconds to complete on file [C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\Xxx_log.ldf] in database [Xxx] (5). The OS file handle is 0x0000000000000A8C. The offset of the latest long I/O is: 0x000000a389d000
web requests during the 10 minutes right before the problem: 555
web requests during the first 10 minutes after the server has recovered: 784
19-03-2015 03:33:51 833 MSSQLSERVER
SQL Server has encountered 1 occurrence(s) of I/O requests taking longer than 15 seconds to complete on file [C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\Xxx_log.ldf] in database [Xxx] (5). The OS file handle is 0x0000000000000A8C. The offset of the latest long I/O is: 0x000000aa95f000
19-03-2015 03:40:48 533 ESENT
svchost (1740) A request to write to the file "C:\Windows\system32\LogFiles\Sum\Svc.log" at offset 3846144 (0x00000000003ab000) for 4096 (0x00001000) bytes has not completed for 36 second(s). This problem is likely due to faulty hardware. Please contact your hardware vendor for further assistance diagnosing the problem.
19-03-2015 03:40:48 833 MSSQLSERVER
SQL Server has encountered 1 occurrence(s) of I/O requests taking longer than 15 seconds to complete on file [C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\MSDBLog.ldf] in database [msdb] (4). The OS file handle is 0x0000000000000A90. The offset of the latest long I/O is: 0x00000000108000
19-03-2015 03:40:49 508 ESENT
svchost (1740) A request to write to the file "C:\Windows\system32\LogFiles\Sum\Svc.log" at offset 3846144 (0x00000000003ab000) for 4096 (0x00001000) bytes succeeded, but took an abnormally long time (36 seconds) to be serviced by the OS. This problem is likely due to faulty hardware. Please contact your hardware vendor for further assistance diagnosing the problem.
19-03-2015 03:40:49 17894 MSSQLSERVER
Dispatcher (0x1a88) from dispatcher pool 'XE Engine main dispatcher pool' Worker 0x00000000F03B8160 appears to be non-yielding on Node 0. Approx CPU Used: kernel 0 ms, user 0 ms, Interval: 336140.
Disk I/O problems was my initial thought but the "funny" thing is that it actually never has happened during peak hours and that the server during peak hours is not stressed on CPU or disk I/O.
I cannot find any VM disk errors. I have no access to the hosting environment but I am told that there are no disk problems. The hosting environment is performing VM backups and if this is the problem, there is nothing to do about it, as it is required. I might try to have the VM moved to another disk but I do not know if this is possible.
Currently we have set up some detailed disk I/O monitoring on the VM and hopefully this will give us some information about the problem but I rather doubt it.
Maybe the VM is just "sick" and the next step might be to create a new one from scratch…
It sounds like your disk is just plain overloaded, since I/Os are taking so long. Ideally they should take around 10 milliseconds. Instead, they're taking over 1000x that long.
Since you're running in a VM, though, tracking down the problem can be a bit more tricky. Is it due to the I/O load in the virtual machine, or on the host? Your VM disk may be shared with other I/O load of the host.
Can you move the database to a different volume in the VM, hosted on a different physical spindle of the host?
Another possibility is that the underlying storage is going bad, and the I/Os are being retried by the underlying hardware.
-martin

Start the DC VM on a windows 2008 R2 cluster that need the DC

We herited the following architecture :
2 physicals server Windows 2008 R2
a SAN
The 2 server are clustered and use a common LUN that contains all our production Hyperv VM. The primary domain controller is as well an hyperv VM.
Our problem is the following: Power stops during a while. When starting back the 2 HW machines, the cluster node can't mount because the Active directory ID can't be found (which is normal, as the VM is not started).
Here is the error message : Cluster network name resource 'xxxx' cannot be brought online, Unable to get Computer Object using GUID
Thus, if the cluster node can't start, impossible to access to the LUN.
And we are unable to find a DC single save.
Is there a way to force cluster to start without GUID ?
thanks a million in advance :(
PS: IBM recent hw for the 3
I haven't messed with hardware Cluster servers for a while, but it used to be best practice to have cluster nodes DCs in thier own domain, if it where likely, that they could start without being able to contact a DC for exactly the reason you stated.

Resources