[OpenIndiana-discuss] Amazon EC2 and OpenIndiana

Alex Smith (K4RNT) shadowhunter at gmail.com
Wed Nov 10 20:13:21 UTC 2010


So I can create a ZFS mirror on my local machine, or should I use one
of the instance-storage pre-existing AMIs and move to EBS?

On Wed, Nov 10, 2010 at 14:09, Gary <gdriggs at gmail.com> wrote:
> Here's a brief document I wrote with the assistance of the previously
> referenced PDF -- note that the command used do require having
> Amazon's EC2 and ELB management tools installed and in your path.
> Also, pfexec may be substituted for sudo, mount locations changed,
> different types/sizes of pools, etc. It's just a sample walkthrough...
>
>
> HOWTO create a ZFS mirror on OpenSolaris with Amazon Elastic Block Store volumes
>
> set up your environment
>
> $ cat ~/.bash_profile
>
> if [ -f ~/.bashrc ]; then
>        . ~/.bashrc
> fi
>
> EC2_CERT=$HOME/.ec2/cert-FPGAG6000DYMT5SPWUS4CNMGVND3WF7Y.pem
> EC2_PRIVATE_KEY=$HOME/.ec2/pk-FPGAG6000DYMT5SPWUS4CNMGVND3WF7Y.pem
> PATH=/usr/gnu/bin:/usr/bin:/usr/X11/bin:/usr/sbin:/sbin:/usr/local/bin:/opt/ec2/bin:/opt/ec2/sbin:/opt/elb/bin
> MANPATH=/usr/gnu/share/man:/usr/share/man:/usr/X11/share/man
> PAGER="/usr/bin/less -ins"
> AWS_ELB_HOME=/opt/elb
> EC2_HOME=/opt/ec2
> JAVA_HOME=/usr/java
> export PATH MANPATH PAGER AWS_ELB_HOME EC2_HOME JAVA_HOME EC2_CERT
> EC2_PRIVATE_KEY
>
>
> look at your instances, note their zone
>
> $ ec2-describe-instances
> RESERVATION     r-7ef60316      164967591565    default
>
> INSTANCE        i-86d861ee      ami-e56e8f8c
> ec2-XXX-XXX-XXX-XXX.compute-1.amazonaws.com
> domU-XXX-XXX-XXX-XXX.compute-1.internal       running gd      0
>       m1.small        2009-10-21T16:47:10+0000        us-east-1a
> aki-1783627e    ari-9d6889f4            monitoring-enabled
>
> RESERVATION     r-eb78b183      164967591565    default
>
> INSTANCE        i-7fce5417      ami-e56e8f8c
> ec2-XXX-XXX-XXX-XXX.compute-1.amazonaws.com
> ip-XXX-XXX-XXX-XXX.ec2.internal   running gd      0
> m1.small        2009-11-12T17:37:48+0000        us-east-1d
> aki-1783627e    ari-9d6889f4            monitoring-enabled
>
>
> check volume availability, note their zone
>
> $ ec2dvol -H
> VolumeId        Size    SnapshotId      AvailabilityZone        Status
>  CreateTime
> VOLUME  vol-d18c75b8    16              us-east-1d      available
>  2009-11-12T17:39:17+0000
> VOLUME  vol-19956c70    16              us-east-1a      available
>  2009-11-12T04:16:04+0000
> VOLUME  vol-d08c75b9    16              us-east-1d      available
>  2009-11-12T17:39:29+0000
> VOLUME  vol-dc8c75b5    16              us-east-1a      available
>  2009-11-12T17:38:45+0000
>
>
> create a script to attach volumes for the zone your instance resides in.
>
> $ more attach-vols
> #!/usr/bin/bash
> # usage: attach-vols instance-id starting-dev number-of-vols
> # instance to attach volume
> inst=$1
> # starting device number
> dev=$2
> # number of volumes to attach
> num=$3
> let count=0
> # get a list of available volumes
> for vol in `ec2-describe-volumes | egrep -i available | egrep -i
> us-east-1a | cut -f2`
> do
>    # attach the volume to the next device
>    echo "ec2-attach-volume -i $inst -d $dev $vol"
>    ec2-attach-volume -i $inst -d $dev $vol
>    # increment the device number
>    let dev=dev+1
>    let count=count+1
>    # if specified number have been attached then exit
>    if (( count == num ))
>    then
>        exit 0
>    fi
> done
>
> $ ./attach-vols i-86d861ee 2 3
> ec2-attach-volume -i i-86d861ee -d 2 vol-19956c70
> ATTACHMENT      vol-19956c70    i-86d861ee      2       attaching
>  2009-11-13T18:54:26+0000
> ec2-attach-volume -i i-86d861ee -d 3 vol-dc8c75b5
> ATTACHMENT      vol-dc8c75b5    i-86d861ee      3       attaching
>  2009-11-13T18:54:35+0000
>
> $ ec2-describe-volumes | egrep -i attached | cut -f2,3,4,5
> vol-19956c70    i-86d861ee      2       attached
> vol-dc8c75b5    i-86d861ee      3       attached
>
> find out what devices they've attached as (the first two are local EC2 volumes)
> then create a ZFS mirror, check its status and mount
>
> $ sudo format
> Password:
> Searching for disks...done
>
>
> AVAILABLE DISK SELECTIONS:
>       0. c7d0 <DEFAULT cyl 1274 alt 0 hd 255 sec 63>
>          /xpvd/xdf at 0
>       1. c7d1 <DEFAULT cyl 19464 alt 0 hd 255 sec 63>
>          /xpvd/xdf at 1
>       2. c7d2 <DEFAULT cyl 2088 alt 0 hd 255 sec 63>
>          /xpvd/xdf at 2
>       3. c7d3 <DEFAULT cyl 2088 alt 0 hd 255 sec 63>
>          /xpvd/xdf at 3
> Specify disk (enter its number): ^C
>
> $ sudo zpool create logs mirror c7d2 c7d3
>
> $ sudo zpool status
> Password:
>  pool: logs
>  state: ONLINE
>  scrub: none requested
> config:
>
>        NAME        STATE     READ WRITE CKSUM
>        logs        ONLINE       0     0     0
>          mirror    ONLINE       0     0     0
>            c7d2    ONLINE       0     0     0
>            c7d3    ONLINE       0     0     0
>
> errors: No known data errors
>
>  pool: mnt
>  state: ONLINE
>  scrub: none requested
> config:
>
>        NAME        STATE     READ WRITE CKSUM
>        mnt         ONLINE       0     0     0
>          c7d1p0    ONLINE       0     0     0
>
> errors: No known data errors
>
>  pool: rpool
>  state: ONLINE
>  scrub: none requested
> config:
>
>        NAME        STATE     READ WRITE CKSUM
>        rpool       ONLINE       0     0     0
>          c7d0s0    ONLINE       0     0     0
>
> errors: No known data errors
>
> $ df -k
> Filesystem           1K-blocks      Used Available Use% Mounted on
> rpool/ROOT/opensolaris
>                       8319892   3728123   4591770  45% /
> swap                   2093032       276   2092756   1% /etc/svc/volatile
> /usr/lib/libc/libc_hwcap3.so.1
>                       8319892   3728123   4591770  45% /lib/libc.so.1
> swap                   2092792        36   2092756   1% /tmp
> swap                   2092784        28   2092756   1% /var/run
> rpool/export           4591791        21   4591770   1% /export
> rpool/export/home      4591789        19   4591770   1% /export/home
> rpool                  4591848        79   4591770   1% /rpool
> mnt                  153796557        19 153796538   1% /mnt
> logs                  16385997        19  16385978   1% /logs
>
> _______________________________________________
> OpenIndiana-discuss mailing list
> OpenIndiana-discuss at openindiana.org
> http://openindiana.org/mailman/listinfo/openindiana-discuss
>



-- 
" ' With the first link, the chain is forged. The first speech
censured, the first thought forbidden, the first freedom denied,
chains us all irrevocably.' Those words were uttered by Judge Aaron
Satie as wisdom and warning... The first time any man's freedom is
trodden on we’re all damaged." - Jean-Luc Picard, quoting Judge Aaron
Satie, Star Trek: TNG episode "The Drumhead"
- Alex Smith (K4RNT)
- Murfreesboro, Tennessee USA



More information about the OpenIndiana-discuss mailing list