For Developers

This section is for DevOps users who operate Kubernetes applications. Please review the Core Concepts section to familiarize yourself with key terms and definitions before you proceed.

Getting Started Video for Developers

This video provides an introductory tour of Nirmata for developers who want to model, deploy, and troubleshoot Kubernetes applications:

Command Line Access

Nirmata enables secure self-service access for developers using the following command line tools:

nctl

The Nirmata Command Line Interface nctl allows Nirmata access from the command line. This is useful for CI/CD integrations and other tasks which cannot be performed via a web console. You can download nctl at: https://downloads.nirmata.io.

If you are using the Nirmata Private Edition (on-prem install) make sure you select the version of nctl compatible with the Nirmata version.

To use nctl you will need to generate a API key associated with your account. You can generate and manage API keys in the Settings section.

kubectl

The Kubernetes Command Line Interface kubectl allows managing Kubernetes workloads and resources. You can install kubectl from: https://kubectl.docs.kubernetes.io/installation/kubectl/.

Nirmata automates identity and access management for Kubernetes clusters. You can download your KubeConfig file from the Settings section in Nirmata and use this to securely access allowed resources in your Kubernetes clusters.

Modeling a Kubernetes Application

Kubernetes applications (also known as workloads) consist of multiple resources definitions. You can model Kubernetes applications in a Nirmata Catalog application. A Catalog application can be created using the Nirmata web console without writing any YAML. You can also import and export YAML manifests. A Catalog application can directly store YAML definitions in Nirmata, or can reference external upstream version control systems like a Git or Helm repository.

Running a Kubernetes Application

A Catalog application can be deployed to multiple Environments such as Development, Test, Staging, and Production. Each DevOps user can be provided access to one or more Environments, or can be assigned environment creator permissions to create their own environments.

With access to an environment, a DevOps user can run applications and check other resources associated with the environment. A DevOps user can view application events, metrics, and check tasks and activities performed in the environment. A DevOps user with admin permissions for the Environment can also change settings for the environment.

Changes from a catalog application can be propagated to each running instance of the application.

Nirmata CI/CD Integrations

Nirmata is designed to be flexible and enables both push and pull style of CI/CD integrations. For example, you can use a Jenkins pipeline to push YAML definitions to a Nirmata catalog application. Or, you can configure the Nirmata catalog application to watch an upstream Git or Helm repository and pull changes to deploy to downstream environments.

Managing Applications

Proceed to Application Management to learn more about modeling, deploying, and managing Kubernetes applications.