Giter Site home page Giter Site logo

kudo.dev's People

Contributors

alenkacz avatar aneumann82 avatar d2iq-shadowbq avatar dependabot[bot] avatar fabianbaier avatar gerred avatar gkleiman avatar guenter avatar jbarrick-mesosphere avatar joejulian avatar joerg84 avatar k8s-ci-robot avatar kensipe avatar mans2singh avatar mattj-io avatar meichstedt avatar mpereira avatar msdolbey avatar nfnt avatar philips avatar porridge avatar rishabh96b avatar runyontr avatar sharego avatar spiffxp avatar tbaums avatar voelzmo avatar wking avatar yankcrime avatar zmalik avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

kudo.dev's Issues

🛬 Write "What is KUDO" introductory section

Name

"What is KUDO" introductory section

Description

The landing page needs to immediately appeal to all types of users:

  • Beginners who don’t know what an operator is - Newbies
  • Human operators who want to run their application - Application operators
  • Kubernetes experts who know about operators - Operator developers

The introductory section should speak to all of these, and include at least the following concepts at a high (yet specific) level:

  • Operator pattern and the problems it addresses
  • Stateless vs. stateful
  • Operator development tooling
  • How does KUDO help

Estimated Length

  • Short (300-500 words, possibly a few code snippets)

Metadata

  • Difficulty Level:
  • Categories:
  • Persona:

KUDO Comparison to Infrastructure as Code tools (Ansible, Terraform)

As a user of IaaC tooling, why should I use a tool like KUDO?

What should I expect to learn?

By the end of this article, I will understand how KUDO and IaaC tooling can work together, and why operators are important to extending the capabilities existing IaaC tools.

What pre-requisite knowledge am I expected to have?

Base understanding of tooling such as Chef, Ansible, Terraform, Puppet, etc.

Estimated Length

  • Medium (500-700 words, complex)

Metadata

  • Difficulty Level: Beginner
  • Categories:
  • Persona:

Link code snippets from existing examples in KUDO

What would you like to be added:
Currently, the example YAMLs in, e.g., Developing Operators are part of the documentation. To always ensure their correctness, they should be code snippets taken from the examples provided by KUDO instead. This could be done by adding a pinned version of KUDO as a Git submodule to this repository.

