September 17, 2019 Vignesh Sathiyanantham

In today’s data center industry there is a misconception about the storage snapshot as a Backup. The main one is storage snapshots are not backup, they are just point-in-time copies. It’s unclear from where the idea came from. Backup is a collection of data stored on (usually removable) non-volatile storage media for purposes of recovery in case the original copy of data is lost or becomes inaccessible; also called a backup copy. To be useful for recovery, a backup must be made by copying the source data image when it is in a consistent state. – The SNIA ( Storage…

August 31, 2019 Vignesh Sathiyanantham

In recent posts, we have discussed adding your AWS account to Nimesa to do the data protection. In this post, we will discuss application-consistent backups of your MySQL on EC2 instance. To know to install MySQL Server on Amazon Linux 2 on AWS Cloud click here Read here more about consistent, app-consistent, crash-consistent backup Nimesa supports pre and post script hooks to perform the specific operation before or after a backup, example if your Instance is running Oracle and you want to enable hot backup mode before performing backup you can write the script and upload to pre-script There is…

August 31, 2019 Vignesh Sathiyanantham

In this post, we will see how to install MySQL server on AWS EC2 Amazon Linux 2 and configure the security group to access from your desktop The Amazon Linux AMI is a supported and maintained Linux image provided by Amazon Web Services for use on Amazon Elastic Compute Cloud (Amazon EC2). It is designed to provide a stable, secure, and high-performance execution environment for applications running on Amazon EC2. It supports the latest EC2 instance type features and includes packages that enable easy integration with AWS. Amazon Web Services provides ongoing security and maintenance updates to all instances running…

August 27, 2019 Vignesh Sathiyanantham

In my previous post, we discussed the creation of IAM user and the privilege required to protect your AWS EC2 instances. In this post, we will discuss to register the AWS account with Nimesa. Open the Nimesa web console ( refer this post for the Installation of Nimesa in your AWS account ), and log in with the credential. Then Go to “Configuration settings” > “manage platforms” In the manage platform, click on Add platform Enter the unique friendly account nameAccess Key of the IAM userSecret key Nimesa will validate the credentials, and save it in MySQL database after encrypting…

August 18, 2019 Vignesh Sathiyanantham

In my previous blog, I discussed how to set up the ZFS File system in Ubuntu 18.04 and setup ZVOL for Microsoft SQL Server Databases In this post let’s discuss on how to set up the Disaster recovery plan for the Microsoft SQL Database with the ZFS replication, For that, I set up the Ubuntu 18.04 Instance in us-east-1 in availability zone us-east-1c , and ssh into the instance using the pem file Then I followed my post on ZVOL for MS SQL Database to install the ZFS on the AWS Linux Instance And then with the new volume, I…

August 18, 2019 Vignesh Sathiyanantham

When I am setting up the Disaster recovery plan for the MS SQL Databases in ZFS Volume, I faced permission issue while running ZFS send/receive command from a non-root account root@vigneshzfs:/home/vignesh# sudo zfs send sql-pool/disk1@aug18 | ssh ubuntu@10.7.8.25 zfs recv aws-pool/sql-pool-aug18 ubuntu@10.7.8.25’s password: cannot receive new filesystem stream: permission denied So my sender is vignesh and the receiver is ubuntu both are a non-root account On the sender side, I used these permissions sudo zfs allow -u vignesh send,snapshot,hold sql-pool And on the receiver side sudo zfs allow -u ubuntu compression,mountpoint,create,mount,receive aws-pool After setting up this permission I can send…

August 15, 2019 Vignesh Sathiyanantham

In this post, we will see how to install ZFS on Ubuntu and present a ZVOL through iSCSI protocol to a Windows Machine for SQL Database First I created a Linux Ubuntu x64 Virtual Machine and installed the Ubuntu 18.04 Server using the server iso file available in the Ubuntu website After installing the Ubuntu, configured the static IP and installed openssh-server sudo apt-get install openssh-server Then I proceed to install the ZFS File system in my mint ubuntu Install Software properties common sudo apt-get install software-properties-common First, you have to make sure that main, restricted, universe and multiverse software…

July 12, 2019 Vignesh Sathiyanantham

Recently we faced an issue in our product Nimesa Cloud Data protection, our QA Director raised a bug that Nimesa is listing two networks during Virtual Machine clone but while editing the VM in vSphere web client he was getting only one network. When I checked in the vSphere web client I can see one network as Uplink port group but in the manage object browser two networks are listed and there is no difference between them to identify that as an uplink port group and ignore while listing in the clone after scratching my head and wondered “ But…

April 19, 2019 Vignesh Sathiyanantham

  While testing our product Nimesa with Microsoft SQL Server 2016 on Microsoft Windows 2019 i hit with some scenarios my nodes in SQL cluster has some shadows, i wanted to check in all the machine and delete the shadows. What i did is, i wrote a small powershell script which connects to all the nodes in my test bed and run diskshadow command  delete shadows all  For that, First i need to enable the PowerShell Remoting on all the nodes ( My nodes are connected to active directory and all are part of Windows Failover clustering ) Enable-PSRemoting -Force…

January 18, 2019 Vignesh Sathiyanantham

One of our Nimesa customers get this error on Event Logs, CheckTokenMembership. hr = 0x80070005, Access is denied when he takes a consistent backup using Nimesa. We found out this error is from VSS Requestor, This happens when UAC(user account control) is active. Which blocks even the administrators group users from performing operation in admin mode. Right-click at the bottom of the Windows Server Start screen, select All apps and click Run.Enter regedit and click OK. The Registry Editor window opens.Expand HKEY_LOCAL_MACHINE > SOFTWARE > Microsoft > Windows > CurrentVersion > policies > system.Right-click EnableLUA, and then select Modify.In Value data, enter 0 and then click OK.  The following message displays:You must restart your computer to turn off User Account Control Click to restart this computer

January 8, 2019 Vignesh Sathiyanantham

Nimesa Software based Data protection and copy data management solution supports Microsoft SQL Server full backup and log backup, recently we got a customer request why Nimesa is skipping the Simple recovery model database during log backup Simple recovery model doesnt support log backups. Simple recovery model database automatically reclaims the log space to keep space requirements small, essentially eliminating the need to manage the transaction log space The following features are not supported by SQL Server if your database is in Simple recovery model Log shippingAlways On or Database mirroringMedia recovery without data lossPoint-in-time restores Under the simple recovery…

December 25, 2018 Vignesh Sathiyanantham

Storage capacity consumed by multiple unnecessary data copies costs businesses as much as $44 billion annually, according to IDC. It estimates that redundant copies of the same data ( copy data) account for more than 60% of enterprise disk storage capacity. The redundant copies are compounded by rational practices intended to protect the business with multiple separate copies of production data like full backups, disaster recovery copy, test and dev, data analytics All the extra storage comes at a cost, data storage isn’t cheap, businesses have to waste more money on unnecessary storage expenses. There are many Copy Data management…

November 19, 2018 Vignesh Sathiyanantham

Backup applications for the Virtualized environment back up the Virtual Machine at the image level and are not aware of what is going on inside the installed guest operating system. So before you back up your Virtual Machines you should ensure they are quiesced so they are in a consistent state to be backed up. Quiesce is to pause or alter a device or application to achieve a consistent state, usually in preparation for a backup. The quiesce operation is handled inside the guest OS, and for Windows VMs, the Volume Shadow Copy Service (VSS) handles this. If you don’t…

November 16, 2018 Vignesh Sathiyanantham

VMware Virtual Machine snapshots should not be used as a primary backup, Virtual Machine snapshots are good for the shorter period. you can create VM snapshot before applying hotfix and delete after successful patching. When VM snapshots are created the state of the virtual disk at the time the snapshot is taken will be preserved and all writes to the VMDK are redirected to a new delta disk file (The delta disk represents the difference between the current state of the virtual disk and the state that existed at the time the previous snapshot was taken), and the original VMDK…

July 31, 2018 Vignesh Sathiyanantham

If you’re looking into data protection solutions you’re probably have heard the phrase “3-2-1 backup”. You’ll hear it from most IT consultants, professionals as well as many backup vendors and admins. Every admin should have backups. This 3-2-1 principle works for any virtual environment regardless of the hypervisors you are running (VMware, Hyper-V or whatever). and it can effectively address any failure scenario Keep at least 3 copies of your data That includes the original copy and at least two backups. Keep the backed-up data on 2 different storage types The chances of having two failures of the same storage type…

July 7, 2018 Vignesh Sathiyanantham

Cloud Server/network outages are wrecking balls, and it can happen with a dominant market player like the Amazon Web Services (AWS), The latest is an extensive outage brought on by a human error at an AWS data center in Virginia. Many consider it to be the worst hit in four years. And in June 2016: The storms that battered Sydney also shook AWS services. An extensive power outage led to the failure of a number of Elastic Compute Cloud (EC2) instances and Elastic Block Store (EBS) volumes, many of which hosted critical workloads for big brands. The result was that…

January 28, 2018 Vignesh Sathiyanantham 29Comment

AWS Lambda lets you run code without provisioning or managing servers. You pay only for the compute time you consume – there is no charge when your code is not running. With Lambda, you can run code for virtually any type of application or backend service – all with zero administration. Just upload your code and Lambda takes care of everything required to run and scale your code with high availability. You can set up your code to automatically trigger from other AWS services or call it directly from any web or mobile app. In my last post, i wrote…

January 22, 2018 Vignesh Sathiyanantham 1Comment

Recently, An Indiana hospital paid a ransom of $55,000 to get rid of ransomware that had infected its systems and was hindering operations. when attackers breached the network of Hancock Health, a regional hospital in the city of Greenfield, Indiana. Hancock Health CEO Steve Long said the hackers are believed to be in eastern Europe and may have used a type of ransomware called SamSam, SamSam encrypted files and renamed them with the phrase “I’m sorry”, according to a local newspaper who broke the news. The hospital said that despite having backups it opted to pay the ransom demand of…

May 22, 2015 Vignesh Sathiyanantham 1Comment

VSS hardware provider can be initiate and test using DiskShadow Commands Open the Powershell and Enter Diskshadow PS C:\Users\Administrator> diskshadow Microsoft DiskShadow version 1.0 Copyright (C) 2013 Microsoft Corporation On computer: WIN-VigneshDev, 5/22/2015 12:06:35 AM DISKSHADOW> List the Hardware Providers DISKSHADOW> list providers * ProviderID: {74600e39-7dc5-4567-a03b-f091d6c7b092} Type: [2] VSS_PROV_SOFTWARE Name: Hyper-V IC Software Shadow Copy Provider Version: 1.0.0.0 CLSID: {3e02620c-e180-44f3-b154-2473646e4cb8} * ProviderID: {89300202-3cec-4981-9171-19f59559e0f2} Type: [4] VSS_PROV_FILESHARE Name: Microsoft File Share Shadow Copy provider Version: 1.0.0.1 CLSID: {fce59da7-7bac-40da-8d21-3e7311ba51cd} * ProviderID: {b57190af-4567-4dd0-ad8d51abd60b20d5 Type: [3] VSS_PROV_HARDWARE Name: Vignesh Test Provider Version: 6.2.9200.16384 * ProviderID: {b5946137-7b9f-4925-af80-51abd60b20d5} Type: [1] VSS_PROV_SYSTEM Name: Microsoft Software Shadow Copy…

January 6, 2015 Vignesh Sathiyanantham

Inconsistent Backup The oldest type of backup probably not consistent. The process of taking the backup was so simple, backup application starts at the beginning of a file structure and copies all of the data until it reaches the end, resulting in a backup (Inconsistent). The reason which can make this backup inconsistent is that if any user added/modified after a backup but before it completed that would result in an inconsistent backup; the files in the backup are not consistent. Mainly the volumes which have Random read and random writes application like databases these types of backups do not…

September 19, 2019 Vignesh Sathiyanantham

In ubuntu 18.04 PostgreSQL is running on the default directory /usr/lib/postgresql/ and the data directory is ‘/etc/postgresql/10/main’ To get the data directory you can run sudo -u postgres psql -c “show data_directory;” To change the data directory, first, stop the PostgreSQL service sudo service postgresql stop I mounted a ZFS volume through iSCSI protocol in my home directory /home/vignesh/pdata That will be my target directory so whenever I want to create a backup I can take the ZFS snapshot After mounting the FS, I changed to the owner to postgres vignesh@vignesh:~$ sudo chown postgres pdata Then modify the data_directory configuration…

September 19, 2019 Vignesh Sathiyanantham

Backup rotation/retention scheme is the how long the backup is retained on the media, many techniques have evolved over time to balance the data retention and the restoration costs. Grandfather-father-son is a very common scheme used in the backup retention strategy. In which there are three or more backup cycles such as daily, weekly and monthly. the daily backups are rotated on daily basis using FIFO mechanism, the weekly backups are rotated on a weekly basis and the monthly on a monthly or quarterly basis. Common example The hourly backup (son) are rotated on hourly with one promoted to father…

September 18, 2019 Vignesh Sathiyanantham

Amazon EBS enables users to backup volumes ar any time using EBS snapshots, Snapshots retain the data from all completed I/O operations, allowing you to restore the volume to its exact state at the moment before backup (referred to as crash-consistency). Previously when we take the snapshots of all the disks of an EC2 instance, we need to call create snapshot API for all disks recently Amazon introduced the Create snapshot of the Instance ( creates the snapshot of all the volumes attached to the instance) This is something similar to the on-premise storage array feature of Consistency group for…

August 31, 2019 Vignesh Sathiyanantham

The default user for Amazon Linux 2 is ec2-user, first, we need to create a password for the ec2-user [ec2-user@ip-164 ]$ sudo passwd ec2-user Changing password for user ec2-user. New password: Retype new password: passwd: all authentication tokens updated successfully. Then enable the password authentication for the Login in the SSHD config file sudo nano /etc/ssh/sshd_config Find the PasswordAuthentication no and set it to yes Restart the SSHD Service sudo systemctl restart sshd

August 24, 2019 Vignesh Sathiyanantham

When I was writing the base code in Spring boot for my RESTifying the ZFS APIs project, I was looking for some way of throwing the exception to the user with HTTP error code. I found a way to handle it by using ResponseStatusExceptionResolver. ResponseStatusExceptionResolver is introduced with Spring 3, and Its main responsibility is to use the @ResponseStatus annotation available on custom exceptions and to map these exceptions to HTTP status codes. @ResponseStatus annotation I created a ValidationException class extending the RuntimeException class with a constructor. This is how my code looks like package in.asvignesh.zfsservice.controller; import org.springframework.http.HttpStatus; import org.springframework.web.bind.annotation.ResponseStatus;…

August 24, 2019 Vignesh Sathiyanantham

I am working on a new hobby project RESTifying the ZFS APIs, Earlier I was using play framework for my REST projects, now started using SpringBoot While RESTifying the ZFS API one of the API formats is like @GetMapping(path = {“/”, “/{poolname}”, “/{poolname}/{volumename}”}, produces = “application/json”) / will give all the pool name and volumes, /poolname will give all the pool name and volumes of that particular pool, /poolname/”poolname/volumename” should give the pool and the volume. The volume name is in the format {poolname}/{volumename}, so I want to provide the slash with URL encoded but given restful method below gives…