Oracle has joined the cloud revolution with several cloud delivery offerings: IaaS, PaaS, DBaaS, and SaaS. For a high level overview of cloud computing in general, please refer to my article “Cloud Computing 101: Offsite IT Infrastructure and Remote Environment Management.” Oracle sells a lot of business software, infrastructure software, servers, operating systems and of course their flagship Oracle database product. Most of these products or their functionality are now available via their cloud service.
The Oracle Cloud Iaas, Infrastructure as a Service, offering is very interesting. In a matter of minutes, you can deploy a server running your choice of operating system, e.g. Linux, Solaris, Windows, etc. You can do this with very little technical experience. It is just a matter of aswering a few questions via a web based wizard. Once those questions are answered, then with the click of a button the server is there, running and ready to host your database, application or whatever you provisioned it to do.
This blog entry is not intended to be a comprehensive discussion on Oracle cloud services. It is meant to just show you how the Iaas cloud offering works at a high level and to give you feel of the interface and some of the terminology.
Oracle provisions virtual machines in their cloud via assets called compute instances.
First generate your public/private SSH key pair. You execute this on your workstation.
On a Windows workstation I used the Putty Gen tool which can be downloaded free of charge. The putty suite of tools are also portable apps, meaning that they don’t need to be installed via a MSI. You just download the executable and run with it. Note, you could also use Mobaxterm.
- Click on the “Generate” button and then move your mouse around the blank area to create some randomness for the key generation. Once the key is created enter your passphrase and copy to your clipboard the SSH public key displayed. Then, save your private key to your local disk.
- Log into the Oracle public cloud website. Note, you will either need a free trial from Oracle or be a paying Oracle cloud customer. Click on “Sign In” located in the upper right hand corner. Select the data center where you wish for your server to exist in. Oracle has many datacenters around the world.
- To login enter the name of your domain. This information should have been provided to you when you registered. Log into the Oracle cloud website with the id provided to you when you signed up for the cloud service. During the registration phase is when you would have set your password.
- This is the main dashboard where you are shown the Cloud services that you have available to you:
- Click on the “Oracle Compute Cloud Service”. This is the Iaas cloud offering from Oracle.
- Click on the button “Open Service Console”.
- The next screen shows that you currently do not have any virtual machines defined in the Oracle cloud. To create a virtual machine go ahead and click the button “Create Instance”.
- On the next screen click on one of the Oracle provided images. These are operating system images for you to deploy to your virtual machine. Along with Linux, the Oracle cloud can also provide Solaris and Windows operating system images. You can also upload your own. Click “Select” next to the image to select it. Once selected click the right arrow button.
- Select how much real memory(RAM) you would like your virtual machine to have. Once selected click the right arrow button.
- Fill in the details of your virtual machine. Most of them are self-explanatory. I am just filling in the basic info for the sake of this blog. Do not worry about the IP information in this blog.
- Click on the button “Add SSH Public Key”. Enter the name of the key(arbitrary) and then paste from your workstation’s clipboard the public key you copied earlier. This is the public key generated earlier with the Putty Key Generator utility. Then click “Add”. Now click the right arrow button.
- Click on the right arrow button. This screen allows you to define your disk layout. Again, for the sake of this blog we are just going to accept the defaults.
- On the summary screen, review your virtual machine configuration and then click on the “Create” button. This will create your virtual machine in the Oracle cloud.
- It will take a few minutes to create your virtual machine. Once the virtual machine is created it will appear on your screen and be in a Running state.
I chose to deploy a virtual machine with the Linux operating system running on it. By default there are two operating system users. The users are opc and oracle. Operating system user opc is in the sudoers configuration file and can “sudo su -“ to the root user without being prompted for a password.
In addition, it is important to note that SSH is enabled by default to this virtual machine but that is the only network service.
- To SSH into your virtual machine, from your workstation over the internet, start Putty and type in firstname.lastname@example.org in the “Host Name (or IP address)” text field. This is the public IP of your virtual machine. Make sure you have Port 22 selected and Connection Type of “SSH”. Click on “SSH” in the Category plane and then click on “Auth”. In this screen, you will provide your private SSH key that you generated earlier. Browse to the location on your workstation where you saved your SSH private key earlier and select it.
Back in the default “Session” category of Putty, click on the “Open” button. Since this is the first time you will be connecting to your virtual machine via SSH, click the “Yes” button at this prompt.
- Type in the SSH passphrase you set earlier when you generated your SSH keys:
- You now should be logged into your virtual machine over the internet. This is a full fledge Linux system which you have root access to. It is hosted in an Oracle data center and you can access it anywhere via the internet where you are allowed to SSH:
Take a look around the system and see the default configuration:
-bash-4.1$ sudo su - -bash-4.1# id uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel) -bash-4.1# df -h Filesystem Size Used Avail Use% Mounted on /dev/xvdb2 16G 2.3G 13G 16% / tmpfs 3.7G 0 3.7G 0% /dev/shm /dev/xvdb1 190M 31M 146M 18% /boot -bash-4.1# uname -a Linux e5ba5f 3.8.13-22.214.171.124.el6uek.x86_64 #2 SMP Tue Mar 15 20:20:25 PDT 2016 x86_64 x86_64 x86_64 GNU/Linux -bash-4.1# ifconfig -a eth0 Link encap:Ethernet HWaddr C6:B0:F7:F6:8B:40 inet addr:10.196.200.130 Bcast:10.196.200.131 Mask:255.255.255.252 UP BROADCAST RUNNING MULTICAST MTU:9000 Metric:1 RX packets:275 errors:0 dropped:1 overruns:0 frame:0 TX packets:166 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:20235 (19.7 KiB) TX bytes:20713 (20.2 KiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 b) TX bytes:0 (0.0 b) -bash-4.1# ls -l /etc/oracle-release -rw-r--r--. 1 root root 32 Feb 22 2013 /etc/oracle-release -bash-4.1# cat /etc/oracle-release Oracle Linux Server release 6.4 -bash-4.1# ls -l /etc/redhat-release -rw-r--r--. 1 root root 55 Feb 22 2013 /etc/redhat-release -bash-4.1# cat /etc/redhat-release Red Hat Enterprise Linux Server release 6.4 (Santiago)
There it is. It is that easy to deploy a virtual machine via Oracle’s IaaS offering. Note, this is an actual Linux system which you have full control over as the sysadmin. This is not a locked down appliance or anything like that. You can do a lot more with your virtual machine as far as redundancy and security goes but this should have just given you the feel of what provisioning an asset in the cloud is all about. Once created you can access and manage these assets just like you would with on-premesis assets. You don’t need to use the web interface for everyday use. You can use all of the access tools you have grown to love such as Putty, Mobaxterm, Cygwin, an SSH session from your Linux workstation, etc..
One of the many things I enjoy about the Galileo SaaS offering is that provisioning is even simpler. All you do is run a simple client installation procedure, a command or two and then answer a few questions and then like magic your performance data is being securely uploaded to our highly secure data center and being processed by out state of the art infrastructure. I find it amazing that after a few simple commands you catch up on years of performance tuning and your performance analysis methods are instantaneously streamlined. No more uploading performance files manually, no more spreadsheet automation and manipulation, etc. All cloud service providers will provision a service for you, the Galileo cloud provisions insight.