Symmetrix + ESXi

esxcli storage nmp satp rule remove -s VMW_SATP_ALUA –psp “VMW_PSP_RR” –vendor=”EMC”
esxcli storage nmp satp rule add -s “VMW_SATP_SYMM” –psp “VMW_PSP_RR” -O iops=1 -V “EMC” -M “Symmetrix” -e “Symmetrix Tuning”

How Valve (almost) defeated game piracy in Russia

If you look at PC/Mac gaming right now, you may certainly see two separate time periods of it: pre-Steam and post-Steam eras. When steam was not so popular in russia piracy was at its best: a lot of talented release groups, communities and even torrent-trackers were born to satisfy the demand in good and free pc games. This, of cause, relates to Mac gaming as well. A lot of people were “porting” windows games to OS X platform because it was fun, challenging, and rewarding experience. Portingteam, Paul the Tall, Steps to name a few. Some keep doing it even now, but you may clearly see the drop of demand in ported games, “repacks” for pc, e.t.c. Why? The answer is simple: Steam. Here is the picture of steam sale, offering Assassins Creed III for 3 $.

Many people no longer feel the need to download illegal copies, sometimes infested with trojans, or buggy repacks, or even much more buggy “ports” because prices are ridiculously low! Why bother if you can spend 3$ and get online multiplayer/achievements/save sync/god knows what else. Sure, brand new AAA games will cost you a little more but still steam has made low priced regional-locked releases of these games for the russians. What I’m trying to prove here is this: if you want to defeat piracy, try to make your product a little bit more affordable to the masses. Apple and Valve proved this point very well.

Checking change block tracking status of all the virtual machines

Right now I’m writing documentation regarding our virtual infrastructure. I had to find all the VMs with VMWare change block tracking enabled. Here is the way to do it, via PowerCLI:

Script Variables if ((Get-PSSnapin -Name VMware.VimAutomation.Core -ErrorAction SilentlyContinue) -eq $null) { try { Add-PSSnapin VMware.VimAutomation.Core -ErrorAction Stop } catch { Write-Host "Please install VMware PowerCLI" Return } } ### Connect to VirtualCenter Connect-VIServer -Server vcenter Get-VM * | Get-View | Sort Name | Select Name, @{N="ChangeTrackingStatus";E={$.Config.ChangeTrackingEnabled}} | export-csv -path "C:\Users\user\Desktop\cbtenabled.csv" #Disconnect from VirtualCenter Disconnect-VIServer -Server vcenter -Confirm:$false | Out-Null

Windows 10 Preview is available

Anyone who is interested in the technical preview can download it here.

As in any preview software this release has built in timebomb till April 2015.

I’ve managed to install it into one of the ESXi virtual machines to take a look.

Installation process hasn’t changed since vista days. It is still a old good winPE. Even aero style is in place.

Upon installation windows 8 alike wizard appears. But it seems like the whole process of customization works faster.

Fresh desktop:

Metro apps can now be run in windows. It is a welcome change if you ask me. Also notification area now in the bottom right corner.

This is somewhat between old good start menu and the horrific monstrosity of windows 8. As for me it is a good balance between tablet and desktop UI:

The overall os styling is a little bit more brighter. Seems like Microsoft is following Apple steps in this direction, but I’m glad that they are not changing the OS default font.

One of the amazing new features is desktop management. This feature is not new to linux or OS X but I’m happy to see it coming to the windows platform.

Unfortunately no new wallpapers or OS themes in this preview (hello Betta Splendens). I hope we will see a new graphics soon.

Netscaler TriScale Clustering with LACP

After so many attempts, and opening case at Citrix Support I’ve finally managed to build a fully functional triscale cluster. *The key point is: cluster backplane traffic and management traffic should flow via different physical interfaces! Otherwise you’ll encounter the situation when node joins cluster but its state stays “UNKNOWN” forever. *Other symptoms of this case are: unable to ping one cluster node from the other, no heartbeat traffic between nodes, e.t.c.

We had to install additional SFP adapters into our netscalers otherwise the solution was not functioning properly (no redundancy on the uplinks).


Steps I took so far:

set ns config – ipaddress nodeip – netmask nodemask add ns ip nodeip2 nodemask -type mip add route save ns config


The correct way to configure LACP is described in the citrix KB.

I’ve executed these commands on each node:

set interface 0/1 lacpMode Active -lacpkey 1 set interface 0/2 lacpMode Active -lacpkey 1 set interface 1/1 lacpMode Active -lacpkey 2 set interface 1/5 lacpMode Active -lacpkey 2

one the node, which is will be the cluster coordinator:

add cluster instance 1 add cluster node 0 –state ACTIVE –backplane add ns ip -type CLIP enable cluster instance 1 save config


Then, I’ve logged to the cluster IP (

add cluster node 1 –state ACTIVE –backplane 1/LA/2 add cluster node 2 –state ACTIVE –backplane 2/LA/2 save config

Logged into my second NetScaler ( using nsroot account and executed following commands:

join cluster –clip –password save config

join cluster –clip –password save config


For reference:

Citrix Netscaler Deployment Guide

Citrix Netscaler Clustering Guide (v2)