Archive

Archive for the ‘Storage’ Category

InfoWorld : Bringing the Cloud to the Data Center – On-Demand

Enterprises with growing data and multiple locations are facing challenges associated with managing the rapid growth of data and keeping employees connected. Do you need a solution that securely delivers read & write access to content shared across offices? If so, then you won’t want to miss this video about Nasuni’s Data Continuity Services. Nasuni delivers multi-site access to a shared storage repository in the cloud that is locally available at every office or location in your organization.

Moderator: Debra Bulkeley, Sr Managing Editor – IDG Enterprise

Featured Speakers: Chris Glew, Product Evangelist, Nasuni

Register here for Video link- Bringing the Cloud to the Data Center

Nasuni – How it Works : http://www.nasuni.com/how_it_works

Sharing CentOS Files with Remote Windows Systems- …

Although Linux is increasingly making inroads into the desktop market, its origins are very much server based. It is not surprising therefore that Linux has the ability to act as a file server. It is also extremely common for Linux and Windows systems to be used side by side both in home and business environments.

It is a common requirement, therefore, that files on a Linux system be accessible to both Linux, UNIX and Windows based systems over network connections. Similarly, shared folders residing on Windows systems must also be accessible from CentOS systems.

Windows systems share resources such as file systems and printers using a protocol called Server Message Block(SMB). In order for a Linux system to serve such resources over a network to a Windows system and vice versa it must, therefore, support SMB. This is achieved using Linux based technology called Samba. In addition to providing integration between Linux and Windows systems, Samba may also be used to provide folder sharing between Linux systems.

In this tutorial we will look at the steps necessary to share file system resources and printers on a CentOS system with remote Windows and Linux systems.

Read the tutorial here

SOURCE

Seeding Torrents with Amazon S3 and s3cmd on Ubuntu

Again a nice post by  . Hope its useful for some of you out there…

Amazon Web Services is such a huge, complex service with so many products and features that sometimes very simple but powerful features fall through the cracks when you’re reading the extensive documentation.

One of these features, which has been around for a very long time, is the ability to use AWS to seed (serve) downloadable files using the BitTorrent™ protocol. You don’t need to run EC2 instances and set up software. In fact, you don’t need to do anything except upload your files to S3 and make them publicly available.

Any file available for normal HTTP download in S3 is also available for download through a torrent. All you need to do is append the string ?torrent to the end of the URL and Amazon S3 takes care of the rest.

Steps

Let’s walk through uploading a file to S3 and accessing it with a torrent client using Ubuntu as our local system. This approach uses s3cmd to upload the file to S3, but any other S3 software can get the job done, too.

  1. Install the useful s3cmd tool and set up a configuration file for it. This is a one time step:
    sudo apt-get install s3cmd s3cmd --configure 

    The configure phase will prompt for your AWS access key id and AWS secret access key. These are stored in $HOME/.s3cmd which you should protect. You can press [Enter] for the encryption password and GPG program. I prefer “Yes” for using the HTTPS protocol, especially if I am using s3cmd from outside of EC2.

  2. Create an S3 bucket and upload the file with public access:
    bucket=YOURBUCKETNAME filename=FILETOUPLOAD basename=$(basename $filename) s3cmd mb s3://$bucket s3cmd put --acl-public $filename s3://$bucket/$basename 
  3. Display the URLs which can be used to access the file through normal web download and through a torrent:
    cat <<EOM web: http://$bucket.s3.amazonaws.com/$basename torrent: http://$bucket.s3.amazonaws.com/$basename?torrent EOM 

Notes

  1. The above process makes your file publicly available to anybody in the world. Don’t use this for anything you wish to keep private.
  2. You will pay standard S3 network charges for all downloads from S3 including the initial torrent seeding. You do not pay for network transfers between torrent peers once folks are serving the file chunks to each other.
  3. You cannot throttle the rate or frequency of downloads from S3. You can turn off access to prevent further downloads, but monitoring accesses and usage is not entirely real time.
  4. If your file is not popular enough for other torrent peers to be actively serving it, then every person who downloads it will transfer the entire content from S3’s torrent servers.
  5.  If people know what they are doing, they can easily remove “?torrent” and download the entire file direct from S3, perhaps resulting in a higher cost to you. So as a work-around just download the ?torrent URL, save the torrent file, and upload it back to S3 as a .torrent file. Share the torrent file itself, not the ?torrent URL. Since nobody will know the URL of the original file, they can only download it via the torrent.You don’t even need to share the .torrent file using S3.SOURCE

