Configs.Cloud : An Overview

Understanding Configs.Cloud Software

Product Tour

Overview

Configs.Cloud is a standard configuration management software - available in both FREE for All & Enterprise Flavours.

Not hardcoding configurations is one of the first "Best practices" that a developer learns. Whether it is Application, Platform, Processes or Automation, they all rely on a set of configurations to determine their behaviour / flow / transactionality.

Configs.cloud provides a Simple yet powerful configuration framework, which ticks all the boxes needed from a typical configuration management software. If you need to fulfil any additional or more complex requirements, simply get in touch for the enterprise version view / custom build of the product.

Take a quick overview of use case for Configs.Cloud ...



Demo of Configs.Cloud Management Console ...



Demo of Configs.Cloud REST APIs ...

If you would rather prefer to read and not go through the video, here it is ...

What is Configs.Cloud & Why use it ?

Configs.cloud is a hosted standard configuration management solution which allows for storage and management of Application/ platform / processes / automation configurations and available via REST APIs for consumption.

Conventional Config Management

Conventionally, and in most of the cases, configurations are stored as "files on the disk". They could either be Text files with extensions commonly as *.properties, *.ini, *.config, *.xml or recently *.json, *.yaml / *.yml files.

Storing configurations as a file on the disk introduces lots of compromises and complexity in terms of handling configurations which are discussed below.

Key Problems with Conventional Config Management
These problems exist for any File based configuration management software. Configs.Cloud provides a simple nirvana out of these, by providing a standard Configuration Implementation available over REST APIs.

  1. Lack of visibility: In all these cases, the problem remains the same. Properties are hidden in files, and are not visible in one single view.
  2. Versioning of Individual Configuration Items: Changes and Versioning for each configuration key / value entry is a impossibility. Getting to know of just the last version of any one configuration is extremely difficult especially if you are from a team who doesnt own the configuration - e.g. IT support / Operations team.
  3. Versioning / Auditing: Its not easy to compare, or audit or version at a per configuration level. People have attempted various ways to get around this problem using Version control systems, however, other than versioning the whole file - which might be just for one environment in most cases - majority of the problems still exist.
  4. Comparison between Environments: Values for same key could hold different values for different environments. For e.g. Hostname, Credentials and Other details of the system to connect to, Max number of connections, Max TTL etc. More importantly, its not easy to clone and be sure that all the necessary configurations are available, especially in a Go-Live or Migration or a Upgrade Scenario. Assurance on configuration sync is really key to reduce business risk.
  5. Economy of Scale: As the number of configurations increases, for one application, and then for multiple applications, each in a different format and standards, the sheer volume of configurations become very complex to manage. There is lack of visibility, and obsoleteness of the solutions
  6. Password Storage / Management: As most credentials are stored in plain text files, passwords end up being stored in clear text on these property files. As the volume of configurations and the complexity of interdependencies between systems increases over time, changing a password seems almost impossible. In such a scenario, if even a older version of the configuration property file were to get in wrong hands, the risk introduced might be enormous.
  7. Multiplicity of Configuration Mechanisms: In an organization, for every application, a new configuration management system is built, based on different standards, different access mechanisms and different ways of storage

    & Finally

  8. Unsuitability for Cloud Applications:Deployment of code into cloud warrants design to be more configurable than standalone or internal applications. A conventional configuration mechanism is more clumsy in for cloud oriented platform.
Solutions by Configs.Cloud

Conventional Config Problem Solution by Configs.Cloud
Lack of visibility Configs.cloud gives visibility on all the configs under management for multiple environments for a single control panel. Role based access allows users to either edit or view the configurations from the management console for all the configurations. Enterprise version allows to limit visibility of users to different datasets.
Versioning / Auditing Every change on a configuration adds a new version for a configuration, and every change in audited. This gives complete visibility on all actions around configurations in a simple yet powerful way.
Comparison between Environments Configs.cloud management console provides a real time comparison of configurations between different environments in a single portal, allowing users to view which configs are missing, and difference between configs of different environments.
Economy of Scale As the number of configurations increase, it becomes more and more complex. Especially with configurations from multiple applications. In Configs.cloud you can arrange these configurations using multiple datasets then access control each of these datasets as needed.
Query Configurations Use Simple Query language on Configs.cloud REST APIs to query bunch of configurations of your choice. Use these from your platform configuration, application or your DevOps processes to retrieve part of the configurations.
Password Storage / Management Configs.cloud allows passwords to be stored centrally accesible for edit / view on a single portal and not spread around multiple configuration files behind multiple security systems / mechanisms. All passwords are encyrpted on disk and the user can retrieive either a decrypted password (or) encrypted password to be decrypted in their own runtime after retrieval.
Multiplicity of Configuration Mechanisms In an organization instead of storing configuations across multiple applications and managing each configuration separately, store and manage them in a single location with enhanced availability securely and in a standard way.
Suitability for Cloud Applications Keep your cloud codebase equally configurable without storing the configurations in the codebase, making it fully independent of environments, versioning and DevOps complexities. Use Configs.cloud to retrieve configurations based on the environment and use as needed.

Who does Configs.cloud fit best with ?

This software could be used by any application. Configs.cloud is a standard "Configuration management Software", and so any application which needs to manage its configuration can leverage its functionality, for e.g.

  • Cloud hosted applications
  • Internally hosted applications
  • Applications written in any technology
  • Applications running on any platform.
However, given that its available as a "Hosted Software" and access by an application is exposed as a REST / JSON API's, this application in the current form is best placed to service any application which can communicate via REST APIs.
This product could be made available to be locally hosted / embedded in your application under licence. Contact us for more details on this.

Standard Product Features

Configuration Management Manage all your Configurations from one single management Portal (and) interact using REST APIs to retrieve configurations from either your platform or application or DevOps processes. Refer "Product Tour" pages for more information / demo of the product and how to manage configurations.
Management Console Fully featured management console to manage / compare configurations. User can add, remove or edit configurations, view previous versions of configurations, view configurations specific to a environment and compare latest configuration versions between different environments. Refer "Product Tour" pages for more information / demo of Management Console.
Polygot REST APIs Integrate Configs.Cloud with either your application (or) your platform (or) application build process, DevOps processes, BPM's or any other cloud hosted platforms, using simple exposed Clients or via REST based APIs as per your choice.
Password Management Manage Application Passwords as another configuration, stored in the database in a encrypted format. Retrieve passwords either in encrypted or decrypted formats via REST API calls. Choose password encryption algorithm of your choice from the available list.
Query Configurations Use Simple Query language on Configs.cloud REST APIs to query bunch of configurations of your choice. Use these from your platform configuration, application or your DevOps processes to retrieve part of the configurations.
Environment Awareness All configurations are environment aware. Use this feature to create environment aware configurations, manage application behaviour with environment specific configurations, clone and promote configurations to different environments with deployments.
Configuration Versioning & Auditing Every change on a configuration adds a new version for a configuration, and every change in audited. This gives complete visibility on all actions around configurations in a simple yet powerful way.

Contact us today, for enquiries on using Configs.Cloud in your Enterprise.