Why is this needed:
This will ensure that the examples in the documentation work. Especially once their correctness is ensured with integration tests (e.g., kudobuilder/kudo#828).

KUDO Cassandra comparison for Cassandra users (Cassandra Operators, AWS Managed Cassandra, DyanmoDB, IaaC, Hand Managed)

Description

As a Cassandra user, I want to understand how the KUDO Cassandra operator stacks up to other other ways of running it.

What should I expect to learn?

By the end of this article, I will know how KUDO and KUDO Cassandra benefits my application stack.

What pre-requisite knowledge am I expected to have?

Working knowledge of Cassandra

Estimated Length

  • Long (700+ words)

Metadata

  • Difficulty Level: Beginner
  • Categories:
  • Persona: End User

🛬 Write secondary sections

Name

Write secondary sections expanding on:

  • How do I get started?
  • How do I write an operator?
  • How do I deploy an application?
  • Why do folks love KUDO?

Description

Describe the KUDO 'lifestyle' and why it makes things better for the problems it's designed to solve.

Some brief one or two line code snippets per context that get folks up
and running immediately with KUDO might be worthwhile here.

Possibly a short demo.

Links that hand off to other sections and salient bits of content.

Estimated Length

  • Medium (500-700 words, complex)

Metadata

  • Difficulty Level:
  • Categories:
  • Persona:

🛬 Who is using KUDO?

Name

Who is using KUDO?

Description

We need another section that highlights customers that are using KUDO
right now for various use-cases. These could be technology companies
that are developing operators for their own services, as well as
companies that are using KUDO to manage other applications.

These should be companies that inspire confidence in anyone
potentially interested in KUDO.

  • MayaData
  • ArangoDB
  • Salesforce
  • Replicated.com

We might need a CTA via Slack.

Estimated Length

  • Short (300-500 words, possibly a few code snippets)

Metadata

  • Difficulty Level:
  • Categories:
  • Persona:

KUDO vs. Custom Controller (Kubernetes clients, Kubebuilder, Operator SDK)

Description

As an operator developer, I want to understand the difference between KUDO and code oriented operator tools

What should I expect to learn?

By the end of this article, I will understand how KUDO enables productivity and understandability for operator developers and when to use a code oriented tool versus a high level framework such as KUDO

What pre-requisite knowledge am I expected to have?

Kubernetes basics and an understanding of what an operator is

Estimated Length

  • Medium (500-700 words, complex)

Metadata

  • Difficulty Level: Beginning
  • Categories:
  • Persona:

KUDO Admin Runbooks

  • How to create an operator from scratch (first operator)
  • How to debug an operator installation
  • How to uninstall kudo
  • How to uninstall an operator
  • How to add a repo to a client
  • Create a operator repo
  • How to add an operator to a repo
  • How to air gap kudo
  • How to secure kudo (sa)

recipes?

  • How to create a daemon job

KUDO Comparison for Operator Developers

Description

As a developer wanting to enable my users to deploy my application to Kubernetes, I want to compare the options for deploying software to Kubernetes clusters, so I can choose KUDO.

Each subsection of this document will have it's own task separated by paradigm, with example tools under that paradigm in a subheading.

What should I expect to learn?

By the end of the article, you will understand the differences between KUDO and other tools in the market, and where KUDO differentiates itself.

What pre-requisite knowledge am I expected to have?

General knowledge of what Kubernetes and config management concepts

Estimated Length

  • Long (700+ words)

Metadata

  • Difficulty Level: Beginner
  • Categories:
  • Persona:

Overview page for KUDO concepts.

  • Overview
  • Motivation for KUDO existence
  • Main concepts:
    Short description relations between:
    • Operator Package
    • Operator Repository
    • KUDO Manager
    • Plans
    • Operator Parameters
    • Default plans (deploy, upgrade, cleanup)
  • Under the hood:
    • KUDO CRDs
      • Operator
      • OperatorVersion
      • Instance

KUDO comparison versus Static Definition Formats (Helm v2, v3, raw YAML, Kustomize)

Description

As a Kubernetes developer, I want to understand the difference between controller/operator-managed tools versus static definition formats.

What should I expect to learn?

Where static definitions fall short and where operator tooling shines.

What pre-requisite knowledge am I expected to have?

A working knowledge of Kubernetes YAML

Estimated Length

  • Short (300-500 words, possibly a few code snippets)

Metadata

  • Difficulty Level: Beginner
  • Categories:
  • Persona: Operator Developer

Restructure the KUDO documentation to explain concepts and features

Description

Structure Concepts and Features to allow user to drill down from higher level descriptions to actual features.
A section that explains the concepts of KUDO will provide an overview of what makes an operator, i.e. tasks, plans, triggers.
Then the actual features are sections for tasks, plans, triggers going into more detail.

What should I expect to learn?

Tell me what I should expect to learn by the end of reading this content?

What pre-requisite knowledge am I expected to have?

What do I need to know to succeed with this content? If external, ideally link prior art for this knowledge here.

Estimated Length

  • Long (700+ words)

Metadata

  • Difficulty Level:
  • Categories:
  • *Persona:

Enhance comparison between kudo and similar tools

What would you like to be added:
At the moment the comparison table page does nicely compare the base features of KUDO vs other known tools however extra points could be added to clear up the context and explain how KUDO is unique versus the other tools.

In addition a tools such as kapitan may not be seen initially as a direct competitor but I believe that it is in that region, so extension of that table with Kapitan would be rather useful

Why is this needed:

Having headings such as: Project, Definition Language, Uses CRDs | Dependencies, Multi Step, Parameters without proper explanation of the context and why each feature is useful is making it difficult to understand from prospective user's perspective.

The more summarised context the better it is to understand, a fine balance between the amount of information (detail) and how informative and appropriate this information is, is rather necessary.

KUDO Kafka Comparison vs. Competitors (Strimzi and other operators), AWS Managed Kafka Service, Infra as Code managed Kafka, and hand deployed Kafka

Description

As an end user, I want to understand how KUDO Kafka stacks for all levels of running Kafka, from hand-managed to operator on Kubernetes.

What should I expect to learn?

By the end of this article, I should understand why KUDO believes operators are a Good Thing™ and the benefits KUDO providers over other forms of running Kafka on Kubernetes.

What pre-requisite knowledge am I expected to have?

An understanding of Kafka

Estimated Length

  • Long (700+ words)

Metadata

  • Difficulty Level: Beginner
  • Categories:
  • Persona: Kafka Developer

mailing list link broken

Which page is affected?:

https://kudo.dev/community/

What exactly is broken?:

Mailing List link goes to a non-existent or private group. I receive the alert: "This group either doesn't exist, or you don't have permission to access it. If you're sure this group exists, contact the Owner of the group and ask them to give you access." Here's a screenshot:

Screen Shot 2019-11-26 at 3 18 00 PM

Which device do you use?:

Chrome browser on Mac.

Update/upgrade docs

What would you like to be added:
Add docs about how to update and upgrade your operator under features docs section. Make sure to explain what are update and upgrade plans and how to use them through CLI.

Why is this needed:

KUDO vs. Other High Level Controller Frameworks (metacontroller)

Description

As an operator developer, I want to understand the difference between KUDO and other declarative tools in the same class, such as metacontroller.

What should I expect to learn?

By the end of this article, I will understand how KUDO's declarative approach provides advantages over mixed software like metacontroller.

What pre-requisite knowledge am I expected to have?

Basic knowledge of Kubernetes concepts, and a base understanding of operators

Estimated Length

  • Medium (500-700 words, complex)

Metadata

  • Difficulty Level: Beginner
  • Categories:
  • Persona:

🛬 What kind of workloads can you run with KUDO right now?

Name

What kind of workloads can you run with KUDO right now?

We should emphasise and promote high-quality KUDO Operators that already exist.

Description

The landing page needs a section with logos of what can you run with
KUDO:

  • Cassandra
  • Spark
  • Kafka
  • Flink
  • Zookeeper

Should be a bunch of logos with links to various projects.

Estimated Length

  • Short (300-500 words, possibly a few code snippets)

Metadata

  • Difficulty Level:
  • Categories:
  • Persona:

provide a way to order menu links

What would you like to be added:
Some control over the menu links order for runbooks so we can group related docs together like runbooks or release notes above
image

Why is this needed:
To provide a better UX for users when navigating docs for an operator

Anatomy of an operator

Describe that an operator consists of operator.yaml, params and templates. Link to concepts, templates, ... pages

Add support for RSS

What would you like to be added:

Support for RSS, in particular for the Community / Events section.

Why is this needed:

This has been requested by a couple of people as an easy way of being notified of any new or upcoming KUDO-related activities.

🛬 Landing page restructuring

Name

Landing page restructuring

Description

The landing page needs restructuring to priorise content:

  • Immediately explain what KUDO is and the problems it's designed to solve
  • What someone can do with KUDO
  • Workloads you can run with KUDO
  • Who uses KUDO - should inspire confidence in the tool and its community

Estimated Length

  • Short (300-500 words, possibly a few code snippets)

Metadata

  • Difficulty Level:
  • Categories:
  • Persona:

Document large cluster workflow for operator deployment involving multiple teams

What would you like to be added:
With the help of kudo install --skip-instance, only the Operator and OperatorVersion of a package can be installed. This can be used in larger cluster by cluster ops teams preparing operators for other teams. I.e., this allows a workflow where specific teams are allowed to create instances from OperatorVersions already in the cluster, giving cluster ops more control on what is being deployed on a cluster.

Why is this needed:
KUDO's support for this workflow helps in large cluster deployments managed by multiple teams with different roles.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.