AWS – Migrate Linux AMI (EBS) using CloudyScripts

In a typical Amazon Web Services(AWS) Environment, Amazon Machine Images (AMIs) are strictly available in a certain region only. These AMIs cannot be moved from one region to another. Though the AMIs are shared within different Availability Zones of the same region. For this purpose, you can use a third party tool called as CloudyScripts.

CloudyScripts is a collection of tools to help you programming Infrastructure Clouds. The web-based tool is self explanatory and regularly updated. In case you find any bug, do not hesitate to email the owners right away.

Goto the CloudyScripts Copy AMI to different region tool.

AMI should be EBS-backed Linux AMI only. The AWS Access Key and Secret Key can be found at the Security Credentials page of your AWS Account. This information is unique to your account and can be misused. DO NOT share these details with anyone.

The key provided should be generated in the source and target region before using the tool. Provide the .pem key files.

AWS discourages use of “root” user for login into AWS EC2 Instances.

You may use different ssh users like, “ec2-user” for AWS Linux Instances or “ubuntu” user for Ubuntu instances.

Output will be displayed as:

Verify that the AMI is registered in the destination as Private to you i.e.owner.

If you opt to receive mail of the status, enter your email id in the status window.

The mail will be received as:

AWS EBS-Backed Instance Backup &Restore

Starting with the 2009-10-31 API, Amazon Web Services (AWS) has a new type of Amazon Machine Image(AMI) that stores its root device as an Amazon Elastic Block Store(EBS) volume. They refer to these AMIs as Amazon EBS-backed. When an instance of this type of AMI launches, an Amazon EBS volume is created from the associated snapshot, and that volume becomes the root device. You can create an AMI that uses an Amazon EBS volume as its root device with Windows or Linux/UNIX operating systems.These instances can be easily backed-up. You can modify the original instance to suit your particular needs and then save it as an EBS-backed AMI. Hence, if in future you need the the modified version of instance, you can simply launch multiple new instances from the backed-up AMI and are ready to-go.

Following are the steps to be performed for backup/restoring of AWS EBS instance into/from an AWS AMI. Also brief steps for deletion of AMI backup are noted for reference.
 

EBS-instance to EBS-backed AMI

  • Go to AWS Management Console and in the My Instances Pane, select the instance which has to be backed up.
  • Right click the instance and select option Create Image (EBS AMI).
  • In the Create Image dialog box, give proper AMI Name and Description. Click on Create This Image button.
  • The image creation will be in progress. This will take sometime depending upon the number & size of volumes attached to the instance. Click on View pending image link. It will take you to the AMIs pane.
  • The AMI will be in pending state. It is important to note that this AMI is private to the account and not available for AWS public use.
  • If you select Snapshots from the Navigation Pane, then you can see that EBS volumes attached to the instance will be backed up as too.
  • Once the backup is done, the AMI will be in available state.

 

Restore from backup AMI into instance

In case, the running instance needs to be restored, use the latest backup AMI. To launch an instance from this AMI, right-click the AMI and select Launch Instance option. The Launch Instance Wizard will be displayed, perform the usual configurations and a new instance will be created containing all the data & configurations done before backup.

 

Delete AMI & Snapshots:

  • To delete any AMI, Right-click it and select De-register AMI.
  • Remember, deleting AMI doesn’t delete the EBS volume snapshots. Click on Snapshots from Navigation pane, search & select the snapshot(s) to be deleted. Right-click on the snapshot(s) and select delete snapshot option.
 

References:

Create and Attach AWS EBS Volume to AWS EC2 -Linux

May 20, 2012 1 comment

Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides resizable compute capacity in the cloud. It is designed to make web-scale computing easier for developers. Amazon EC2 enables “compute” in the cloud.

Amazon Elastic Block Store (EBS) provides block level storage volumes for use with Amazon EC2 instances. EBS provides highly available, highly reliable storage volumes that can be attached to a running Amazon EC2 instance and exposed as a device within the instance. It persists independently from the life of an instance. These EBS volumes are created in a particular Availability Zone and can be from 1 GB to 1 TB in size.

Follow the below steps to Create, attach and mount EBS Volumes to launched EC2 instances:

Create the EBS Volume

Log into AWS Management Console and follow the below steps for all the each extra volume to be attached to instances. For example, let’s create and attach a 6GB EBS volume (for Oracle Alert Logs and Traces) to Database server.

• Choose “Volumes” on the left hand control panel:

• In the right-hand pane under EBS Volumes, click on ‘Create Volume’

• In Create Volume dialog box that appears:
Enter the size mentioned in table, keep availability zone same as that of Database instance and select No Snapshot and click on ‘Create’.

• This will create an EBS volume and once create is complete it will be displayed as

Attach Volume

• Select a volume and click on button to Attach Volume

• Select the instance for which EBS volume is to be attached. Also mention the mount point for the volume in device.
Here Instance is for database and mount device is /dev/sdf

• Once attached it will be displayed as

Mount the Volume

• Execute commands in the EC2 instance’s (Database Server) linux shell. As this is a new volume (with no data), we will have to format it
Run command:

mkfs -t ext3 /dev/sdf

(Replace text in blue with mount device used in previous step)

• Make a directory to mount the device.

mkdir /mnt/disk1

• Mount the device in newly created directory

mount /dev/sdf /mnt/disk1

(Replace text in blue as required)

• By default volumes will not be attached to the instance on reboot. To attach these volumes to given mount point every time on reboot, execute the following command

echo "/dev/sdf /mnt/disk1ext3 noatime 0 0" >> /etc/fstab"

(Replace text in blue as required)

Check attached volume by using command: df -h

Unmounting the volume

From the Elastic Block Storage Feature Guide: A volume must be unmounted inside the instance before being detached. Failure to do so will result in damage to the file system or the data it contains.

umount /mnt/disk1

Remember to cd out of the volume, otherwise you will get an error message

umount: /mnt/disk1: device is busy

Hope the above steps help you get into action in minutes.

In case you get stuck at any point, do comment below. I will be glad to help. 🙂

Installation and Setup of S3fs on Amazon Web Services

May 18, 2012 1 comment

FUSE-based file system backed by Amazon S3.

S3fs is a FUSE filesystem that allows you to mount an Amazon S3 bucket as a local filesystem. It doesn’t store anything on the Amazon EC2, but user can access the data on S3 from EC2 instance, as if a network drive attached to it.

S3fs-fuse project is written in python backed by Amazons Simple Storage service. Amazon offers an open API to build applications on top of this service, which several companies have done, using a variety of interfaces (web, rsync, fuse, etc).

Steps

These steps are specific to an Ubuntu Server.

  1. Launch an Ubuntu Server on AWS EC2. (Recommended AMI – ami-4205e72b, username : ubuntu )
  2. Login to the Server using Winscp / Putty
  3. Type below command   to update the existing libraries on the server.

sudo apt-get update

                       

4.Type command to upgrade the libraries. If any msg is prompted, say ‘y’ or ‘OK’ as applicable.
sudo apt-get upgrade


Once upgrade is complete, install the necessary libraries for fuse with following command

sudo aptitude install build-essential libcurl4-openssl-dev libxml2-dev libfuse-dev comerr-dev libfuse2 libidn11-dev libkadm55 libkrb5-dev libldap2-dev libselinux1-dev libsepol1-dev pkg-config fuse-utils sshfs

 If any msg is prompted, say ‘y’ or ‘OK’ as applicable.

        

 5. Once all the packages are installed, download the s3fs source (Revision 177 as of this writing) from the Google Code project:

6.Untar and install the s3fs binary: (Run each command individually)

tar xzvf s3fs-r177-source.tar.gz
cd ./s3fs
sudo make
sudo make install

7.  In order to use the allow_other option (see below) you will need to modify the fuse configuration:

sudo vi /etc/fuse.conf

 And uncomment the following line in the conf file: ( To uncomment a line, remove the  ‘#’ symbol )


 Save the file using command:  ‘Esc + : wq  ’

8. Now you can mount an S3 bucket. Create directory using command :

sudo mkdir -p /mnt/s3

Mount the bucket to the created directory

sudo s3fs bucketname -o accessKeyId=XXX -o secretAccessKey=YYY -o use_cache=/tmp -o allow_other /mnt/s3

Replace the XXX above with your real Amazon Access Key and YYY with your real Secret Key.

Command also includes instruction to cache the bucket’s files locally (in /tmp) and to Allow other users to be able to manipulate files in the mount.

Now any files written to /mnt/s3 will be replicated to your Amazon S3 bucket.

 WinScp – Verify mount directory

Check the wiki documentation for more options available to s3fs, including how to save your Access Key and Secret Key in /etc/passwd-s3fs.