27 August, 2013

What is the VMware vSphere Storage Appliance

A: Not every IT environment is large enough to need a SAN. Some businesses don't have the budget to afford one or the in-house experience to use one effectively. However, almost every environment that plans a move to virtualization also desires that move to include high availability for VMs.
 
This use case is one of the primary reasons for the release of VMware's vSphere Storage Appliance. This appliance is intended to be a collection of either two or three ESXi hosts that store their VMs within locally attached storage. Using built-in replication, VMs created atop one host are automatically available atop other hosts as well. This replication enables VMware's high availability functionality to migrate VMs from a failed host to a working host, without the need for shared storage on a SAN.
 
 
Q: What are the important limitations in the VMware vSphere Storage Appliance?
A: With the release of vSphere 5.0, VMware also quietly released a product called the vSphere Storage Appliance (VSA). This product intends to provide failover capabilities for VMs, but without requiring shared SAN storage. It's intended for use by smaller IT environments that either can't afford a SAN or lack the experience to use one effectively.
 
Although the VSA can indeed enable a high availability-like experience atop locally attached storage via its built-in replication, it does so with some significant costs. Consider the following limitations carefully:
 
·         The VSA doesn't support memory overcommit.
·         The VSA, once installed, prohibits adding additional storage to a VSA cluster.
·         The VSA creates a useable partition that's equivalent to the amount of disk space in the server that contains the least quantity of disk space.
·         The VSA isn't intended to be installed onto existing ESXi hosts; it prefers a "green field" installation onto essentially unconfigured hardware. ESXi hosts can't run VMs before creating the VSA cluster.
·         The VSA, in combination with VMware's RAID requirements for locally attached storage, requires a 75 percent storage overhead for redundancy. This requirement means only 25 percent of deployed storage is actually available for use.
·         The VSA can be configured in a two- or three-server configuration that, once installed, can't be altered.
·         VMware suggests you don't run vCenter Server within VSA as a VM because the loss of a datastore could prevent access to the VSA Manager. As a result, an additional and separate physical computer or VM is required to run vCenter Server and the VSA Manager.
·         The VSA reserves 33 percent of CPU and memory resources on a three-host cluster and 50 percent of CPU and memory resources on a two-host cluster for high availability admission control.
 
 
Q: Can I install VMware vSphere Storage Appliance without EVC Enabled?
 
A: VMware's vSphere Storage Appliance (VSA) is a new product, released at the same time as vSphere 5.0, that's intended to provide an alternative virtual infrastructure for IT environments that don't have a SAN. As an appliance, VMware recommends installing this product onto hosts that are essentially unconfigured.
 
One component of the VSA's installation checks to see if each host can be a part of the same cluster that has VMware Enhanced vMotion Compatibility (EVC) turned on. Although this verification is extremely important for production environments, EVC isn't supported when evaluating the VSA's software atop VMware Workstation. As a result, a slight hack is required to disable the EVC verification.
 
To disable the EVC check, navigate to C:\Program Files\VMware\Infrastructure\tomcat\webapps\VSAManager\WEB-INF\classes and open the file titled dev.properties. Modify the line evc.config=true to evc.config=false.
 
 
Q: Can I migrate services from my Windows Server x cluster to a Windows Server 2012 R2 cluster?
 
A: Microsoft provides an n-2 cluster migration support. This means the migration of clustered services is supported from two versions back.
 
This means that for a Windows Server 2012 R2 target, cluster then services can be migrated from Windows Server 2012 clusters (n-1) and from Windows Server 2008 R2 clusters (n-2). It's important to note that migrating cluster services doesn't copy storage--when migrating services, the cluster storage is moved from one cluster to another. Only the resource configurations, which are effectively registry values, are moved from the source to the target cluster.
 
If you have an older cluster, for example Windows Server 2003 R2, and want to move to Windows Server 2012 R2, then one option is to stand up a temporary Windows Server 2008 R2 cluster and use that as an interim hop for the migration of services to Windows Server 2012 R2.
 

Backup Restore in sharepoint 2013 + Backup and Recovery Tools for SharePoint

A good backup is an excellent approach to prevent data loss & repair database in most of the data corruption cases.

If your backup is not well structured then it will not help you to recover your data at any cost.

Back up a site collection by using Windows PowerShell
Backup-SPSite -Identity <SiteCollectionGUIDorURL> -Path <BackupFile> [-Force]

Example: Backup-SPSite -Identity http://sharepointamol/sites/planet -Path D:\planet.bak -force

Along with this, we can use the following parameters with respect to our requirements:

-Force: overwrite a previously used backup file

-NoSiteLock: keep the read-only lock from being set on the site collection while it is being backed up

Restore site collection by using windows PowerShell
Restore-SPSite -Identity <SiteCollectionURL> -Path <BackupFile>  -Force

Back up a Farm in SharePoint 2013 by using windows PowerShell
Backup-SPFarm -Directory <BackupFolder> -BackupMethod {Full | Differential} [-Verbose]

<BackupFolder> is the path of a folder on the local computer

Backing up sites, lists, and libraries
Export-SPWeb –Identity “http://SharePointamol/Planets/SharePoint2013” –Path “E:\Backups\SharePointPlanetSite.cmp”

Import List: Using Powershell
Import-SPWeb http://sharepointamol.com -path E:\backup\planets.cmp -updateversions overwrite

