Skip to main content

Posts

REST or JSON RPC

If you don’t want to mess about with XML,   REST   is pretty much the industry standard for creating an API. Initially, we had a REST(ish) API. But after using it internally at HomeRez, we were not very happy with how it works. So we looked around for alternatives. In the end, we decided to go for  JSON-RPC . What are the differences? REST uses  HTTP   or  HTTPS  . JSON-RPC can use any transport protocol, for example TCP  . JSON-RPC has 1 end-point URL for all requests. REST uses different URLs for different resources. In JSON-RPC, any request is sent the same way (e.g. via  HTTP  POST  ) with the method and parameters in it. In REST, you use the HTTP verbs (  GET  ,  POST  ,  PUT  ,  DELETE  ) for different actions. So, what made us switch from REST to JSON-RPC? The main reason is that we  couldn’t find a good way to map all operations in our API to HTTP verb...

Full Stack Automation With Ansible and OpenStack

Ansible offers great flexibility. Because of this, the community has figured out many useful ways to leverage Ansible modules and playbook structures to automate frequent operations on multiple layers, including using it with OpenStack. In this blog we’ll cover the many use-cases for  Ansible , the most popular automation software, with OpenStack , the most popular cloud infrastructure software. We’ll help you understand here how and why you should use Ansible to make your life easier, in what we like to call Full-Stack Automation. Let’s begin by analyzing the layers of Full-Stack Automation, shown in the diagram above. At the bottom, we have the hardware resources (servers, storage area networks, and networking gear). Above, is the operating system (Linux or Windows). On the Linux side, you can install OpenStack to abstract all of your datacenter resources and offer a software-defined version of your compute, network, and storage resources. On top of OpenStack, are the tenan...