Overview
Getting an accurate view of your infrastructure needs is useful when planning a cloud migration. Most datacenter operations groups have a good view of their overall storage utilization from various SAN and virtualization management tools, but relying on these aggregated data points often causes teams to underestimate the storage needs of their applications in the cloud.
When taking an application-centric approach to cloud migration, getting the resource utilization from each individual server gives you a more accurate view of each application’s resource requirements in the cloud and ignores the trickery of thin-provisioning from SAN tools. This allows you to confidently plan data replication time, or other migration metrics on an app-by-app basis.
machine_stats
in a cron
job or Scheduled Task and synchronize your data on a daily basis to Tidal
Migrations.Windows
Introduction
This is a simple and effective way to gather machine stats (RAM, Storage,
CPU) from a Windows Server environment. It uses
WinRM
to Invoke-Command
across your servers, creating a JSON file to securely send
to your Tidal Migrations instance using the tidal command.
Requirements and Dependencies
Prior to the steps on syncing your hypervisors, be sure to have the below dependencies setup:
- To get started you will need to have Tidal Tools installed. You can check out Getting Started with Tidal Tools guide on how to install it.
- You will need WinRM enabled across your environment for this.
- The scripts needed for this process can be found in Machine Stats for Windows GitHub repository.
Running the Script
Start syncing your servers with Tidal Migrations, by running the script:
runner.ps1
.
-
It will prompt you to set your username.
-
Then, run the script:
save_password.ps1
and enter your password when prompted. This will save your credentials securely in a text file. -
Save a list of the server hostnames that you would like to sync in a file called: servers.txt. The data of these servers will be shown in a table, with numerical values rounded to the nearest second decimal.
And there you have it! Your servers will be synced to Tidal Migrations.
Unix-like systems
Introduction
Machine Stats for Linux/Unix leverages Ansible to gather facts in a cross-platform way.
Requirements and Dependencies
Prior to the steps on syncing your Unix/Linux machines, be sure to have the below dependencies setup:
- To get started you will need to have Tidal Tools installed. You can check out Getting Started with Tidal Tools guide on how to install it.
- You need to install Python on your local workstation and on the machines you need to gather stats from. Please refer to the Machine Stats for Unix-like systems technical documentation for installation instructions.
- The scripts needed for this process can be found in Machine Stats for Unix-like systems GitHub repository.
Running the Script
-
Create a
hosts
file in the current directory. -
Add connection strings in the form of
ssh-user@ip-address
orssh-user@domain
to thehosts
file one per line If thessh-user@
part is omitted, then the current user name is used. -
If you need to use a custom SSH identity file for some particular host, provide it as the following:
my-user@example.com ansible_ssh_private_key_file=path/to/key-file.pem
-
Execute
runner
and pipe its output to Tidal Tools:$ ./runner | tidal sync servers
For more details on configuration and usage, please check Machine Stats for Unix-like systems technical documentation.