Backup and Recovery Tools for SharePoint

DocAve Backup and Restore for Microsoft® SharePoint Backup

A Simple Way to Restore Individual SharePoint Documents

Performance best practices for SharePoint backup and restore operations

If you have any queries/questions regarding the above mentioned information then please let me know, I would be more than happy to help you as well as resolves your issues, Thank you.

22 August, 2013

Sign-in didn't work, you didn't get signed in. It might be your sign-in address or logon credentials

Problem description:
Users getting ‘Sign-in didn’t work’ error while login on Lync.

Error message:
Sign-in didn't work, you didn't get signed in. It might be your sign-in address or logon credentials, so try those again. If that doesn't work, contact your support team.

Most probable root cause:
Look like error is very simple and user might not using proper credential that why Sign-in error occurred. Most of the cases users are using their proper credential however continuously getting above error. Means credential is not the only culprit. When I dig into this then I got the actual reason behind the error.

Resolution: There are multiple resolution for this, let me share one by one:

First solution:
First step you can always check the login credential including password. Like password expired or recently changed etc.
Format:
Sign-in name: amolghuge@mydomain.com
User Name: mydomain\amolghuge
Password: *************

Second solution:
Go to Active Directory and find the user and see whether user has multiple accounts or not. Multiple accounts (separate account in each domain).

-If two or more accounts are found then, Open Lync Management Shell and run below cmdlet.

PS C:\> Get-CsUser -Identity "Ilag, Balu"

You will see the result with all enable account with above display name.

-Just keep required ID and disable rest.

-Some cases alias will be same for multiple accounts, if so then change the one of the alias name and wait to sync.

-Still getting same error message then disable the Lync account through Lync Control Panel. And enable after 30 minutes to update account information.

Note: Disable account through Lync Control Panel only. Do not disable via Lync Management shell otherwise user will lose their buddy list.

In case of any queries/questions regarding the above mentioned information then please let me know, Thank you.

Product applies:

Lync Server 2010

Problem occurred while contacting to the server. If the problem continues, contact your administrator- SharePoint 2010

Problem description:
Not able to edit office documents on SharePoint site

Error Message:
Problem occurred while contacting to the server. If the problem continues, contact your administrator.

Resolution:
Please refer the following steps to resolve this issue:

1.   Click 'Select Reinstall Mode'
2.   Uncheck “Repair all detected reinstall problems”.
3.   Check “Force all files to be reinstalled, regardless of checksum or version”.
4.   Check “Verify that required user registry entries are present”.
5.   Check “Verify that required machine registry entries are present”.
6.   Check “Validate shortcuts”.
7.   Press OK
8.   Click REINSTALL

If you have any queries/questions regarding the above mentioned information then please let me know, Thank you.

Problem applies to:
SharePoint Server 2010
SharePoint Foundation 2010

Reference:

http://microsoftdll.com/2013/06/how-to-fix-webfldrs-msi-error

Fetch current login user data from active directory using JavaScript in SharePoint

Problem Description:
Fetch current login user data from active directory using JavaScript in SharePoint.

Resolution:

<script type="text/javascript">
/* getUserName function is use to find Current System User */
function getUserName()
{
 var wshNetwork = new ActiveXObject("WScript.Network");
 var userName = wshNetwork.UserName;
 return userName;
}

function getAD(userName)
{
 //var name = userName.split(".");
 objConnection = new ActiveXObject("ADODB.Connection");
 objConnection.Provider="ADsDSOObject";

 objConnection.Open("ADs Provider");

 objCommand = new ActiveXObject("ADODB.Command");
 objCommand.ActiveConnection = objConnection;

 objCommand.CommandText = "SELECT sAMAccountName, givenName, SN, mail,physicalDeliveryOfficeName FROM 'LDAP://DomainName.com/DC=Domain,DC=com' WHERE objectCategory='user' and sAMAccountName = '"+userName+"'";

 /* Next up is the command itself.*/
 objRecordSet = objCommand.Execute();

 /* Then we execute the command */
 /* Once executed, the command will return an enumeration of the results.*/

 var userMail,lastName,firstName;
 if (objRecordSet.RecordCount == 1) {
  objRecordSet.Movefirst;
  userMail = objRecordSet.Fields("mail").value;
  firstName = objRecordSet.Fields("givenName").value;
  lastName = objRecordSet.Fields("sn").value;
  samaccountname= objRecordSet.Fields("samaccountname").value;
  physicalDeliveryOfficeName= objRecordSet.Fields("physicalDeliveryOfficeName").value;
 }
 else
 {
  userMail = "";
  firstName = "";
  lastName = "";
  physicalDeliveryOfficeName = "";
 }
 objConnection.Close;
 return userMail+";"+firstName+";"+lastName+";"+physicalDeliveryOfficeName;
}

var AD = getAD(getUserName()).split(";");

var mail = AD[0];
var firstName = AD[1];
var lastName = AD[2];
var Office = AD[3];
</script>


References:
In objCommand.CommandText make connection string properly.

In Select query use column name of active directory from which you want data.
Refer this link for column name:

Product Applies To:
·         SharePoint Server 2010
·         SharePoint Foundation 2010
·         SharePoint Server 2013


Feel free to revert in-case of any query...