
ZStack v1.1 release: Infrastructure-as-a-service software - zxwing
http://zstack.org/cn/blog/v1.1.html
======
brudgers
Home: [http://zstack.org/](http://zstack.org/)

 _ZStack is open source IaaS(infrastructure as a service) software aiming to
automate datacenters, managing resources of compute, storage, and networking
all by APIs._

------
HerrMonnezza
Does anyone have experience with this? How does it compare to e.g. OpenStack
or CloudStack?

~~~
zxwing
I am the author of ZStack, a former core developer of CloudStack since 2010
Cloud.com, and a close OpenStack watcher since 2011. Given ZStack, Openstack,
CloudStack, Eucalyptus are all IaaS software, they were very similar speaking
of functions. However, some features make ZStack specific:

1\. Huge Scale

Because of full-async architecture, stateless services and lock-free
architecture, ZStack can handle huge concurrent APIs very fast. In our
simulator test, ZStack installed in a virtual machine with 8CPU, 8G memory can
serve 30K concurrent APIs. And an IBM IT guy tested ZStack on 4 physical
machines creating 1000 VM concurrently, all tasks completed successfully in 4
minutes. This is the best performance data I have been seen so far in IaaS
area.

2\. Seamless Upgrade

Upgrade is a headache problem that users have been suffered for a long time.
ZStack is the first IaaS really implementing seamless upgrade, all you need is
to run a singe command, for example:

    
    
          bash zstack-installer-1.1.0.bin -u
     
    

You don't have to worry about agents on host or in virtual appliances, ZStack
itself takes care all of them. The upgrade takes 5 minutes normally. From the
initial version 0.6 to the current version 1.1, our users have done the
upgrade thousands of times all by themselves, no even a single failure. If you
have ever upgraded an Openstack deployment, you know how hard this could be.

3\. Full APIs

Tasks in ZStack are all delivered through APIs. You don't have to manually
configure a service or install an agent. For example, to add a host, you can
just call the API AddKvmHost with its IP and SSH credential, ZStack will
automatically configure the system, install dependent packages(e.g. libvirt),
and deploy own kvm-agent. Openstack only has APIs for manipulating VMs, so
Mirantis releases a product Fuel to solve this problem. However, given
Openstack was not designed in the way that makes everything APIable, it's hard
to build a reliable product automating everything.

ZStack's automation is built up on Ansible that is a famous configuration
management tool. We directly use Ansbile SDK to customize the deployment
process for every ZStack agent, and hide them from end users. So you don't
have to care about details of deployment, all you need is to install the
single ZStack binary and play with the web UI or CLI, we takes care the rest
of the world!

4\. Full Query API

Companies which wants to do Devops on the IaaS often encounter a problem that
there is no API to search resources, so they have to bypass the software and
directly access the database. ZStack solves this problem by query APIs, you
can do SQL-like queries including table-join at API level. For example:

    
    
        QueryHost fields=name,uuid,managementIp hypervisorType=KVM vmInstance.allVolumes.size>=549755813888000 vmInstance.state=Running start=0 limit=10
    

Developers don't need to write any code for queries; they just need to create
a database table and define a query API in two lines of code, ZStack's query
engine will interpret the API and generate proper SQL statements.

With the query API, enterprises can build sophisticated UI similar to outlook
and jira, which generate views defined by query.

5\. Light-weight IaaS

ZStack is light-weight IaaS that can be easily installed on a single physical
machine even virtual machine. Many of our users use two machines to setup a HA
cluster where computing, storage and control nodes are converged. This can
help small businesses build their private cloud, without purchasing many
hardware just for deploying a control panel.

If you think OpenStack is unnecessary complexity for your cloud, I recommend
you to try out ZStack.

------
ivan_ah
How does this compare with eucalyptus, the open source AWS clone:
[https://github.com/eucalyptus/eucalyptus](https://github.com/eucalyptus/eucalyptus)
?

~~~
smw
A more interesting question is how it compares to OpenStack, no?

~~~
jstc
Blog post on motivation for creating an alternate to OpenStack
[http://zstack.org/blog/why-zstack.html](http://zstack.org/blog/why-
zstack.html)

