Quantcast
Channel: VMware Communities : All Content - All Communities
Viewing all 180923 articles
Browse latest View live

Credentials being exposed in Workflow Execution Stack when a WF fails

$
0
0

I have a WF with an attribute this is of the data type Credential.  Whenever this WF fails, the execution stack outputs all of the WF parameters and attributes, including the credential username and password in clear text! 

 

Here is an example:

 

[2017-08-11 10:29:26.507] [E] Error in (Workflow:Test / Scriptable task (item1)#0) Error!!

[2017-08-11 10:29:26.529] [E] Workflow execution stack:

***

item: 'Test/item1', state: 'failed', business state: 'null', exception: 'Error!!'

workflow: 'Test' (40c14d17-07cd-4545-a3ee-6fe3e5b7e424)

|  'attribute': name=Cred type=Credential value=username:passwordincleartext!

|  'no inputs'

|  'no outputs'

*** End of execution stack.

 

Is there a way to suppress the workflow execution stack other than to turn the scripting log level to Fatal or off?  I'd like to see the scripting log, but I can't have it expose credentials to the users.

 

Has anyone run into this and found a good workaround?

 

I'm running VRO 7.3.

 

Thanks!


Intel Xeon E-2176G - Performance problems and wrong MHz measuring

$
0
0

Hello,

 

we have some performance problems with a test enviroment. The enviroment is a Xeon E-2176G server with vSphere 6.7U2.

Initial the test was about NVMe performance. But we didnt get good results so we did some mearuements and found out the the CPU load average is really high.

We have four Server 2016 VM`s for the performance tests. It seems that just little MS OS systemload is not easy to handle for the E-2176G.

 

The really strage thing and the main question of this post is, if we produce CPU load in the VM`s and we get a host esxtop CPU load average of >1 the vSphere GUI shows a the same time a host CPU load of about 20%.

 

It seems that the host is using just 1/5th of the available CPU MHz performance. At same time esxtop shows a core util of every core with 100%.

 

Every setting is performance optimized (power, bios...). Whats wrong? I have no more ideas and think about something like

- P-state, C-state problems

 

Do you have experiance with XEON E-21XX series CPU`s. Up to now we just used E-26XX oder Xeon Silver series. It seems that the CPU cant provide 3,7 GHz on every (6) core.

 

Thank you for your feedback.
Best Regards

ITKOA

 

Intel 2176G.PNG

Dead keyboard & trackpad upon wake from sleep after Catalina upgrade

$
0
0

I'm running Fusion 11.5.1 on a 2018 15" MBP w/ i9 2.9GHz and 32GB ram.
Since upgrading from Mojave to Catalina 10.15.0 and now Catalina 10.15.1...
If I've got a VM running and I close the lid, putting the machine to sleep.... when I later awake the machine (by opening the lid), the keyboard and trackpad are dead.  The touchbar and touchid work and I can unlock using my fingerprint.  But, a few seconds after coming out of sleep, the keyboard & touchpad a non-responsive and I see a message window saying;

 

"Bluetooth Mouse or Trackpad Setup

There isn't a wireless mouse or trackpad connected.

 

Looking for a wireless mouse or trackpad. If one is found it will be connected to your computer. Check you cables if you expect to use a USB mouse. If you don't want to set up a mouser or trackpad, press Command-Q to Quit.

 

If you are attempting to use a wireless mouse or trackpad and it isn't found, make sure it is turned on and "discoverable." If you are using an Apple wireless mouse or trackpad, turn on your mouse or trackpad. If you are trying to use a non-Apple wireless mouse or trackpad, see the documentation tat came with the mouse or trackpad"

 

At that point I can not use the trackpad to move the mouse pointer, nor type anything on the keyboard.  Infact the keyboard backlight is even dead at that point.

 

At first, I could not do anything but power down (by holding the power button for over 10 seconds) and power backup.
I've subsequently found that if I close the lid for a minute and then re-open the lid again, the keybaord and trackpad will usually coma back to life.


Again, this only seems to happen when putting the machine to sleep whilst a VM (either Win10 or Linux) is actively running and then trying to awake the machine from sleep.

 

Anyone else noticing this behavior?

Horizon Client service is marked as an interactive service

$
0
0

Dear Team,

 

Kindly help me on the below issue, I'm unable to install the Horizon client in my laptop .

OS Name : Windows 10 Home.

 

 

Log Name:      System

Source:        Service Control Manager

Date:          07-02-2019 10:37:49

Event ID:      7030

Task Category: None

Level:         Error

Keywords:      Classic

User:          N/A

Computer:      DESKTOP-BMN9JSU

Description:

The VMware Horizon Client service is marked as an interactive service.  However, the system is configured to not allow interactive services.  This service may not function properly.

Event Xml:

<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">

  <System>

    <Provider Name="Service Control Manager" Guid="{555908d1-a6d7-4695-8e1e-26931d2012f4}" EventSourceName="Service Control Manager" />

    <EventID Qualifiers="49152">7030</EventID>

    <Version>0</Version>

    <Level>2</Level>

    <Task>0</Task>

    <Opcode>0</Opcode>

    <Keywords>0x8080000000000000</Keywords>

    <TimeCreated SystemTime="2019-02-07T05:07:49.622875500Z" />

    <EventRecordID>3990</EventRecordID>

    <Correlation />

    <Execution ProcessID="928" ThreadID="15240" />

    <Channel>System</Channel>

    <Computer>DESKTOP-BMN9JSU</Computer>

    <Security />

  </System>

  <EventData>

    <Data Name="param1">VMware Horizon Client</Data>

  </EventData>

</Event>

 

Thanks,

Shankar

Help with Understanding/Clearing "Yellow" Health errors.

$
0
0

Hello All,

 

I am currently presented with this error across all drives I have currently installed in my machine (PowerEdge R720XD). Performance seems to be perfectly normal except ESXi is showing that something may be wrong with my drives. Anyone know how i can figure out what its upset with and how i can go about restoring them to green?

 

ESXi version is 6.5.0 U2 freshly installed a few days ago. Drives 11-2 are SAS HDDs, and 1-0 are Seagate Nytro SSDs.

 

Screen Shot 2019-12-01 at 4.13.44 PM.png

 

Thanks,

Max

ESXi 6.5 standalone rebooting automatically

$
0
0

I am finding my VMs running on a single standalone 6.5 host, with uptimes of less than 24 hours.

Essentially the host "boots" daily.

This started all of a sudden... is there any suggested approach in going troubleshooting this?

Can I find out if the host was "soft" rebooted or it crashed?

Anything else to keep in mind?

 

Thanks!

PCI Passthru no longer works combined with "Expose hardware assisted virtualization" in ESXi 6.7.0U3

$
0
0

  I have a 2012R2 VM, which I use as a nested Hypervisor within ESXi.

It has the "Expose hardware assisted virtualization to the guest OS" option enabled (so I can create Hyper-V VMs) as well as  PCI passthru for a RAID controller.

This VM has worked perfectly fine for a year in ESXi 6.5.0, until I upgraded the host to 6.7.0U3.

 

Now the ESXi web client tells me that I cannot have any PCI passthru if I enabled "Expose hardware assisted virtualization to the guest OS".

If I uncheck that option, then PCI passthru works fine.

Without that option enabled, I can no longer run VM's within my nested Hyper-V server.

 

 

  Is this something that has changed with 6.7.0U3?

If so, why would they make it so you can no longer do this?

Is there any workaround besides going back to 6.5.0?

 

 

Thanks for any help or insight!

Suddenly Thin provision hard disks took full space of VMFS

$
0
0

Hello everybody,

 

I have ESXI 6.5 host, and 4 VM installed on him.

ESXI version: 6.5.0 Update 2 (Build 10719125)

VMware tools version: VMware Tools 10.2.1 build 8267844

The back-end Storage: Direct Attach storage, Raid5

VMFS version: 6.81

i have "FS" VM  and there is 2 hard disk:

1 Hard disk 120GB thin provision

2 Hard disk 450GB thin provision

suddenly my VM use full space disk, why?

please your help guys

 

Best Regards


Migration from Win7 x64 to Win10x64 - how to?

$
0
0

I have an HP EliteBook 8560w which is end-of-life and I am migrating over to a new HP ZBook 15 G5.

The old laptop runs Windows 7 Pro x64 and the new Windows 10 Pro x64.

On my old laptop I have VMWare Workstation PRO15 installed and a lot of vm:s on a 2 TB internal datadrive.

I will move the data drive over to the new laptop (I bought a ZBook because it has a 2.5" hdd drive bay in addition to the SSD system drive).

 

Some issues have arisen when I am planning the move (have not yet started up the new laptop):

 

1) Install WorkStation PRO15 on new laptop?

Can I install WorkStation PRO15 on the new laptop with the same license I used on the old one or do I have to buy a new or uninstall on the old one first?

When I am all done and verified the new laptop I will uninstall Workstation PRO15 from the old laptop.

 

2) Cloning the old laptop?

I need to be able to access the old laptop even when it is retired. A virtual machine clone would be fine.

I have a very recent system backup made by Windows Backup in the form of 2 vhd files, presumably one is the C: system drive and one is the hidden Windows drive. They are 288 and 61 GB in size respectively.

Can I clone the laptop using one or both of these vhd files or do I need to use some other method?

I will uninstall a whole bunch of software from the old laptop to reduce its footprint first of course.

 

Any advice and reports of similar tasks welcome!

VRA8 - Service broker action policy

$
0
0

Hello,

I'am trying to setup an action policy in service broker but the option don't show up in the add wizard, i'am only able to select Lease policy.

I'am using VRA advance license, is enterprise license required to use that feature ? or i'am missing something else ?

Thanks in advance for your help,

Regrads,

Benjamin

Requesting a Catalog item with custo form Using REST API

$
0
0

hi, community,

 

I want to request a catalog item in vra 7.5 which have multiple page custom form using rest API's but not able to do so because /request/template API doesn't provide me with the fields defined in custom form. Furthermore, I can do it by defining custom form fields in custom properties but don't want to do that. Does anybody have a solution for this ??

I need help with Actions after upgrade of vRO

$
0
0

We moved from vRO 7.1 to 7.4   

The action that isn't working is one that will select a template by version and then pass that on for cloning to VM.   The new version of vRO throws an error that the split is undefined.   I'm not sure why I was hoping someone can help me track this down. 


var filter = '^' + os + '\\-template\\-\\d+\\.\\d+\\.\\d+$'; // string
var targetTypes = ['VirtualMachine'];// string[]
var properties = ['name'];// string[]
var rootObject = null;// Any
var foundObjects = [];
var containerRoot = null
if (typeof rootObject === 'undefined' || rootObject == null || rootObject == '<<null>>') {
    containerRoot = vc.rootFolder
} else {
    containerRoot = rootObject
}
var recursive = true
var containerView = vc.viewManager.createContainerView(containerRoot, targetTypes, recursive)
// create an object spec for the beginning of the traversal;
// container view is the root object for this traversal
var oSpec = new VcObjectSpec()
oSpec.obj = containerView.reference
oSpec.skip = true
// create a traversal spec to select all objects in the view
var tSpec = new VcTraversalSpec()
tSpec.name = 'traverseEntities'
tSpec.path = 'view'
tSpec.skip = false
tSpec.type = 'ContainerView'
// add it to the object spec
oSpec.selectSet = [tSpec]
var propertySpecs = new Array()
for (var t in targetTypes) {
    // specify the properties for retrieval
    var pSpec = new VcPropertySpec()
    pSpec.type = targetTypes[t]
    pSpec.pathSet = properties
    propertySpecs.push(pSpec)
}
var fs = new VcPropertyFilterSpec()
fs.objectSet = [ oSpec ]
fs.propSet = propertySpecs
var retrieveOptions = new VcRetrieveOptions()
var propertyCollector = vc.propertyCollector.createPropertyCollector()
try {
retrieveResult = propertyCollector.retrievePropertiesEx([fs], retrieveOptions)
do {
    if (typeof retrieveResult !== 'undefined' && retrieveResult !== null) {
processObjects(retrieveResult)
if (retrieveResult.token !== 'undefined' && retrieveResult.token !== null) {
    retrieveResult = propertyCollector.continueRetrievePropertiesEx(retrieveResult.token)
} else {
    break
}     
    } else {
      break;
    }
} while(true)
} finally {
    propertyCollector.destroyPropertyCollector()
}
for (i=0;i<foundObjects.length;i++) {
System.log(foundObjects[i]);
}
System.log(foundObjects.length);
vms = new Array()
for (var i in foundObjects) {
    vms.push(Server.fromUri(foundObjects[i]))
}
if(vms.length === 0) {
System.warn("No template could be found for OS '" + os + "'");
return null;
} else {
vms.sort(versionCompare);
var indexToReturn = vms.length - 1;
System.log("The most current " + os + " template is " + vms[indexToReturn].name);
return vms[indexToReturn];
}
function processObjects(retrieveResult) {
    var resultObjects = retrieveResult.objects
    if (typeof foundObjects === 'undefined' || foundObjects === null) {
        foundObjects = new Array()
    }
    var pattern = new RegExp(filter,'i')
    for (r in resultObjects) {
      var objContent = resultObjects[r]
      var id = objContent.obj.value
      var type = objContent.obj.type
      var props = objContent.propSet
      for (p in props) {
        if (pattern.test(props[p].val)) {
var dunesId = "dunes://service.dunes.ch/CustomSDKObject?id='" 
                                      + vc.id + "/" + id +"'&dunesName='VC:" + type + "'"
            foundObjects.push(dunesId)
            break
        }
      }
    }
}
/**
 * Compares two software version numbers (e.g. "1.7.1" or "1.2b").
 *
 * This function was born in http://stackoverflow.com/a/6832721.
 *
 * @param {string} v1 The first version to be compared.
 * @param {string} v2 The second version to be compared.
 * @param {object} [options] Optional flags that affect comparison behavior:
 * <ul>
 *     <li>
 *         <tt>lexicographical: true</tt> compares each part of the version strings lexicographically instead of
 *         naturally; this allows suffixes such as "b" or "dev" but will cause "1.10" to be considered smaller than
 *         "1.2".
 *     </li>
 *     <li>
 *         <tt>zeroExtend: true</tt> changes the result if one version string has less parts than the other. In
 *         this case the shorter string will be padded with "zero" parts instead of being considered smaller.
 *     </li>
 * </ul>
 * @returns {number|NaN}
 * <ul>
 *    <li>0 if the versions are equal</li>
 *    <li>a negative integer iff v1 < v2</li>
 *    <li>a positive integer iff v1 > v2</li>
 *    <li>NaN if either version string is in the wrong format</li>
 * </ul>
 *
 * @copyright by Jon Papaioannou (["john", "papaioannou"].join(".") + "@gmail.com")
 * @license This function is in the public domain. Do what you want with it, no strings attached.
 */
function versionCompare(v1, v2, options) {
    var lexicographical = options && options.lexicographical,
        zeroExtend = options && options.zeroExtend,
        v1parts = v1.name.split('-')[2].split('.');
        v2parts = v2.name.split('-')[2].split('.');
    function isValidPart(x) {
        return (lexicographical ? /^\d+[A-Za-z]*$/ : /^\d+$/).test(x);
    }
    if (!v1parts.every(isValidPart) || !v2parts.every(isValidPart)) {
        return NaN;
    }
    if (zeroExtend) {
        while (v1parts.length < v2parts.length) v1parts.push("0");
        while (v2parts.length < v1parts.length) v2parts.push("0");
    }
    if (!lexicographical) {
        v1parts = v1parts.map(Number);
        v2parts = v2parts.map(Number);
    }
    for (var i = 0; i < v1parts.length; ++i) {
        if (v2parts.length == i) {
            return 1;
        }
        if (v1parts[i] == v2parts[i]) {
            continue;
        }
        else if (v1parts[i] > v2parts[i]) {
            return 1;
        }
        else {
            return -1;
        }
    }
    if (v1parts.length != v2parts.length) {
        return -1;
    }
    return 0;
}

var filter = '^' + os + '\\-template\\-\\d+\\.\\d+\\.\\d+$'; // string
var targetTypes = ['VirtualMachine'];// string[]
var properties = ['name'];// string[]
var rootObject = null;// Any
var foundObjects = [];
 
var containerRoot = null
 
if (typeof rootObject === 'undefined' || rootObject == null || rootObject == '<<null>>') {
    containerRoot = vc.rootFolder
} else {
    containerRoot = rootObject
}
 
var recursive = true
 
var containerView = vc.viewManager.createContainerView(containerRoot, targetTypes, recursive)
 
// create an object spec for the beginning of the traversal;
// container view is the root object for this traversal
var oSpec = new VcObjectSpec()
oSpec.obj = containerView.reference
oSpec.skip = true
 
// create a traversal spec to select all objects in the view
var tSpec = new VcTraversalSpec()
tSpec.name = 'traverseEntities'
tSpec.path = 'view'
tSpec.skip = false
tSpec.type = 'ContainerView'
 
// add it to the object spec
oSpec.selectSet = [tSpec]
 
var propertySpecs = new Array()
for (var t in targetTypes) {
    // specify the properties for retrieval
    var pSpec = new VcPropertySpec()
    pSpec.type = targetTypes[t]
    pSpec.pathSet = properties
    propertySpecs.push(pSpec)
}
 
var fs = new VcPropertyFilterSpec()
fs.objectSet = [ oSpec ]
fs.propSet = propertySpecs
 
var retrieveOptions = new VcRetrieveOptions()
 
var propertyCollector = vc.propertyCollector.createPropertyCollector()
 
try {
retrieveResult = propertyCollector.retrievePropertiesEx([fs], retrieveOptions)
 
do {
    if (typeof retrieveResult !== 'undefined' && retrieveResult !== null) {
processObjects(retrieveResult)
if (retrieveResult.token !== 'undefined' && retrieveResult.token !== null) {
    retrieveResult = propertyCollector.continueRetrievePropertiesEx(retrieveResult.token)
} else {
    break
}    
    } else {
      break;
    }
} while(true)
} finally {
    propertyCollector.destroyPropertyCollector()
}
for (i=0;i<foundObjects.length;i++) {
System.log(foundObjects[i]);
}
System.log(foundObjects.length);
 
vms = new Array()
for (var i in foundObjects) {
    vms.push(Server.fromUri(foundObjects[i]))
}
 
if(vms.length === 0) {
System.warn("No template could be found for OS '" + os + "'");
return null;
} else {
vms.sort(versionCompare);
var indexToReturn = vms.length - 1;
System.log("The most current " + os + " template is " + vms[indexToReturn].name);
return vms[indexToReturn];
}
 
function processObjects(retrieveResult) {
    var resultObjects = retrieveResult.objects
    if (typeof foundObjects === 'undefined' || foundObjects === null) {
        foundObjects = new Array()
    }
    var pattern = new RegExp(filter,'i')
    for (r in resultObjects) {
      var objContent = resultObjects[r]
      var id = objContent.obj.value
      var type = objContent.obj.type
      var props = objContent.propSet
      for (p in props) {
        if (pattern.test(props[p].val)) {
var dunesId = "dunes://service.dunes.ch/CustomSDKObject?id='" 
                                      + vc.id + "/" + id +"'&dunesName='VC:" + type + "'"
            foundObjects.push(dunesId)
            break
        }
      }
    }
}
 
/**
 * Compares two software version numbers (e.g. "1.7.1" or "1.2b").
 *
 * This function was born in http://stackoverflow.com/a/6832721.
 *
 * @param {string} v1 The first version to be compared.
 * @param {string} v2 The second version to be compared.
 * @param {object} [options] Optional flags that affect comparison behavior:
 * <ul>
 *     <li>
 *         <tt>lexicographical: true</tt> compares each part of the version strings lexicographically instead of
 *         naturally; this allows suffixes such as "b" or "dev" but will cause "1.10" to be considered smaller than
 *         "1.2".
 *     </li>
 *     <li>
 *         <tt>zeroExtend: true</tt> changes the result if one version string has less parts than the other. In
 *         this case the shorter string will be padded with "zero" parts instead of being considered smaller.
 *     </li>
 * </ul>
 * @returns {number|NaN}
 * <ul>
 *    <li>0 if the versions are equal</li>
 *    <li>a negative integer iff v1 < v2</li>
 *    <li>a positive integer iff v1 > v2</li>
 *    <li>NaN if either version string is in the wrong format</li>
 * </ul>
 *
 * @copyright by Jon Papaioannou (["john", "papaioannou"].join(".") + "@gmail.com")
 * @license This function is in the public domain. Do what you want with it, no strings attached.
 */
function versionCompare(v1, v2, options) {
    var lexicographical = options && options.lexicographical,
        zeroExtend = options && options.zeroExtend,
        v1parts = v1.name.split('-')[2].split('.');
        v2parts = v2.name.split('-')[2].split('.');
 
    function isValidPart(x) {
        return (lexicographical ? /^\d+[A-Za-z]*$/ : /^\d+$/).test(x);
    }
 
    if (!v1parts.every(isValidPart) || !v2parts.every(isValidPart)) {
        return NaN;
    }
 
    if (zeroExtend) {
        while (v1parts.length < v2parts.length) v1parts.push("0");
        while (v2parts.length < v1parts.length) v2parts.push("0");
    }
 
    if (!lexicographical) {
        v1parts = v1parts.map(Number);
        v2parts = v2parts.map(Number);
    }
 
    for (var i = 0; i < v1parts.length; ++i) {
        if (v2parts.length == i) {
            return 1;
        }
 
        if (v1parts[i] == v2parts[i]) {
            continue;
        }
        else if (v1parts[i] > v2parts[i]) {
            return 1;
        }
        else {
            return -1;
        }
    }
 
    if (v1parts.length != v2parts.length) {
        return -1;
    }
 
    return 0;
}

仮想マシンの ハードウェアバージョン を 複数仮想マシン同時に上げる方法について

$
0
0

こんにちは!

どなたか事例があれば教えて下さい。

 

HCX を使用し、仮想マシンの移行を考えています。(1000台ほど)

仮想マシンのハードウェアバージョンの制約があり移行できないマシンがあります。
(バージョン8以下はサポートされていない)

 

そこで、事前に一括して仮想マシンのハードウェアバージョンをあげておける

スクリプトのような機能はないでしょうか。

 

例えば仮想マシンのvmxファイルを1000台分一括修正し、

 

各々のタイミングで仮想マシンの再起動で反映させるようなことができれば

 

助かります。

 

何卒、教えて下さい。

VMware KB#60424に基づいたVxRailにおけるクラスタシャットダウン手順

$
0
0

VxRailでは、VxRail Manager GUIにてクラスタのシャットダウンボタンを提供しており、簡単にクラスタシャットダウンを実施できますが、

VMware KB#60424(https:/kb.vmware.com/s/article/60424)で紹介されている通り、VSAN環境では、通常のシャットダウン手順では、データの不整合を引き起こす恐れがあり、

KBに従ったStepによってシャットダウンを実施することを推奨しております。

※本記事を公開するにあたり 十分検証確認を行っておりますが、データ保全に関して当アカウントは責任を負いかねますのであらかじめご了承下さい。

 

本記事は、VxRail 4.7.300未満のすべてのVersionで適用されます。

VxRail 4.7.300以降のVersionをご使用の場合は、VMware KB#70650の手順を参照してクラスタのシャットダウン・起動を実施してください。

 

下記EMCのKBに従ったVxRailのシャットダウン手順を詳細にご説明します。

 VxRail: vSAN cluster shutdown and restart may lead to data unavailability after a single failure (Related VMware KB# 60424)

 https://support.emc.com/kb/528792

 

VMTN コミュニティでは起動と停止の手順を以下の通り公開しています。

   ①  VMware KB#60424に基づいたVxRailにおけるクラスタシャットダウン手順   <--- 本記事です

   ②  VMware KB#60424に基づいたVxRailにおけるクラスタ起動手順

 

まず、大まかな流れとしては、下記のようになります。

■事前準備編

 1.健全性の確認

 2.各ESXiホストのNTP時刻同期の確認

 3.スクリプトの配置

 4.スクリプトの編集

 

■VSAN切り離し・シャットダウン編

 5.VCSA/PSC以外のすべての仮想マシンをシャットダウンする

 6.データ移行有無の確認

 7.VCSA/PSCのシャットダウン

 8.crontabの編集

 9.Nodeのシャットダウン

 

事前準備編に関しては、クラスタシャットダウンを実施する当日以前に実施することが可能です。

 

■事前準備編

1.下記を参照して、クラスタの健全性を確認します。

VxRail: Health Check 方法

特に「データ」-「VSANオブジェクトの健全性」の項目にて、「健全」以外の項目がすべて0であることを確認します。

VSAN_health.png

また、念の為、下記のログを取得しておくことを推奨します。

vCenter vSAN health status script 取得手順

 

2.すべてのESXiホストがNTPで時刻同期されていることを確認します。

https://kb.vmware.com/s/article/57147

NTP.png

NTP.png

 

3.VMware KB#60424(https:/kb.vmware.com/s/article/60424) に添付されている2つのスクリプト「pre_reboot.sh」「post_reboot.sh」をPCのデスクトップなどにダウンロードし、

すべてのESXiホストのサービスデータストア(VSAN以外のデータストア)に配置します。

※KB添付のscriptは予告なく名称並びに構文が修正されることがあります。都度KBをご確認頂き、最新のものをご使用下さい。

 

download_scripts.png

ダウンロードしたスクリプトをホストに配置する方法としては、下記のような手順があります。

どちらを利用いただいても問題ありません。

 

A. scp(WinSCPやFileZillaなどのファイル転送ソフトウェア)を用いる

A-1. 各ESXiホストのsshを有効にする。

ESXi、vCenter、PSCのSSH有効化

 

A-2. ファイル転送ソフトでESXiホストに接続する。

scp.png

 

A-3. /vmfs/volumes配下のxxxxxxxxxxxxx-01-01-service-datastore1という名前のフォルダに移動し、ここに2つのスクリプトをアップロードします。

scp_upload.png

 

B. 各ESXiホストのHost Clientにアクセスし、データストアブラウザを利用する。

datastorebrowser.png

 

4.各ESXiホストにsshでログインし、配置した2つのスクリプトを編集します。

ESXi、vCenter、PSCのSSH有効化

 

4-1. 2つのスクリプトに実行権限を付与します。

 

・ls コマンドでファイルを転送したservice-datastore1のディレクトリに2つのスクリプト「pre_reboot.sh」「post_reboot.sh」があることを確認。

   ※cd でディレクトリ移動するとディレクトリ名が変わりますが、問題ございません

[root@esxi01:~] cd /vmfs/volumes/DE700xxxxxxx16-01-01-service-datastore1/

 

[root@esxi01:/vmfs/volumes/5d330ce3-a0099b84-7fbe-XXXXXXXXXXXX] ls

idrac           post_reboot.sh  ptagent         vmkdump

images          pre_reboot.sh   reset

order           pservice        vibs

[root@esxi01:/vmfs/volumes/5d330ce3-a0099b84-7fbe-XXXXXXXXXXXX] ls -l

total 1024

drwxr-xr-x    1 root     root         73728 Jul 22 09:00 idrac

drwxr-xr-x    1 root     root         73728 Jul 20 15:37 images

drwxr-xr-x    1 root     root         73728 Jul 20 12:55 order

-rw-r--r--    1 root     root           498 Jul 24 12:43 post_reboot.sh

-rw-r--r--    1 root     root           346 Jul 24 12:43 pre_reboot.sh

drwxr-xr-x    1 root     root         69632 Jul 20 13:00 pservice

drwxr-xr-x    1 root     root         73728 Jul 22 09:00 ptagent

drwxr-xr-x    1 root     root         73728 Jul 20 13:02 reset

drwxr-xr-x    1 root     root         73728 Jul 20 12:55 vibs

d-w-r-xr-T    1 root     root         73728 Jul 20 13:36 vmkdump

 

・chmodコマンドで実行権限を付与(chmod +x <ファイル名>)

[root@esxi01:/vmfs/volumes/5d330ce3-a0099b84-7fbe-XXXXXXXXXXXX] chmod +x post_reboot.sh

 

[root@esxi01:/vmfs/volumes/5d330ce3-a0099b84-7fbe-XXXXXXXXXXXX] chmod +x pre_reboot.sh

 

・実行権限が付与されていることを確認(-rwxr-xr-x のような出力結果になります)

[root@esxi01:/vmfs/volumes/5d330ce3-a0099b84-7fbe-XXXXXXXXXXXX] ls -l

total 1024

drwxr-xr-x    1 root     root         73728 Jul 22 09:00 idrac

drwxr-xr-x    1 root     root         73728 Jul 20 15:37 images

drwxr-xr-x    1 root     root         73728 Jul 20 12:55 order

-rwxr-xr-x    1 root     root           498 Jul 24 12:43 post_reboot.sh

-rwxr-xr-x    1 root     root           346 Jul 24 12:43 pre_reboot.sh

drwxr-xr-x    1 root     root         69632 Jul 20 13:00 pservice

drwxr-xr-x    1 root     root         73728 Jul 22 09:00 ptagent

drwxr-xr-x    1 root     root         73728 Jul 20 13:02 reset

drwxr-xr-x    1 root     root         73728 Jul 20 12:55 vibs

d-w-r-xr-T    1 root     root         73728 Jul 20 13:36 vmkdump

 

4-2. VSANネットワークの情報をバックアップし、現在の設定値を確認します。    

              [root@esxi01:~] esxcli vsan network list > /tmp/vsan_network_list_backup.txt

 

・"VmkNic Name"のvmkを確認(下記の場合はvmk3となります)

[root@esxi01:~] esxcli vsan network list

Interface

   VmkNic Name: vmk3

   IP Protocol: IP

   Interface UUID: 1334335d-8295-a311-5c11-e4434b18d3b4

   Agent Group Multicast Address: 224.2.3.4

   Agent Group IPv6 Multicast Address: ff19::2:3:4

   Agent Group Multicast Port: 23451

   Master Group Multicast Address: 224.1.2.3

   Master Group IPv6 Multicast Address: ff19::1:2:3

   Master Group Multicast Port: 12345

   Host Unicast Channel Bound Port: 12321

   Multicast TTL: 5

  Traffic Type: vsan

 

 

4-3. 4-2で確認した内容を基に、2つのスクリプトファイルを編集します。

・pre_reboot.shには「esxcli vsan network ip remove -i <VMkNic Name>」の一文を追加

 ※上記出力例の場合は、<VMkNic Name> に vmk3を当てはめます

[root@esxi01:~] vi /vmfs/volumes/DE700xxxxxxx16-01-01-service-datastore1/pre_reboot.sh

 

#!/bin/sh

# Using the output of the command 'esxcli van network list', find

# the names of the vmknics and their associated traffic types.

#

# For each of those vmknics add one command to disable vsan traffic

# using the following command.

#

# esxcli vsan network ip remove -i <VMkNic Name>

#

# Ex:

#       esxcli vsan network ip remove -i vmk98

esxcli vsan network ip remove -i vmk3

 

 

・post_reboot.shには「esxcli vsan network ip add -i <VMkNic Name> -T=<Traffic Type>」の一文を追加

 ※上記出力例の場合は、<VMkNic Name> に vmk3を当てはめ、<Traffic Type>はvsanをあてはめます

[root@esxi01:~] vi /vmfs/volumes/DE700xxxxxxx16-01-01-service-datastore1/post_reboot.sh

 

#!/bin/sh

# Make sure to do this before running pre_reboot.sh on hosts.

#

# Using the output of the command 'esxcli van network list', find

# the names of the vmknics and their associated traffic types.

#

# For each of those vmknics add one command to enable vsan traffic

# using the following command.

#

#

# esxcli vsan network ip add -i <VMkNic Name> -T=<Traffic Type>

#

# Ex 1:

#       esxcli vsan network ip add -i vmk98 -T=vsan

# Ex 2:

#       esxcli vsan network ip add -i vmk99 -T=witness

esxcli vsan network ip add -i vmk3 -T=vsan

 

 

 

■VSAN切り離し・シャットダウン編

【注意】

外部vCenterにてvSAN Clusterを管理している場合、ESXiホストをメンテナンスモードに移行時に不要な仮想マシンの移動を防ぐため、

Shutdownする予定のvSAN Clusterの設定で、vSphere HAは”OFF(オフ)”、DRSは"Manual(手動)"への変更を推奨させていただきます。

 

5.vCenter Server ApplianceとPlatform Service Controllerを除くすべての仮想マシンをシャットダウンします。

 

6.データの移行(resync)が動作していないことを確認します。

A. vCSAへsshでログインし、RVCで確認

EMC Community Network - DECN: VxRail: RVC(Ruby vSphere Console) ベーシック

Connected to service

    * List APIs: "help api list"

    * List Plugins: "help pi list"

    * Launch BASH: "shell"

 

Command> shell

Shell access is granted to root

root@tsevxrail-vcsa [ ~ ]# rvc

Install the "ffi" gem for better tab completion.

Host to connect to (user@host): administrator@vsphere.local@localhost

password:

0 /

1 localhost/

> cd 1

/localhost> ls

0 VxRail-Datacenter (datacenter)

/localhost> cd 0

/localhost/VxRail-Datacenter> ls

0 storage/

1 computers [host]/

2 networks [network]/

3 datastores [datastore]/

4 vms [vm]/

/localhost/VxRail-Datacenter> cd 1

/localhost/VxRail-Datacenter/computers> ls

0 VxRail-Virtual-SAN-Cluster-5805c8ee-d3cd-4af5-9988-XXXXXXXXXXXX (cluster): cpu 290 GHz, memory 905 GB

/localhost/VxRail-Datacenter/computers> vsan.resync_dashboard 0

2019-07-28 00:43:25 +0000: Querying all VMs on vSAN ...

2019-07-28 00:43:25 +0000: Querying all objects in the system from tsevxrail-esxi02.cpsd.local ...

2019-07-28 00:43:25 +0000: Got all the info, computing table ...

+-----------+-----------------+---------------+

| VM/Object | Syncing objects | Bytes to sync |

+-----------+-----------------+---------------+

+-----------+-----------------+---------------+

| Total     | 0               | 0.00 GB       |

+-----------+-----------------+---------------+

 

 

B. vSphere 6.5(VxRail4.5)以降の場合、ESXiホストにsshでログインして確認

[root@esxi01:~] esxcli vsan debug resync summary get

   Total Number Of Resyncing Objects: 0

   Total Bytes Left To Resync: 0

   Total GB Left To Resync: 0.00

 

 

 

7.データの移行が無いことを確認したら、PSC -> VCSAの順にシャットダウンします。

起動時に困らないように、PSCおよびVCSAが稼働しているESXiホストをメモします。

 

シャットダウンの手順は様々ありますが、下記は例としてVAMI(アプライアンス管理インターフェース)からのシャットダウン手順をご案内します。

VAMI(アプライアンス管理インターフェース)へアクセスするには、それぞれ、VCSA/PSCのIP address宛にhttpsで5480ポートを指定してアクセスできます。

https://VCSA-ip-address:5480/

https://PSC-ip-address:5480/

VAMI.png

 

8.すべてのESXiホストにて、crontabを編集していきます。

すべてのESXiホストで同時に実行する必要があるため、8-3で設定する時刻はNode数と作業の手際を考慮した時刻で設定してください

 

8-1. rootのcrontabのバックアップをとっておく

[root@esxi01:~] cp /var/spool/cron/crontabs/root /vmfs/volumes/DE700xxxxxxx16-01-01-service-datastore1/root_crontab.BKP

 

8-2. システムの現在時刻を確認する(VxRailではUTC <JST-9> のTimezoneとなります)

[root@esxi01:~] date

Sun Jul 28 03:38:56 UTC 2019

 

8-3. viコマンドでcrontabを編集し、下記のようなpre_reboot.shスクリプトを実行する1文を記載します

[root@esxi01:~] vi /var/spool/cron/crontabs/root

 

#min hour day mon dow command

1    1    *   *   *   /sbin/tmpwatch.py

1    *    *   *   *   /sbin/auto-backup.sh

0    *    *   *   *   /usr/lib/vmware/vmksummary/log-heartbeat.py

*/5  *    *   *   *   /bin/hostd-probe.sh ++group=host/vim/vmvisor/hostd-probe/stats/sh

00   1    *   *   *   localcli storage core device purge

*/2 * * * * /usr/lib/vmware/vsan/bin/vsanObserver.sh ++group=host/vim/vmvisor/vsanobserver

*/5  *    *   *   *   /usr/lib/emc/secure_process.sh "timeout -t 90 /usr/bin/env python /bin/marvin-endpoint-post"

0 * * * * /bin/sh /opt/dell/DellPTAgent/scripts/clearTmpFile.sh

*/5 * * * * python /opt/dell/DellPTAgent/scripts/PTAgent_Monitor_35.pyc

*/15  *    *   *   *   /usr/lib/emc/collector.sh >> /var/log/emc/logs/mystic-collector.log 2>&1

*/1  *    *   *   *   /usr/lib/emc/secure_process.sh "/usr/lib/emc/shutdown_ESX.py"

30 4 28 7 * /vmfs/volumes/DE700xxxxxxx16-01-01-service-datastore1/pre_reboot.sh

※数字は左から分 時 日 月となりますので、上記例の場合、7/28 4:30(UTC<JST-9>)にpre_reboot.shを実行するように指定してあります。

※post_reboot.shは起動時に使用するスクリプトのため、シャットダウン時には設定しないでください

※すべてのHostで同様の内容にしてください

 

8-4. 下記コマンドを実行してcrondを再起動し、編集したcrontabの内容を適用させます。

[root@esxi01:~]  kill -HUP $(cat /var/run/crond.pid)

 

[root@esxi01:~]  /usr/lib/vmware/busybox/bin/busybox crond

 

8-5. 指定した時刻が過ぎてから、下記コマンドをすべてのESXiホストで実行し、cron jobの内容が問題なく実行されたことを確認します

[root@esxi01:~] esxcli vsan cluster get | grep "Local Node State"

   Local Node State: MASTER

※スクリプト実行前などでは、BACKUPやAGENTといったStateのNodeが存在します。すべてのESXiホストでMASTERステータスであれば、

 問題なくcron jobでコマンドが実行されたことを確認できます

 

なお、出力結果として”Local Node State: DISCOVER”と表示される場合があります。

その際、localcliコマンドで MASTERステータスであれば、問題なくcron jobが実行された と判断して構いません。

[root@esxi01:~] localcli vsan cluster get | grep "Local Node State"

   Local Node State: MASTER

 

9.各ESXiホストをメンテナンスモード(esxcli system maintenanceMode set -e true -m noAction)に入れた後、Nodeのシャットダウンを実施します。

※シャットダウンはHost clientまたはDCUI経由にて実施し、iDRACの電源管理などから実施しないようにしてください

     その他参考:VxRail:nodeの停止/起動(メンテナンスモードの終了) 手順

 

9-1. esxcliコマンドを使用して、ESXiをメンテナンスモードに移行

"esxcli system maintenanceMode get"にて、メンテナンスモードかどうかの確認(Enableの場合、メンテナンスモード状態)

"esxcli system maintenanceMode set -e true -m noAction"にて、No Actionのオプションでメンテナンスモードへ移行実施

[root@esxi01:~] esxcli system maintenanceMode get

Disabled

[root@esxi01:~] esxcli system maintenanceMode set -e true -m noAction

 

[root@esxi01:~] esxcli system maintenanceMode get

Enabled

 

9-2. vSphere Host Client または、DCUIよりESXiのShutdownを実施

下記はDCUIでの操作を例にします

 

ESXi shellの画面にいる場合、[Alt] + [F2]を押してESXiの画面に移動してから、[F12] を押しESXiのroot userでLoginを実施

※password入力時は、"Login name"の部分で正しくキーボード入力されるか確認してから実施すると良いです

 仮想コンソールのキーボード設定によって"@"などの位置が違う場合がございます

 

"Shutdown/Restart"のMenuが表示されるので、[F2] Shut Downを選択してESXiのShutdownを実施してください

11.png

12.png

 

VxRail のvSAN Clusterの全てのESXiにて実施してください。

VMware KB#60424に基づいたVxRailにおけるクラスタ起動手順

$
0
0

VxRailでは、VxRail Manager GUIにてクラスタのシャットダウンボタンを提供しており、簡単にクラスタシャットダウンを実施できますが、

VMware KB#60424(https:/kb.vmware.com/s/article/60424) で紹介されている通り、停電対応などでvSANクラスタの全停止を伴う作業を実施した場合、vSAN Clusterの次回起動時にアクセスできないDiskやNodeがあると、関連する一部のvSAN データストア上のデータ(vSAN Object)にアクセス不可となる可能性があります。

この事象を防ぐために、上記KBに従ったStepによってシャットダウンを実施することを推奨しております。

※本記事を公開するにあたり 十分検証確認を行っておりますが、データ保全に関して当アカウントは責任を負いかねますのであらかじめご了承下さい

 

本記事は、VxRail 4.7.300未満のすべてのVersionで適用されます。

VxRail 4.7.300以降のVersionをご使用の場合は、VMware KB#70650の手順を参照してクラスタのシャットダウン・起動を実施してください。

 

下記EMCのKBに従ったVxRailの起動手順を詳細にご説明します。

 VxRail: vSAN cluster shutdown and restart may lead to data unavailability after a single failure (Related VMware KB# 60424)

 https://support.emc.com/kb/528792

 

VMTN コミュニティでは起動と停止の手順を以下の通り公開しています。

   ①  VMware KB#60424に基づいたVxRailにおけるクラスタシャットダウン手順  

   ②  VMware KB#60424に基づいたVxRailにおけるクラスタ起動手順  <--- 本記事です

 

 

まず、大まかな流れとしては、下記のようになります。

■Node起動・ステータス確認編

 1.Nodeの起動

 2.vSAN Diskの正常ステータスの確認

 3.メンテナンスモードの解除

 

■vSANトラフィックの復活・仮想マシン起動編

 4.crontabの編集

 5.vSANオブジェクトの健全性確認

 6.crontabの再編集

 7.VCSA/PSCの仮想マシンを起動する

 8.VCSA/PSC以外のすべての仮想マシンを起動する

 

 

■Node起動・ステータス確認編

1.Nodeの起動

電源ケーブルを抜いている場合は接続し、iDRAC/BMC経由、又は物理的に電源ボタンを押してNodeを起動してください

また、ESXiが正常に起動していることをモニターや仮想コンソールから併せて確認してください

 

起動が完了したら、下記コマンドをすべてのESXiホストで実行しシャットダウン時と同じステータスであることを確認します

[root@esxi01:~] esxcli vsan cluster get | grep "Local Node State"

   Local Node State: MASTER

 

      なお、出力結果として”Local Node State: DISCOVER”と表示される場合があります。

     その際、localcliコマンドで MASTERステータスであれば、問題ありません。

    [root@esxi01:~] localcli vsan cluster get | grep "Local Node State"

      Local Node State: MASTER

 

 

2.vSAN Diskの正常ステータスの確認

          下記コマンドをすべてのESXiホストで実行し、全てのDiskの"In CMMDS:" の値が "true" であることを確認します

[root@esxi01:~] esxcli vsan storage list | grep "In CMMDS"

   In CMMDS: true

   In CMMDS: true

   In CMMDS: true

   In CMMDS: true

   In CMMDS: true

   In CMMDS: true

 

3.下記コマンドをすべてのESXiホストで実行し、メンテナンスモードの解除を実施します

[root@esxi01:~] esxcli system maintenanceMode set -e false

 

[root@esxi01:~] esxcli vsan cluster get | grep "Maintenance Mode State"

   Maintenance Mode State: OFF

 

 

 

■vSANトラフィックの復活・仮想マシン起動編

4.すべてのESXiホストにて、crontabを編集していきます。

すべてのESXiホストで同時に実行する必要があるため、4-4で設定する時刻はNode数と作業の手際を考慮した時刻で設定してください

 

4-1. 各ESXiホストにsshでログインし、クラスタシャットダウン時に配置したスクリプトを確認します。

・ls コマンドでファイルを転送したservice-datastore1のディレクトリにスクリプト「post_reboot.sh」があることを確認。

 

[root@esxi01:/vmfs/volumes/5d330ce3-a0099b84-7fbe-XXXXXXXXXXXX] ls -l

total 1024

drwxr-xr-x    1 root     root         73728 Jul 22 09:00 idrac

drwxr-xr-x    1 root     root         73728 Jul 20 15:37 images

drwxr-xr-x    1 root     root         73728 Jul 20 12:55 order

-rwxr-xr-x    1 root     root           498 Jul 24 12:43 post_reboot.sh

-rwxr-xr-x    1 root     root           346 Jul 24 12:43 pre_reboot.sh

drwxr-xr-x    1 root     root         69632 Jul 20 13:00 pservice

drwxr-xr-x    1 root     root         73728 Jul 22 09:00 ptagent

drwxr-xr-x    1 root     root         73728 Jul 20 13:02 reset

drwxr-xr-x    1 root     root         73728 Jul 20 12:55 vibs

d-w-r-xr-T    1 root     root         73728 Jul 20 13:36 vmkdump

 

・post_reboot.shに、追記した「esxcli vsan network ip add -i <VMkNic Name> -T=<Traffic Type>」の一文があることを確認

 ※追記したものがない場合は、再度編集して追記してください

[root@esxi01:~] vi /vmfs/volumes/DE700xxxxxxx16-01-01-service-datastore1/post_reboot.sh

 

#!/bin/sh

# Make sure to do this before running pre_reboot.sh on hosts.

#

# Using the output of the command 'esxcli van network list', find

# the names of the vmknics and their associated traffic types.

#

# For each of those vmknics add one command to enable vsan traffic

# using the following command.

#

#

# esxcli vsan network ip add -i <VMkNic Name> -T=<Traffic Type>

#

# Ex 1:

#       esxcli vsan network ip add -i vmk98 -T=vsan

# Ex 2:

#       esxcli vsan network ip add -i vmk99 -T=witness

esxcli vsan network ip add -i vmk3 -T=vsan

4-2.  rootのcrontabのバックアップをとっておく

[root@esxi01:~] cp /var/spool/cron/crontabs/root /vmfs/volumes/DE700xxxxxxx16-01-01-service-datastore1/root_crontab.BKP2

 

4-3. システムの現在時刻を確認する(VxRailではUTC <JST-9> のTimezoneとなります)

[root@esxi01:~] date

Sun Jul 28 03:38:56 UTC 2019

 

4-4. viコマンドでcrontabを編集し、下記のようなpost_reboot.shスクリプトを実行する1文を記載します

※クラスタシャットダウン時に記載した、pre_reboot.shスクリプトを実行する1文は削除してください

[root@esxi01:~] vi /var/spool/cron/crontabs/root

 

#min hour day mon dow command

1    1    *   *   *   /sbin/tmpwatch.py

1    *    *   *   *   /sbin/auto-backup.sh

0    *    *   *   *   /usr/lib/vmware/vmksummary/log-heartbeat.py

*/5  *    *   *   *   /bin/hostd-probe.sh ++group=host/vim/vmvisor/hostd-probe/stats/sh

00   1    *   *   *   localcli storage core device purge

*/2 * * * * /usr/lib/vmware/vsan/bin/vsanObserver.sh ++group=host/vim/vmvisor/vsanobserver

*/5  *    *   *   *   /usr/lib/emc/secure_process.sh "timeout -t 90 /usr/bin/env python /bin/marvin-endpoint-post"

0 * * * * /bin/sh /opt/dell/DellPTAgent/scripts/clearTmpFile.sh

*/5 * * * * python /opt/dell/DellPTAgent/scripts/PTAgent_Monitor_35.pyc

*/15  *    *   *   *   /usr/lib/emc/collector.sh >> /var/log/emc/logs/mystic-collector.log 2>&1

*/1  *    *   *   *   /usr/lib/emc/secure_process.sh "/usr/lib/emc/shutdown_ESX.py"

30 4 28 7 * /vmfs/volumes/DE700xxxxxxx16-01-01-service-datastore1/post_reboot.sh

※数字は左から分 時 日 月となりますので、上記例の場合、7/28 4:30(UTC<JST-9>)にpost_reboot.shを実行するように指定してあります。

※pre_reboot.shはシャットダウン時に使用するスクリプトのため、起動時には設定しないでください

 

4-5. 下記コマンドを実行してcrondを再起動し、編集したcrontabの内容を適用させます。

[root@esxi01:~]  kill -HUP $(cat /var/run/crond.pid)

 

[root@esxi01:~]  /usr/lib/vmware/busybox/bin/busybox crond

5.vSANオブジェクトの健全性確認を確認します。

5-1. 指定した時刻が過ぎてから、下記コマンドをすべてのESXiホストで実行し、cron jobの内容が問題なく実行されたことを確認します

[root@esxi01:~] esxcli vsan network list

Interface

   VmkNic Name: vmk3

   IP Protocol: IP

   Interface UUID: 1334335d-8295-a311-5c11-e4434b18d3b4

   Agent Group Multicast Address: 224.2.3.4

   Agent Group IPv6 Multicast Address: ff19::2:3:4

   Agent Group Multicast Port: 23451

   Master Group Multicast Address: 224.1.2.3

   Master Group IPv6 Multicast Address: ff19::1:2:3

   Master Group Multicast Port: 12345

   Host Unicast Channel Bound Port: 12321

   Multicast TTL: 5

  Traffic Type: vsan

 

5-2. 下記コマンドをすべてのESXiホストで実行し、何も出力されずにプロンプトが返ってくることを確認します

[root@esxi01:~] cmmds-tool find -f python | grep -C5 CONFIG_STATUS | grep content | grep -v "state....7\|state....15"

[root@esxi01:~]

問題があるデータが存在する場合、何らかの返り値が出力されます。

 

 

6.すべてのESXiホストにて、crontabを編集していきます。

6-1. viコマンドでcrontabを編集し、下記のようにpost_reboot.shスクリプトを実行する1文を削除した状態にします

(クラスタシャットダウン実施前の状態)

[root@esxi01:~] vi /var/spool/cron/crontabs/root

#min hour day mon dow command

1    1    *   *   *   /sbin/tmpwatch.py

1    *    *   *   *   /sbin/auto-backup.sh

0    *    *   *   *   /usr/lib/vmware/vmksummary/log-heartbeat.py

*/5  *    *   *   *   /bin/hostd-probe.sh ++group=host/vim/vmvisor/hostd-probe/stats/sh

00   1    *   *   *   localcli storage core device purge

*/2 * * * * /usr/lib/vmware/vsan/bin/vsanObserver.sh ++group=host/vim/vmvisor/vsanobserver

*/5  *    *   *   *   /usr/lib/emc/secure_process.sh "timeout -t 90 /usr/bin/env python /bin/marvin-endpoint-post"

0 * * * * /bin/sh /opt/dell/DellPTAgent/scripts/clearTmpFile.sh

*/5 * * * * python /opt/dell/DellPTAgent/scripts/PTAgent_Monitor_35.pyc

*/15  *    *   *   *   /usr/lib/emc/collector.sh >> /var/log/emc/logs/mystic-collector.log 2>&1

*/1  *    *   *   *   /usr/lib/emc/secure_process.sh "/usr/lib/emc/shutdown_ESX.py"

 

6-2. 下記コマンドを実行してcrondを再起動し、編集したcrontabの内容を適用させます。

[root@esxi01:~]  kill -HUP $(cat /var/run/crond.pid)

 

[root@esxi01:~]  /usr/lib/vmware/busybox/bin/busybox crond

 

7.PSC -> VCSAの順に仮想マシンを起動します。

7-1. クラスタシャットダウン時にメモした、PSCおよびVCSAが稼働しているESXiホストのHost Clientにアクセスし、

PSC -> VCSAの順に仮想マシンを起動します。

 

左側のMenuのVirtual Machinesを選択します

vCenter Server Platform Services Controllerを選択し、Power ONを実施します

その後PSCの起動を確認し、vCenter Server Applianceも同様にPower ONを実施します

 

14.png

 

7-2.  Health Checkの実施

VCSA及びPSCのPower Onが完了したら、vSANのHealth Checkを実施します。

vSphere Web ClientへLoginを実施し、

VxRail: Health Check 方法のvSAN ヘルスチェック を実施しエラーがないことを確認します

 

外部vCenterにてvSAN Clusterを管理し、Shutdown前にvSphere HA及びDRSの設定を変更していた場合は、元の設定に戻してください。

 

8.VCSA/PSC以外のすべての仮想マシンを起動します

VxRail ManagerやESRSを含めた、その他の仮想マシンの起動を実施します

vSANクラスタの計画停止を行う際、再起動時に故障により起動できないノードがあった場合に一部のデータにアクセスできなくなることがあります。


VMs run a higher CPU load on Catalina

$
0
0

I'm running Fusion 11.5 on my Mac mini (late 2012, Core i7 quad, 16GB). Since the upgrade from High Sierra to Catalina, I noticed the fan of the Mac coming on a lot more often than it used to.

 

I run Win10 1809 in a VM (6GB, 3 cores) and simply opening a new tab in a browser causes the fan on the Mac to spin up. Even when idling, the VM uses >120% CPU power, peeking into the 200% range. Opening a new tab causes CPU usage to jump 60-100%. minimising a window can also temporarily increase the CPU usage by 100% or more. The VM lives on an external USB3 SSD (it's actually faster than the Mac's internal HDD natively) and I had no issues running Fusion 8 on High Sierra.

 

Who is the culprit? Catalina or Fusion 11.5? What can I do to address this?

 

Cheers

Port Forward on VMWare Workstation, But Range not a Port

$
0
0

Hi everyone, thanks for helping me,

1. I installed VMWare Workstation 15.5 on Windows Server 2019

2. I use NAT to Port Forward and it's working well from NAT8

3. I want to Forward UDP ports 10000 - 19999 but it's a huge range

I can only forward a port, how can I forward many ports at the same time???

=============================

Second way:

1. I tried to use bridge mode

2. I set bridge mode to specific adaptor

3. but my VM never get IP from DHCP

4. I added IP manually and it's not working well

how can I use bridge mode for my VM to get IP to how can I set Manual IP to works well

 

My VM OS: Kerio Operator

Thanks a lot

Workstation crashes as soon as I try to run VM on Kali Linux

$
0
0

Hey guys, super new to the scene here and trying to get my berrings. Finding out I may have been overconfident and installed Kali too early because I've had errors that I've had to work through on almost every installation (including linux itself), but have been working through each problem in good time with a quick web search. This is the first thing I've gotten truly stuck on, so forgive me for lacking some technical terms etc.

     I downloaded Workstation (free) and also installed metasploit 2. Unzipped and tried to run with the vmx file as instructed, and as it said "connecting", all of a sudden it just said 'error' super fast and Workstation crashed. I tried multiple times, then re-installed metasploit. Also tried downloading an SSH shell but the guide to downloading an SSH led me to a non-working command. Tried to open a non metasploit virtualmachine as well, both crash immediately and dont even show me an error message now. As soon as I hit run it just crashed. Reinstalled Workstation, same issue occurring. Tried to run this: vmplayer /path/to/virtual machine

and got

failed to load external entity "/etc/vmware/hostd/proxy.xml"

vmplayer: Too many arguments; only one virtual machine can be specified at a time.

Try 'vmplayer --help' for more information.

How do I upload my logs?

 

Thanks in advance!

 

x-manlord

vSphere 6.7 ICM Course

$
0
0

Dear friends,

 

I am doing one vSphere 6.7 course from private class covering ICM blueprint. I want to know about on demand course from vmware.

 

i know its 1 month valid course but please let me know on below:

how many hours of training included in on-demand course?

40 hrs of theory Training or Theory plus lab demos total 40 hrs ?

are there any extra hours for LAB practice other than 40 hrs of on demand training ?

please share more and detailed info about on demand course.. 

are above thing applicable for other VCP on demand course as well ?

 

https://mylearn.vmware.com/mgrReg/courses.cfm?ui=www_edu&a=one&id_subject=86729

مجموعة لاخبار فيموير

$
0
0

اقتراح من احد الاخوة بعمل مجموعة واتساب لاخبار فيموير ةللمساعدة

من اراد المشاركة يراسلني على الخاص

Viewing all 180923 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>