Puppet Class: kubeinstall::install::dashboard

Defined in:
manifests/install/dashboard.pp

Summary

Install Kubernetes dashboard

Overview

Install Kubernetes dashboard

Examples:

include kubeinstall::install::dashboard

Parameters:

  • dashboard_configuration (Variant[ Stdlib::HTTPUrl, Stdlib::Unixpath ]) (defaults to: $kubeinstall::dashboard_configuration)
  • node_name (Stdlib::Fqdn) (defaults to: $kubeinstall::node_name)


7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'manifests/install/dashboard.pp', line 7

class kubeinstall::install::dashboard (
  Variant[
    Stdlib::HTTPUrl,
    Stdlib::Unixpath
  ]       $dashboard_configuration = $kubeinstall::dashboard_configuration,
  Stdlib::Fqdn
          $node_name               = $kubeinstall::node_name,
) {
  # https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/
  # https://github.com/kubernetes/dashboard/blob/master/docs/user/access-control/creating-sample-user.md
  exec { 'dashboard-install':
    command     => "kubectl apply -f ${dashboard_configuration}",
    path        => '/usr/bin:/bin:/usr/sbin:/sbin',
    environment => [
      'KUBECONFIG=/etc/kubernetes/admin.conf',
    ],
    onlyif      => "kubectl get nodes ${node_name}",
    unless      => 'kubectl -n kubernetes-dashboard get service kubernetes-dashboard',
  }
}