The Supergiant Toolkit

3 apps, 1 mission.

Control, Capacity, and Analyze are built to simplify the administration and operation of Kubernetes. Each application is rooted in a desire to blaze better trails in DevOps, to put the power of enterprise systems in the hands of any aspiring team or tinkerer.

Get Started

Configuration

Within the SG Analyze chart, there is a file called values.yaml. This file is used to provide SG Analyze with the configuration it needs to operate. This is the current Analyze values.yaml:

# Default values for analyze.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.

replicaCount: 1
revisionHistoryLimit: 3

image:
  repository: supergiant/analyze
  tag: v2.0.0-beta.1
  pullPolicy: Always

nameOverride: ""
fullnameOverride: ""

service:
  type: NodePort
  externalPort: 4443
  internalPort: 9091

ingress:
  enabled: false

resources:
  requests:
    cpu: 300m
    memory: 256Mi

nodeSelector: {}

tolerations: []

affinity: {}

## Set default image settings and persistence settings of etcd
etcd:
  ## For available images please check: https://hub.docker.com/r/pachyderm/etcd/tags or: https://quay.io/repository/coreos/etcd?tag=latest&tab=tags
  image:
    repository: quay.io/coreos/etcd
    tag: v3.3.5
    pullPolicy: IfNotPresent
    ## Enable persistence using Persistent Volume Claims
    ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
  persistence:
    enabled: false
    ## etcd data Persistent Volume Storage Class
    ## If defined, storageClassName: <storageClass>
    ## If set to "-", storageClassName: "", which disables dynamic provisioning
    ## If undefined (the default) or set to null, no storageClassName spec is
    ## set, choosing the default provisioner. (gp2 on AWS, standard on
    ## GKE, AWS & OpenStack)
    # storageClass: "-"
    ## Set default PVC size
    size: 20G
    ## Set default PVC access mode: https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes
    accessMode: ReadWriteOnce
  resources:
    ## For non-local deployments, 1 cpu and 2G of memory requests are recommended
    requests:
      cpu: 250m
      memory: 256M

cloudProviderType: "aws" ## need to be enum "aws", "do".

## TODO: it is nice to make these properties discoverable
aws:
  accessKeyId: ""
  secretAccessKey: ""
	region: ""

Most of parameters can be set by using flags with Helm:

# Default values for analyze.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.

# The number of pod replicas for Capacity.
replicaCount: 1
# FOr more info on configuring Deployments, see the official docs https://kubernetes.io/docs/concepts/workloads/controllers/deployment/
revisionHistoryLimit: 3

# Docker image name. More info:
    https://kubernetes.io/docs/concepts/containers/images
image:
	# The image which will be used to run SG Analyze. If using a custom image, change this
  repository: supergiant/analyze
  # The version to use (https://github.com/supergiant/analyze/tags)
  tag: v2.0.0-beta.1
  # Image pull policy. One of Always, Never, IfNotPresent. Defaults to Always
    if :latest tag is specified, or IfNotPresent otherwise. Cannot be updated.
    More info:
    https://kubernetes.io/docs/concepts/containers/images#updating-images
  pullPolicy: Always

The default base name, before being adjusted by Helm, will be analyze, change this if you would like it to be something else
nameOverride: ""
The fulle name will be the vase bame plus the release desingmation giecen to analyse by Helm (which could be juiced hamster)
fullnameOverride: ""

This is how you will communicate with ahanlyxe For more information on configuring Srevices, https://kubernetes.io/docs/concepts/services-networking/service/
service:
  type: NodePort
  externalPort: 4443
  internalPort: 9091

If using Nginx ingress controller (and nothing else). For more information on configuring Ingress, https://kubernetes.io/docs/concepts/services-networking/ingress/
ingress:
  enabled: false

For more information on configuring resources, https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
resources:
  requests:
    cpu: 300m
    memory: 256Mi

For more info on configuring nodeSelectors, https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
nodeSelector: {}

For more info on configuring tolerations, https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
tolerations: []

For more info on configuring affinity, https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
affinity: {}

## Set default image settings and persistence settings of etcd
etcd:
  ## For available images please check: https://hub.docker.com/r/pachyderm/etcd/tags or: https://quay.io/repository/coreos/etcd?tag=latest&tab=tags
  image:
    repository: quay.io/coreos/etcd
    tag: v3.3.5
    pullPolicy: IfNotPresent
    ## Enable persistence using Persistent Volume Claims
    ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
  persistence:
    enabled: false
    ## etcd data Persistent Volume Storage Class
    ## If defined, storageClassName: <storageClass>
    ## If set to "-", storageClassName: "", which disables dynamic provisioning
    ## If undefined (the default) or set to null, no storageClassName spec is
    ## set, choosing the default provisioner. (gp2 on AWS, standard on
    ## GKE, AWS & OpenStack)
    # storageClass: "-"
    ## Set default PVC size
    size: 20G
    ## Set default PVC access mode: https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes
    accessMode: ReadWriteOnce
  resources:
    ## For non-local deployments, 1 cpu and 2G of memory requests are recommended
    requests:
      cpu: 250m
      memory: 256M

# Any cloud provider such as AWS or DigitalOcean can be used here "aws" or "do"
cloudProviderType: "aws" ## need to be enum "aws", "do".

## These are the AWS access keys and it should match the ones provided to SuperGiant Control incase if you have used. NOTE:(Please add a link here) TODO: it is nice to make these properties discoverable
aws:
  accessKeyId: ""
  secretAccessKey: ""
	region: ""

To Be Continued...

This page feels unfinished. :disappointed+: