One of the primary reasons for working in the Joyent Public Cloud is the flexible and performant architecture. The Joyent Public Cloud runs SmartOS as a hypervisor and supports a range of guest operating systems in the same cloud due to the support of KVM (various flavors of Linux, and Windows). The choice between deploying a SmartMachine (SmartOS VM) or a KVM (Linux or Windows VM) generally centers around preference or dependencies that necessarily tilt the decision in a specific direction. However, before deploying, you should consider some key differences between the two.
In this topic:
Here are some key advantages for deploying a SmartMachine in the Joyent Public Cloud.
SmartMachines support "live" SSH key updating through SmartLogin. SmartLogin allows you to dynamically update SSH key information through the Cloud Management portal and those updates are automatically propagated across all SmartMachines you provision in the Joyent Public Cloud. You can learn more about SmartLogin here.
Role Based Access Control (RBAC) allows you to control privileges for specific user profiles and user groups in SmartOS. Users with an assigned profile can prefix a command with pfexec to run them as a privileged user in the same way they would use sudo to run commands as a superuser. You can learn more about RBAC and pfexec here.
You can resize SmartMachines after they are deployed to the Joyent Public Cloud. This allows you deploy web stack components to the Joyent Public Cloud, such as a database, and resize the database to accomodate growth without the need for a new infrastructure. This is one of the primary means by which you can support vertical scaling in the Joyent Public Cloud. You can learn more about resizing in the Joyent Public Cloud here.
Here are some key advantages of deploying a KVM in the Joyent Public Cloud.
Running a VM in the Joyent Public Cloud is more secure then running a VM in other clouds due to the implementation of SmartOS as the hypervisor. SmartOS actually runs KVMs inside a SmartMachine instance (also referred to as a zone), providing for complete isolation inside the Joyent Public Cloud. If an exploit breaks out of the virtual machine, the exploit is still contained within the containing SmartMachine with no access to other processes running in other VM instances inside the Joyent Public Cloud. You can find more information on SmartOS here.
For existing Linux developers, the Joyent Public Cloud offers a completely familiar environment without any barriers to adoption of cloud computing. You can provision a Linux VM in the Joyent Public Cloud without having to worry about foreign infrastructure dependencies or unfamiliar adaptations to your hosting environment. You can learn more about the various flavors of Linux that are supported in the Joyent Public Cloud here.