Through an enterprise agreement with Amazon Web Services, CNF is pleased to offer a subset of its standard software tools running in the AWS cloud on virtual machines.

Available Software

Fees

CNF will rebill the hourly cost of the running virtual computer to your CNF project/account. Charges are only incurred while the computer is in a running state (uptime) – once shutdown, no more charges are incurred until the computer is again booted. The hourly cost itself varies depending on the specifications (number of virtual CPUs, amount of memory) of the virtual computer. You will also incur one hour of machine up time for CNF computing staff to setup the machine.

For example, if you choose a virtual machine with a $2.50 / hour charge and the machine is up and running for 2 hours, you will be charged 1 hour setup time plus the two hours the machine is running, for a total of $7.50 .

CNF will also rebill the cost of any AWS Marketplace software.

AWS may also incur storage costs and data transfer costs. CNF will also rebill these costs. We do not expect normal disk usage to exceed $5/month. Data transfer costs from AWS to Cornell run $0.02 / GB. Data transfers to areas outside the Cornell network will be more expensive. There is no charge for data transfers from Cornell to AWS. As of 2024, AWS now charges for public IP addresses.

Getting Started

  1. Contact any CNF staff member
  2. Based on your memory, cpu, software, and cost requirements, CNF Computing will assemble an appropriate AWS virtual machine and set up a login account for you.
  3. CNF Computing will boot the virtual machine for you at an agreed upon time.
  4. At the agreed upon time, login via ssh and start computing. Remember, you are being charged for the uptime of the machine.
  5. Transfer your data off the machine.
  6. Shut down the machine.
  7. If you need the machine to be rebooted, please contact CNF Computing to arrange a time for the machine to be rebooted.
  8. Once you are completely done, please contact CNF Computing to delete the virtual machine.

How to Login

Logins are only available from the CNF Thin systems or CNF Windows systems. JetStream logins are additionally available from the public Internet.

You will receive an ssh private key for login.

Linux/Mac Commandline

Use the following Linux command to login from a Linux computer such as CNF Thin:

ssh -Y -i </path/to/private_key_file.pem> <username>@<ip_address>

Windows with Putty

  1. Download Putty . If you download the individual binaries, you will need both "putty" and "puttygen" .
  2. Start your X11 server. We recommend XMing .
  3. Use PUTTYGen to convert your ssh private key to a Putty key (from a .pem key to a .ppk)
    1. Open PUTTYgen
    2. Click "Conversions" and then click "import key"
    3. Find the key file sent to you by CNF Computing, select the key file, and click "Open"
    4. Click "Save private key" to save the key as a Putty key file (.ppk)
  4. Run Putty
    1. Go to Connection - SSH - Auth
    2. On the right where it says "Private key file for authentication", browse to the key you created with PUTTYgen.
    3. Go to Connection - SSH - X11 and check "Enable X11 forwarding"
    4. Go to Session, and for the Host Name, type in the ip address of the remote AWS computer.
    5. Click "Open".
    6. When prompted, enter in your AWS username. You will not be prompted for a password.

Using VNC for Better Graphical Performance and Redundancy

Running your session inside of VNC has two major advantages over just forwarding your application displays over X11:

  1. Better graphical performance – some applications, especially NetBeans, will not run very well unless run inside a VNC session.
  2. If your connection to the AWS server is interrupted, your applications are still there. Just reconnect and pick up where you left off.

Initial VNC Setup

  1. Login to the remote AWS server.
  2. Set your separate VNC password with the following command:

    vncpasswd

    Do not set a View Only password.

  3. Start your VNC server as follows:

    [centos@ip-10-92-204-76 ~]$ vncserver
    
    New 'ip-10-92-204-76.ec2.internal:1 (centos)' desktop is ip-10-92-204-76.ec2.internal:1
    
    Starting applications specified in /home/centos/.vnc/xstartup
    Log file is /home/centos/.vnc/ip-10-92-204-76.ec2.internal:1.log

    Make note of the display number output from the above command. In the above example, the display number is '1' ... denoted by the ':1' in the "desktop is" line of the output. 

  4. Determine the VNC port number. The VNC port number is 5900 + the display number. In the example above, this would be 5900 + 1 = port 5901 .
  5. Port forward VNC from your local computer to the remote system. There are several ways to do this:
    1. Start a new ssh session with using the -L option: EG -L 5901:localhost:5901

      ssh -L <portnumber>:localhost:<portnumber> -Y -i </path/to/private_key_file.pem> <username>@<ip_address>
    2. In the existing ssh session from Linux or Mac, type in the following characters:
      ~C
      This will bring up the ssh command prompt at which you can start the port forward:

      ssh> -L5901:localhost:5901
      Forwarding port
    3. Start a new Putty connection with the port forward in place:
      1. Expand Connection - SSH and select Tunnels
      2. For source port, enter in the port number you determined above
      3. For destination, enter in localhost:<port number>
        EG localhost:5901
      4. Click "Add"
    4. Add a port forward to your existing Putty session
      1. Click the icon at the top left of the Putty window
      2. From the menu, select "Change Settings"
      3. Go to COnnection - SSH - Tunnels
      4. For source port, enter in the port number you determined above
      5. For destination, enter in localhost:<port number>
      6. Click "Apply"

Connecting with VNC

  1. If you have not already done so, use the "Initial VNC Setup" instructions to start a VNC server.
  2. If you have not already done so, use the "Initial VNC Setup" instructions to add a port forward to your ssh/Putty session.
  3. Using vnc software of your choice, connect to: localhost:<port number>
  4. Enter in your VNC password.

Transferring Files

Except for JetStream computers, the lab transfer share is mounted as /cnflab , the same as on the CNF Conversion Computers and CNF Thin computers. Keep in mind disk space is limited on the Lab Transfer Share – do not use this share for large files. Instead, use SFTP to transfer files from any computer on the CNF network to the AWS conversion cloud. From the AWS conversion cloud, you can SFTP out to remote.cnf.cornell.edu or to jeol9500.cnf.cornell.edu for the JEOL9500 .

When using SFTP to connect into the AWS conversion cloud from CNF Thin, you will use a slightly modified version of the sftp command:

sftp -o "IdentityFile=/path/to/keyfile.pem" username@ip_address 


Windows

On Windows, we recommend using WinSCP .

  1. For the hostname, use the IP address of the AWS computer.
  2. For the username, use your AWS username.
  3. Do not enter in a password. Instead, click "Advanced"
    1. Go to SSH - Authentication
    2. For the Private Key file, use either the originally sent private key or your PUTTYGen converted private key.

How to Shut Down a Virtual Computer

Use the following command from a prompt on the virtual computer (type the command exactly as shown below... reversing the order or arguments may cause the command to not work):

sudo shutdown -h now


  • No labels