question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Feature request: allow a way to configure microk8s components with configuration file.

See original GitHub issue

This feature request is to allow users to have ways to configure microk8s cluster components such as apiserver, kube proxy, controller, registry, etc… without resorting to modifying multiple files in /var/snap/microk8s/current file system.

Users should be able to configure microk8s like this microk8s.configure -f config.yaml

This can help administrators or users to easily share configs among their teams and potentially version them too.

What do you think?

List of configurable components.

  • containerd
  • kube api server
  • kube controller
  • kube proxy
  • kubelet
  • csr

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Reactions:13
  • Comments:12 (5 by maintainers)

github_iconTop GitHub Comments

5reactions
ktsakalozoscommented, May 15, 2019

This comes up very frequently (eg https://github.com/ubuntu/microk8s/issues/43 and https://github.com/ubuntu/microk8s/issues/92). It will be great to be able to have a microk8s.init (following the lxd snap paradigm) that would configure MicroK8s.

  • microk8s.init (or .setup) would be interactive and ask for some basic configuration options.
  • microk8s.init -f config.yaml (or .setup) would use the config file provided
  • microk8s.init --auto (or .setup) would reset to the default values
  • microk8s.init set <property> <value> (or .setup) could set arbitrary configuration values that could be consumed by the addons, eg microk8s.init set dns.upstream 1.2.3.4 to set the upstream nameservers on dns.

Implementation-wise I was thinking we could store the configuration yaml in $SNAP_DATA and offer a few utility functions to be used by the rest of MicroK8s. It would be up to the wrapper of each service (or addon script) to read that configuration and apply the subset of the configuration values that are relevant to what is wrapped.

1reaction
ktsakalozoscommented, Jul 31, 2019

Yes, that makes sense. When your have a MicroK8s cluster you would expect the user activity to propagate to the nodes (see for example the dns addon). The cluster-agent on the nodes takes care of the service configuration and restarts. It can even fire scripts that come in the form of addons.

We could leverage this for the wide configuration.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Feature request: allow a way to configure microk8s ... - GitHub
This feature request is to allow users to have ways to configure microk8s cluster components such as apiserver, kube proxy, controller, ...
Read more >
Configuring MicroK8s services
The Kubernetes API server validates and configures data for the API objects which include pods, services, replication controllers, and others. The API Server ......
Read more >
Configure host interfaces used by MicroK8s
This section explains how to configure the host interfaces used by Kubernetes control plane services. kube-apiserver. By default, kube-apiserver will bind to ...
Read more >
Get started - MicroK8s
MicroK8s is the simplest production-grade upstream K8s. Lightweight and focused. Single command install on Linux, Windows and macOS.
Read more >
MicroK8s Addons
MicroK8s is the simplest production-grade upstream K8s. Lightweight and focused. Single command install on Linux, Windows and macOS.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found