Evacuation and binding affinity rules
I have a 5.5 ESXi host called ESXi1 in a group of DRS host called "host of ESXi1 group. No other ESXi host is in this group, but there are 4 other ESXi hosts in the cluster. I have a VM called 'VM1' in a virtual machine DRS group called "group virtual machine VM1. No other VMS are in this group of DRS.
VM1-> "VM1-machine group.
ESXi1-> "host of ESXi1 group.
There is a mandatory rule of DRS that says MV in the 'machine VM1 group' working only with ESXi hosts in the 'host ESXi1 group'. What happens when I try to put ESXi1 host in maintenance mode? He will be able to evacuate VM1 since there is no other host in the Group VM1 to work?
Yes. Answer is 100% correct. If configured VM host affinity/anti-affinity rule is ESSENTIAL, it cannot be violated. Same vSphere HA respects the rules of the VM-host must. Even you can not manually migrate this VM1 to another host. Maintenance mode also cannot assess the host. Even if there is imbalance CPU/Memory, DRS will always obey this rule.
If you want this rule to be flexible, you can configure the same thing as "soft / should" rule. In this case, rule is violated every time that it is absolutely necessary (like MM, HA does not respect this rule, you can manually migrate VM to others, the DRS in a balanced cpu/memory can violet this rule) but notes that in the immediate following invocation of the DRS, DRS will try its best to resolve the violation of the rules.
To know what are the rules can be honored by vSphere HA:of vSphere HA abreast of the DRS rules of affinity? | vThinkBeyondVM
Let us know if you need any other clarity.
Tags: VMware
Similar Questions
-
HA and affinity rules &; book by Duncan &; Frank
VMware vSphere reading 5 clusters of Duncan & Frank (Pocket v1.0) deepdive, I'm confused.
On page 212, second paragraph, it says (roughly) VMware HA is not aware of the virtual-VM anti machine affinity rules, and after an HA event may begin on the same host. But on page 215, second paragraph, it says (roughly) HA will not violate the mandatory rules after HA failover.
This seems to contradict itself.
I can not type the full section due to copyright.
Is anyone able to explain it?
See you soon.
Hello
There are two types of rules:
- VM - VM affinity rules
- VM - host affinity rules
HA is not aware of the first, machine virtual-VM, so any rule you create here will be ignored by HA.
Now, for the second, it's a bit more complicated... There are two types of VM - affinity host rules:
- Bride aka mandatory
- Expected preferential aka
HA will respect 'must' of the rules, but will be no respect for the rules 'should '.
That's what means the book.
-
DRS VM affinity/anti-affinity rules - these are lost when the DRS is off - they can be "listed" via perl or script Toolkit VI to return to manual if necessary.
But can they be backed up / restored through automated methods for easy recovery in case required or accidental deactivation of the DRS? What happens if a user of vCenter turns off instead of the manual setting during operations?
I have over 100 + VM DRS affinity/anti-affinity rules to maintain.
There are indeed several DRS rules related cmdlets in the VITK 1.5.
The following script will save all rules in a .txt file.
$outfile = "C:\rules.txt" Remove-Item $outfile $clusterName =
$rules = get-cluster -Name $clusterName | Get-DrsRule foreach($rule in $rules){ $line = (Get-View -Id $rule.ClusterId).Name $line += ("," + $rule.Name + "," + $rule.Enabled + "," + $rule.KeepTogether) foreach($vmId in $rule.VMIds){ $line += ("," + (Get-View -Id $vmId).Name) } $line | Out-File -Append $outfile } The reason why we are writing the rules in a .txt file is because the type of 'Solidarity' with the rules can have 2 or more guests defined.
This type of info (variable length table) is impossible to export to a. CSV file.
The 2nd script reads this external file and sets the rules.
$file = "C:\rules.txt" $rules = Get-Content $file foreach($rule in $rules){ $ruleArr = $rule.Split(",") if($ruleArr[2] -eq "True"){$rEnabled = $true} else {$rEnabled = $false} if($ruleArr[3] -eq "True"){$rTogether = $true} else {$rTogether = $false} get-cluster $ruleArr[0] | ` New-DrsRule -Name $ruleArr[1] -Enabled $rEnabled -KeepTogether $rTogether -VM (Get-VM -Name ($ruleArr[http://4..($ruleArr.Count - 1)|http://4..($ruleArr.Count - 1)])) }
[The trick used for guests, it's that we select the part of a table with the \[a... scoring b\].
Currently, you will need to run the first script for each cluster separately, but this could be easily adapted to run on all clusters in your VI.
-
SQL 2012 still on the use of affinity rules
Hey guys,.
I use SQL 2012 alwaya time on in a virtual, but so far, it is not configured as best practices and environment I wanted to change that.
At the moment I have no DRS rules in place so it can happen that two virtual machines running on the same host and it's something I want to avoid.
However, my big problem is that I only got a SQL license for two hypervisors and best practices talked about four hosts who are needed to achieve my goal.
Here is what I intend to implement:
-Affinity rule machine virtual-VM to separate two virtual machines
-Affinity VM host rule which VM1 MUST run on ESX1
-Affinity VM host rule that VM2 MUST run on ESX2
This configuration is a good idea or could / should I do something different?
What I found that all the features how for example the evacuation and HA should still work?
There are many more ESX servers in this group and they will be used in the case of an outtage, right?
Also there is a dev environment that looks the same. I could include the hosts in the same VM-Host affinity rules or should I create new ones?
BTW. I am using vCenter and ESX 5.5.0.
Thank you very much!
See you soon
Nicolai
Affinity rules those you intend to sense. These rules will not be those virtual machines to be on the same host most of the time.
Note:
1 rule of VM host is configured as "SHOULD", in extreme cases, DRS can break these rules. However, in the next invocation of DRS, DRS will try to resolve the violations.
2. Note that: when you keep either the host in maintenance (ESX1 or ESX2) mode, you must manually migrate the VM to another host due to the virtual-VM anti rule machine affinity. DRS even in full auto mode, VM will not be migrated automatically. This will apply only if there are only 2 host in the cluster.
3. Yes, HA should well with that: however HA is not aware of the rules 'EXPECTED' and in the case of host failure it can not respect 'SHOULD' rule.
4 rule anti-affinite VM - VM can be sensitized HA using the advanced option. Let me know if you want to help with that.
5. Yes, failure of other hosts in the cluster will be used but please updated on impact due to rules & licenses.
6. "There is also an environment-dev which looks the same." I did not follow what exactly you mean here:
7 migration threshold settings DRS is also important.
8 DRS gives priority to the prevention of violations of anti-affinity rules machine virtual-VM that violations of rules of affinity. (it's just for your info.)
Nevertheless,.
1. If ESX1 falls down or affinity rule VM host that VM1 MUST run on ESX1 gets violated: VM1 can be migrated to other hosts in the cluster. As you have no licenses (more than 2) SQL, how it would be dealt with (I'm not very updated on the SQL licenses)
2 point above applies to the second rule of VM HOST as well.
-
Call the stored procedure, and bind parameters by name
Hello
I use the Oracle ODBC 12 c driver to pass values from one Interface to our database Oracle 11.2. The Interface software collects data from modbus protocoll and calls a stored procedure. Right now my syntax to call the stored procedure looks like this:
CALL procedure-name ('STRING', 'Timestamp as String', numValue1);
It works very well. Now, I have to add a default setting to my procedure. To stay flexible to make other changes, I want to call the procedure and bind the parameters by name. Release 10.2.0.1.0 ISC ODBC Notes:
Added support for the named parameter, binding the parameters by name. ODBC Oracle driver now allows the application to specify the parameters of a stored procedure by name, in the procedure call. Named parameters are to be used in calls to stored procedures and should not be used in other SQL statements.
So, it shouldn't be a problem to use named notation, but how do I do this in ODBC? I tried like this, but oracle returns an ora-00936 error of missing expression:
call procedure-name (paramName1 = > 'STRING',= paramName2 > 'Timestamp as String',paramName3 = > numValue1).
Thank you for your help.
Finally, I was able to find the error. The syntax of the statement was very good. The problem was caused by another declaration that I edited before and the error has not attracted Attention immediately.
Thanks for reading and looking for an answer.
-
How can I call Adobe? I need to talk about how to create my site and bind it to lightroom. I have creative cloud.
The only phone support I know is not for sales, the use of programs
You will also likely get detailed assistance in the specific forums for the programs you use
Forum of https://forums.adobe.com/thread/1929760 to find a forum for your program list
-
Using Mac OS 10.10.4 and Dreamweaver 8 and Dreamweaver CC 2015 or Mac OS 10.6.8
What determines the order that CSS styles class and/or target rule are listed in the menu of the class of the HTML or CSS property inspector in Dreamweaver CC?
Is it possible to change the order in the drop-down list so that a frequently used class style/Targeted rule is listed first (to the top of the list)?
I just have an attached style sheet and which shows alphabetically in the drop-down list. Maybe, if you have more than one style sheet, the styles appear in the load order of the leaves and alphabetically within each worksheet.
-
What are the "rules of affinity".
Thank you
Prashant
Affinity rules you can define a rule for example that a specific virtual machine only works on a single host (you choose). Or the other way around: one or more virtual machines are not allowed to run on host A & B for example.
This is often used in combination with license policies.
Kind regards
Mario
-
Hello world
I want to create anti-affinity rules machine virtual-VM for 4 virtual machines. We use vSphere 4.0 U2 on our environment.
What would be the number of rules that are created on the DRS Cluster?
It's 6 rules? What is different now.
4 VMS = 6 rules (VM1/VM2 VM1/VM3 VM4/VM1, VM2/VM3, VM4/VM2, VM3/VM4)
gedelar wrote:
It's 6 rules? What is different now.
If you upgrade to vSphere 4.1, that one rule would be necessary, but I guess on 4.0, you must create these six different rules.
http://www.VMware.com/files/PDF/Techpaper/VMW-whats-new-vSphere41-HA.PDF
"Finally, rules anti-affinity machine VM-virtual can now integrate more than two virtual machines." Here, VMware DRS try remove the virtual machines specified. Users could use this rule to ensure that some virtual machines are always on different physical hosts. » -
Hi guys,.
When a SQL using bind variables histograms afftect the excution plan how?
For example
There is a table 'TEST' a column a number, varchar2 (100) b, c. tank (100).
100000 rows in this table and the 90000 column rows a value is 1, the other value is 2-10 by 100rows.
Now this column a histogram and a btree index only has on a;
Here is sample code
number of a_v var;
exec: a_v: = 10;
Select * from test where a =: a_v.
The plan of the excution is full table scan.
If I don't use of variable binding. It will scan the index.
I remember that a document mentioned that "do not use histograms using bind variables.
But why?
I disabled same bind variable peeking?
Thank you guys. Looking forward to your response.Longfei Wei says:
Thanks Centinul this article is useful for me, but it is not explained why histograms do not work well with bind variables.Thanks again.
Longfei,
Jonathan Lewis article is very good - another look at this article. Histograms peuvent work with bind variable, but the end result is usually not the desired result. Bind variables are used to reduce the number of different execution plans. The histograms are used to find what is supposed to be the best execution plan for the predicates provided and in the case of the bind variables, those are peeked from the bind variable values. Thus, if you have a histogram on a column and for hard analysis of a SQL statement and the most common value in this column is presented in the binding variable - this execution plan is considered by the optimizer to be the 'best' execution plan for the bind variable values provided. Suppose now that instead the less popular value in the column is specified - the optimizer peut produce a very different for the same SQL statement execution plan, which is optimized for the less popular value (this can be a scan of the index systematic range, rather than a full table scan). Now suppose the execution plan may not change when change of variable values bind - if you have a single popular value and many unpopular values, if the analysis lasts is performed with the popular single value, you might find that all subsequent runs of this SQL statement to perform full table scans, even if only a few rows in the table are selected.
Here's a quick test on the Oracle 11.2.0.2 database to demonstrate:
CREATE TABLE T1 ( C1 NUMBER, C2 NUMBER, C3 VARCHAR2(300)); INSERT INTO T1 SELECT * FROM (SELECT ROWNUM C1, DECODE(MOD(ROWNUM,100),99,99,1) C2, RPAD('A',300,'A') C3 FROM DUAL CONNECT BY LEVEL <= 1000000) ORDER BY C2; CREATE INDEX IND_T1_C2 ON T1(C2); EXEC DBMS_STATS.GATHER_TABLE_STATS(OWNNAME=>USER,TABNAME=>'T1',CASCADE=>TRUE,METHOD_OPT=>'FOR ALL INDEXED COLUMNS SIZE 254')
The foregoing has created a table with 1 000 000 lines where 99% of the lines have a value of 1 in C2 and 1% have a value of 99, and lines are inserted with a perfect setting in cluster factor because of the ORDER BY clause. A histogram has been created on the indexed column.
Let's try a test, we'll search a unpopular value 2 for the connection variable:
VARIABLE N1 NUMBER EXEC :N1:=2 SELECT /*+ GATHER_PLAN_STATISTICS */ C1, C2 FROM T1 WHERE C2 = :N1; no rows selected SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY_CURSOR(NULL,NULL,'ALLSTATS LAST')); SQL_ID c7su63uw7nch6, child number 0 ------------------------------------- SELECT /*+ GATHER_PLAN_STATISTICS */ C1, C2 FROM T1 WHERE C2 = :N1 Plan hash value: 236868917 ------------------------------------------------------------------------------------------------------------ | Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers | Reads | ------------------------------------------------------------------------------------------------------------ | 0 | SELECT STATEMENT | | 1 | | 0 |00:00:00.01 | 3 | 1 | | 1 | TABLE ACCESS BY INDEX ROWID| T1 | 1 | 5957 | 0 |00:00:00.01 | 3 | 1 | |* 2 | INDEX RANGE SCAN | IND_T1_C2 | 1 | 5957 | 0 |00:00:00.01 | 3 | 1 | ------------------------------------------------------------------------------------------------------------ Predicate Information (identified by operation id): --------------------------------------------------- 2 - access("C2"=:N1)
Thus, there is no selected row, the optimizer predicts that 5 957 lines would be returned and a path to the index has been selected. Path of this index would also be appropriate for the value of the bind variable 1? We will continue the trial, this time by choosing the 99 for the binding variable value:
EXEC :N1:=99 SET TIMING ON SELECT /*+ GATHER_PLAN_STATISTICS */ C1, C2 FROM T1 WHERE C2 = :N1; ... 10000 rows selected. Elapsed: 00:00:05.35 SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY_CURSOR(NULL,NULL,'ALLSTATS LAST')); SQL_ID c7su63uw7nch6, child number 0 ------------------------------------- SELECT /*+ GATHER_PLAN_STATISTICS */ C1, C2 FROM T1 WHERE C2 = :N1 Plan hash value: 236868917 --------------------------------------------------------------------------------------------------- | Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers | --------------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1 | | 10000 |00:00:00.02 | 1783 | | 1 | TABLE ACCESS BY INDEX ROWID| T1 | 1 | 5957 | 10000 |00:00:00.02 | 1783 | |* 2 | INDEX RANGE SCAN | IND_T1_C2 | 1 | 5957 | 10000 |00:00:00.01 | 690 | --------------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 2 - access("C2"=:N1)
Once more, the optimizer predicts 5 957 lines could be found even if 10,000 rows have been retrieved. Note also that the number of children is always 0. We will continue the trial, this time with the bind variable value of 1:
EXEC :N1:=1 SET AUTOTRACE TRACEONLY STATISTICS SELECT /*+ GATHER_PLAN_STATISTICS */ C1, C2 FROM T1 WHERE C2 = :N1; 990000 rows selected. Elapsed: 00:00:18.78 Statistics --------------------------------------------------- 1 recursive calls 1 db block gets 108571 consistent gets 0 physical reads 96 redo size 21958348 bytes sent via SQL*Net to client 726508 bytes received via SQL*Net from client 66001 SQL*Net roundtrips to/from client 0 sorts (memory) 0 sorts (disk) 990000 rows processed SET AUTOTRACE OFF
Because I used AUTOTRACE to prevent 990 000 lines scrolling on the screen, I have to specify the SQL_ID and CHILD_NUMBER to retrieve the execution plan:
SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY_CURSOR('c7su63uw7nch6',0,'ALLSTATS LAST')); SQL_ID c7su63uw7nch6, child number 0 ------------------------------------- SELECT /*+ GATHER_PLAN_STATISTICS */ C1, C2 FROM T1 WHERE C2 = :N1 Plan hash value: 236868917 --------------------------------------------------------------------------------------------------- | Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers | --------------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1 | | 10000 |00:00:00.02 | 1783 | | 1 | TABLE ACCESS BY INDEX ROWID| T1 | 1 | 5957 | 10000 |00:00:00.02 | 1783 | |* 2 | INDEX RANGE SCAN | IND_T1_C2 | 1 | 5957 | 10000 |00:00:00.01 | 690 | --------------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 2 - access("C2"=:N1)
Who can be the execution plan that was used because it shows that 10,000 rows have been retrieved. We will try again, this time with CHILD_NUMBER 1:
SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY_CURSOR('c7su63uw7nch6',1,'ALLSTATS LAST')); SQL_ID c7su63uw7nch6, child number 1 ------------------------------------- SELECT /*+ GATHER_PLAN_STATISTICS */ C1, C2 FROM T1 WHERE C2 = :N1 Plan hash value: 3617692013 ------------------------------------------------------------------------------------ | Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers | ------------------------------------------------------------------------------------ | 0 | SELECT STATEMENT | | 1 | | 990K|00:00:00.83 | 108K| |* 1 | TABLE ACCESS FULL| T1 | 1 | 988K| 990K|00:00:00.83 | 108K| ------------------------------------------------------------------------------------ Predicate Information (identified by operation id): --------------------------------------------------- 1 - filter("C2"=:N1)
The foregoing shows the actual plan that has been used. Sharing the adjustment slider (first available with Oracle Database 11.1) is reached and forced to re-evaluate the execution plan to avoid a very slow recovery through the index - which won't happen before 11.1 database Oracle.
Just to illustrate:
ALTER SESSION SET OPTIMIZER_FEATURES_ENABLE='10.2.0.4'; VARIABLE N1 NUMBER EXEC :N1:=2 SELECT /*+ GATHER_PLAN_STATISTICS */ C1, C2 FROM T1 WHERE C2 = :N1; no rows selected Elapsed: 00:00:00.00 SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY_CURSOR(NULL,NULL,'ALLSTATS LAST')); SQL_ID c7su63uw7nch6, child number 2 ------------------------------------- SELECT /*+ GATHER_PLAN_STATISTICS */ C1, C2 FROM T1 WHERE C2 = :N1 Plan hash value: 236868917 --------------------------------------------------------------------------------------------------- | Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers | --------------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1 | | 0 |00:00:00.01 | 3 | | 1 | TABLE ACCESS BY INDEX ROWID| T1 | 1 | 5957 | 0 |00:00:00.01 | 3 | |* 2 | INDEX RANGE SCAN | IND_T1_C2 | 1 | 5957 | 0 |00:00:00.01 | 3 | --------------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 2 - access("C2"=:N1)
Note in the above that the CHILD_NUMBER is now 2.
Continues:
EXEC :N1:=99 SET TIMING ON SELECT /*+ GATHER_PLAN_STATISTICS */ C1, C2 FROM T1 WHERE C2 = :N1; 10000 rows selected. Elapsed: 00:00:05.31 SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY_CURSOR(NULL,NULL,'ALLSTATS LAST')); SQL_ID c7su63uw7nch6, child number 2 ------------------------------------- SELECT /*+ GATHER_PLAN_STATISTICS */ C1, C2 FROM T1 WHERE C2 = :N1 Plan hash value: 236868917 --------------------------------------------------------------------------------------------------- | Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers | --------------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1 | | 10000 |00:00:00.02 | 1783 | | 1 | TABLE ACCESS BY INDEX ROWID| T1 | 1 | 5957 | 10000 |00:00:00.02 | 1783 | |* 2 | INDEX RANGE SCAN | IND_T1_C2 | 1 | 5957 | 10000 |00:00:00.01 | 690 | --------------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 2 - access("C2"=:N1)
The CHILD_NUMBER is always 2.
Continues:
EXEC :N1:=1 SET AUTOTRACE TRACEONLY STATISTICS SELECT /*+ GATHER_PLAN_STATISTICS */ C1, C2 FROM T1 WHERE C2 = :N1; 990000 rows selected. Elapsed: 00:00:16.91 Statistics --------------------------------------------------- 0 recursive calls 0 db block gets 175927 consistent gets 0 physical reads 0 redo size 21958348 bytes sent via SQL*Net to client 726508 bytes received via SQL*Net from client 66001 SQL*Net roundtrips to/from client 0 sorts (memory) 0 sorts (disk) 990000 rows processed SET AUTOTRACE OFF SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY_CURSOR('c7su63uw7nch6',2,'ALLSTATS LAST')); SQL_ID c7su63uw7nch6, child number 2 ------------------------------------- SELECT /*+ GATHER_PLAN_STATISTICS */ C1, C2 FROM T1 WHERE C2 = :N1 Plan hash value: 236868917 --------------------------------------------------------------------------------------------------- | Id | Operation | Name | Starts | E-Rows | A-Rows | A-Time | Buffers | --------------------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1 | | 990K|00:00:01.63 | 175K| | 1 | TABLE ACCESS BY INDEX ROWID| T1 | 1 | 5957 | 990K|00:00:01.63 | 175K| |* 2 | INDEX RANGE SCAN | IND_T1_C2 | 1 | 5957 | 990K|00:00:00.68 | 67932 | --------------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 2 - access("C2"=:N1)
The foregoing is the execution plan for CHILD_NUMBER 2 - notice that this time he reports 990 000 recovered lines, it's the execution that was used - adaptive cursor sharing plan do not have take effect and force the re-evaluation of the implementation plan - implementation plan has NOT been changed for a full table scan. That's the risk you take if you allow histograms on columns that have an uneven distribution of values and bind variables are used in the WHERE clause that refers to the column.
Charles Hooper
Co-author of "Expert Oracle practices: Oracle Database Administration of the Oak Table.
http://hoopercharles.WordPress.com/
IT Manager/Oracle DBA
K & M-making Machine, Inc. -
Hello
What is the difference between literal and bind variables?
What happens if I use
literal variable has.
variable b.bind
who is suggested?
Kind regards
KKKThere are two phases of any SQL performance.
1. analysis (check Oracle this SQL syntax, also generates the implementation PLAN)
2. execution (the real execution takes place)Below, SQL.
Select * from emp where empno = 1234;
I used literal in the SQL above.
For each SQL type similar (average for empno modified value) oracle must analyze the SQL for each performance.
Select * from emp where empno =: v_emp_no;
I used the bind variable in the SQL above.
In the oracle SQL above needs to analyze once, next time ehen this SQl will be executde with the value of the bound different variable, oracle will use the old execution PLAN and analysis will be not not happed. It will be a little fast.
Also variable binding instead of literal use reduced use shared pool.
HTH
Best regards
oratest -
There are advanced settings for VM - VM affinity rules?
Hello world
First time post, but I have found extremely useful forums in search engine results so thought I should get involved as much as I can.
Anyway, I was asked a question about the rules of affinity, and I was not able to find the answer anywhere, so I was hoping someone might be able to point me in the right direction please.
My client gave me a list of VMs that are 'pairs' - by that I mean that they both the same, but act is turned on and the other is used only if the virtual direct machine is not reachable. There is nothing intelligent power which, as grouping or well HA within the OS.
We asked me to make sure the pair of VM could not be fed by the same ESXi host, thus following the documentation for VMware, I created a virtual-VM affinity DRS machine rule. I was asked to test it, and honestly, it works a treat. However, the result is not desired. Unfortunately, I can not give too much information because of policies, but I'll try my best to explain the whole upward and deliver.
The rule stops two virtual machines are hosted on the same ESXi host at
VM1 is the direct server, VM2 is the backup server
Both of the above are in the relevant rule
There are 8 hosts in the cluster
HA and DRS are enabled on the cluster
ESXi version 4.1
If I manually start a vMotion VM2, send to the host who currently hosts VM1, it seems to happen: VM2 vMotion gets 78% > > DRS Rules are evaluated > > VM1 is vMotion had to a new host > > VM2 vMotion ends when VM1 is off the host
However, I am told that the customer would have preferred that the VM2 vMotion fails, or the vMotion process automatically sends elsewhere, rather than invoke a VM1 vMotion.
I'm not quite sure what is happening in the case of a real event of HA, I'm sure I read that HA not take account of the DRS Rules? The foregoing only happens because it is a manual vMotion? Or y at - it a better method that I forgot?
Thank you
Paul
Unfortunately, as you use vSphere4.1, you're out of look about the DRS control over an HA event, it's a feature of 5.x
If you do a manual vMotion then you are effectively denying your rules of affinity of DRS, until she physically check the rule during the migration. It's as good as it gets.
-
Automate adding to DRS affinity rule
Is it possible to add automatically as a new virtual machine created in a specific to his Rule DRs Cluster?
Here we have 2 rules of affinity in the same cluster and all VMV that would be created it needs to adhere to a rule.
To change the rule:
game-drsrule-rule (get-drsrule-cluster (cluster-get "Mycluster") - name "MyRule")-VM $MyVM - Enabled $true
Everything is possible with PowerCLI
Seriously, you want to detect the virtual machines in a cluster that are not in a rule of DRS, correct?
When you detect VMs DRS article they should be added?
-
Hello
At one point in the upgrades of the Mavericks with El Capitan, broken rules in Apple Mail.
I used to have a rule: If the [email protected] message arrives, copy it into an IMAP folder - so I can see it on my devices - and move it to my local folder for xyz.com
It has worked well for years. Now what's happening is the position, the rules of the switch and since that movement occurs, the copy is not.
I tried to delete and re-create the rules, but they always return to move before copy as soon as you close the window. When you return to Edit, Move is the first.
Is there an action Applescript or automator can I run instead of the rule to restore the functionality I need?
If these are two separate rules, mail-> Preferences-> drag window rules the rules in the correct order. Execution is top at the bottom of this window.
-
SRP527W setting DHCP address and source firewall rules
In my quest to find a decent ADSL router for VoIP, I found the SRP527W and so far it has been the best performer of a range of boxes from netgear, thomson, and zyxel. However, I have two questions:
(1) how to troubleshoot DHCP leases on the LAN address
(2) how to specify source ip in the firewall rule
Note:
I currently have 1 computer on the LAN, VLAN1 interface
* 192.168.15.100
and
2 IP phones on the LAN, VLAN100 interface
* 192.168.100.100
* 192.168.100.101
Address three assigned by the DHCP server lease times with approximately 20 days.
I would like to repair the three devices DHCP leases, for example if some port forwarding rules can be made with confidence that the rules will not point to another device in the future.
from PVC0-> 192.168.15.100, Port 3389 for remote desktop
of PVC0-> 192.168.100.100 ex.port 5881 to int.port 80 for voip phone web-gui
from PVC0-> 192.168.100.101 ex.port 5882 to int.port 80 for voip phone web-gui
Ideally, I would like the rules to act like that, limiting myself only to access these ports (from my remote site)
PVC0 interface where the source is ip 12.34.56.78-> 192.168.15.100, Port 3389 for remote desktop
PVC0 interface where the source is ip 12.34.56.78-> 192.168.100.100 ex.port 5881 to int.port 80 for voip phone web-gui
PVC0 interface where the source is ip 12.34.56.78-> 192.168.100.101 ex.port 5882 to int.port 80 for voip phone web-gui
I hope that makes sense, I appreicate any help you can give.
Kind regards
Paul
Hi Paul,.
Thank you for using the Cisco support community.
With regard to two questions:
1. Yes - it is possible to configure static DHCP assignments. Use the DHCP Server rule configuration page and click the 'Show DHCP booking' button to assign.
2. Unfortunately, it is not possible to configure rules to address source for the SRP520 list. (This is possible on the SRP540 for further reading).
Kind regards
Andy
Maybe you are looking for
-
Playing audio from inside of a state machine without stopping execution
I created a state machine that acquires and analyzes the input signal and the state transitions based on triggers found in the breast of this signal. In a particular State, I need to read a pre-recorded file (right now I'm just using a file .wav for
-
Can a RMT-DSLR1 for NEX - 5 turn video power?
I understand / use the RMT-DSLR1 remote for pictures with my digital camera NEX-5; However, I would also like to activate records video remote on/off. Is this possible? Thank you very much. Stephen
-
Help: Update Manager 5.1 is not visible on the main site!
HelloOur VMware environment, I have two sites - primary and secondary. When I was working to update the profiles of the host, I logged in the Update Manager. At the time when I logged in, update redirected the secondary site manager. I tried to dig i
-
Freshly installed and already ongoing enforcement issues
HelloJust finished installing vRealize Automation device 6.2.1.0 and get the page of connection present. After login, the view all page opens with an empty list of tenants. I then try to configure the former tenant, but I'm not sure what to enter in
-
Whenever I put a stroke on an object, it's size changes, and when I increase the size of stoke, continues to increase the size of the object.I am attaching some pictures where you can see the window of transformation with different sizes.