utils

package
v0.0.0-...-a849b39 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 5, 2024 License: GPL-3.0 Imports: 23 Imported by: 0

Documentation

Index

Constants

View Source
const AdminUserName = "admin-user"
View Source
const AdminUserNamespace = "kube-system"
View Source
const AlertManagerCount = 1
View Source
const AlertManagerSize = 2
View Source
const AuditLog = "audit.log"

Logging

View Source
const BaseDirectory = "assets"
View Source
const BinaryContainerd = "containerd"
View Source
const BinaryContainerdShimRuncV2 = "containerd-shim-runc-v2"
View Source
const BinaryCrictl = "crictl"
View Source
const BinaryCtr = "ctr"
View Source
const BinaryEtcd = "etcd"
View Source
const BinaryEtcdctl = "etcdctl"
View Source
const BinaryGobetween = "gobetween"
View Source
const BinaryHelm = "helm"
View Source
const BinaryK8sTew = "k8s-tew"

Binaries

View Source
const BinaryKubectl = "kubectl"
View Source
const BinaryKubelet = "kubelet"
View Source
const BinaryRunc = "runc"
View Source
const BinaryVelero = "velero"
View Source
const CaValidityPeriod = 20
View Source
const CalicoTyphaIp = "10.32.0.5"
View Source
const CephBootstrapMdsKeyring = "ceph.bootstrap.mds.keyring"
View Source
const CephBootstrapOsdKeyring = "ceph.bootstrap.osd.keyring"
View Source
const CephBootstrapRbdKeyring = "ceph.bootstrap.rbd.keyring"
View Source
const CephBootstrapRgwKeyring = "ceph.bootstrap.rgw.keyring"
View Source
const CephCertificates = "ceph-certificates"
View Source
const CephClientAdminKeyring = "ceph.client.admin.keyring"
View Source
const CephClusterName = "ceph"
View Source
const CephConfig = "ceph.conf"
View Source
const CephCsi = "ceph-csi.yaml"
View Source
const CephExpectedNumberOfObjects = 1000000
View Source
const CephFsPoolName = "cephfs"
View Source
const CephFsSubgroupName = "csi"
View Source
const CephKeyring = "ceph.keyring"
View Source
const CephManagerCredentials = "ceph-manager-credentials"
View Source
const CephMonitorKeyring = "ceph.mon.keyring"
View Source
const CephPlacementGroups = 32
View Source
const CephRadosGatewayCredentials = "ceph-rados-gateway-credentials"
View Source
const CephRbdPoolName = "cephrbd"

Ceph

View Source
const CephSecrets = "ceph-secrets.yaml"
View Source
const CephSetup = "ceph-setup.yaml"
View Source
const CerebroCredentials = "cerebro-credentials"
View Source
const ClientValidityPeriod = 15
View Source
const ClusterCache = "cluster-cache"
View Source
const ClusterCidr = "10.200.0.0/16"
View Source
const ClusterDnsIp = "10.32.0.10"
View Source
const ClusterDomain = "cluster.local"
View Source
const ClusterIpRange = "10.32.0.0/24"
View Source
const ClusterName = "k8s-tew"
View Source
const ClusterWeight = "cluster-weight"
View Source
const CnAdmin = "admin"

Common Names

View Source
const CnAggregator = "aggregator"
View Source
const CnCeph = "ceph"
View Source
const CnElasticsearch = "elasticsearch"
View Source
const CnGrafana = "grafana"
View Source
const CnKubernetesDashboard = "kubernetes-dashboard"
View Source
const CnMinio = "minio"
View Source
const CnPrometheus = "prometheus"
View Source
const CnSystemKubeControllerManager = "system:kube-controller-manager"
View Source
const CnSystemKubeProxy = "system:kube-proxy"
View Source
const CnSystemKubeScheduler = "system:kube-scheduler"
View Source
const CnSystemNodePrefix = "system:node:%s"
View Source
const CniBaseName = "cni-plugins-amd64-v{{.Versions.CNI}}"
View Source
const CniDownloadUrl = "https://github.com/containernetworking/plugins/releases/download/v{{.Versions.CNI}}/{{.Filename}}.tgz"
View Source
const ConcurrentSshConnectionsLimit = 10
View Source
const ConfigFilename = "config.yaml"

Config

View Source
const ContainerdBaseName = "containerd-{{.Versions.Containerd}}-linux-amd64"
View Source
const ContainerdConfig = "config-{{.Name}}.toml"

Containerd

View Source
const ContainerdDownloadUrl = "https://github.com/containerd/containerd/releases/download/v{{.Versions.Containerd}}/{{.Filename}}.tar.gz"
View Source
const ContainerdKubernetesNamespace = "k8s.io"
View Source
const ContainerdServerName = "containerd"
View Source
const ContainerdSock = "containerd.sock"
View Source
const CrictlBaseName = "crictl-v{{.Versions.CriCtl}}-linux-amd64"
View Source
const CrictlDownloadUrl = "https://github.com/kubernetes-incubator/cri-tools/releases/download/v{{.Versions.CriCtl}}/{{.Filename}}.tar.gz"
View Source
const DeploymentDirectory = "/"
View Source
const DeploymentUser = "root"

Deployment

View Source
const DirectoryAbsoluteContainerdState = "absolute-containerd-state"
View Source
const DirectoryBinaries = "binaries"
View Source
const DirectoryCeph = "ceph"
View Source
const DirectoryCephBootstrapMds = "bootstrap-mds"
View Source
const DirectoryCephBootstrapOsd = "bootstrap-osd"
View Source
const DirectoryCephBootstrapRbd = "bootstrap-rbd"
View Source
const DirectoryCephBootstrapRgw = "bootstrap-rgw"
View Source
const DirectoryCephConfig = "ceph-config"
View Source
const DirectoryCephData = "ceph-data"
View Source
const DirectoryCertificates = "certificates"
View Source
const DirectoryCniBinaries = "cni-binaries"
View Source
const DirectoryCniConfig = "cni-config"
View Source
const DirectoryConfig = "config"

Directories

View Source
const DirectoryContainerdData = "containerd-data"
View Source
const DirectoryContainerdState = "containerd-state"
View Source
const DirectoryCriBinaries = "cri-binaries"
View Source
const DirectoryCriConfig = "cri-config"
View Source
const DirectoryDynamicData = "dynamic-data"
View Source
const DirectoryEtcdBinaries = "etcd-binaries"
View Source
const DirectoryEtcdData = "etcd-data"
View Source
const DirectoryGobetweenBinaries = "gobetween-binaries"
View Source
const DirectoryGobetweenConfig = "gobetween-config"
View Source
const DirectoryHelmData = "helm-data"
View Source
const DirectoryHostBinaries = "host-binaries"
View Source
const DirectoryImages = "images"
View Source
const DirectoryK8sBinaries = "k8s-binaries"
View Source
const DirectoryK8sConfig = "k8s-config"
View Source
const DirectoryK8sKubeConfig = "kube-config"
View Source
const DirectoryK8sManifests = "kubelet-manifests"
View Source
const DirectoryK8sSecurityConfig = "security-config"
View Source
const DirectoryK8sSetupConfig = "setup-config"
View Source
const DirectoryKubeletData = "kubelet-data"
View Source
const DirectoryKubeletPlugins = "kubelet-plugins"
View Source
const DirectoryKubeletPluginsRegistry = "kubelet-plugins-registry"
View Source
const DirectoryLogging = "logging"
View Source
const DirectoryPodsData = "pods-data"
View Source
const DirectoryProfile = "profile"
View Source
const DirectoryRun = "run"
View Source
const DirectoryService = "service"
View Source
const DirectoryTemporary = "temporary"
View Source
const DirectoryVarRun = "var-run"
View Source
const DirectoryVeleroBinaries = "velero"
View Source
const DrainGracePeriodSeconds = 0
View Source
const ElasticsearchCertificates = "elasticsearch-certificates"
View Source
const ElasticsearchCount = 1
View Source
const ElasticsearchCredentials = "elasticsearch-credentials"
View Source
const ElasticsearchSize = 10
View Source
const ElectionController = "/controller-vip-manager"
View Source
const ElectionNamespace = "/k8s-tew"

Virtual IP Manager

View Source
const ElectionWorker = "/worker-vip-manager"
View Source
const Email = "k8s-tew@gmail.com"
View Source
const EncryptionConfig = "encryption-config.yaml"

Security

View Source
const EtcdBaseName = "etcd-{{.Versions.Etcd | image_tag}}-linux-amd64"
View Source
const EtcdDownloadUrl = "https://github.com/etcd-io/etcd/releases/download/{{.Versions.Etcd | image_tag}}/{{.Filename}}.tar.gz"
View Source
const FeatureBackup = "backup"
View Source
const FeatureIngress = "ingress"
View Source
const FeatureLogging = "logging"
View Source
const FeatureMonitoring = "monitoring"
View Source
const FeatureShowcase = "showcase"
View Source
const FeatureStorage = "storage"

Features

View Source
const GobetweenBaseName = "gobetween_{{.Versions.Gobetween}}_linux_amd64"
View Source
const GobetweenConfig = "config.toml"

Gobetween Config

View Source
const GobetweenDownloadUrl = "https://github.com/yyyar/gobetween/releases/download/{{.Versions.Gobetween}}/{{.Filename}}.tar.gz"
View Source
const GrafanaCertificates = "grafana-certificates"
View Source
const GrafanaCredentials = "grafana-credentials"
View Source
const GrafanaSize = 2
View Source
const HelmBaseName = "helm-v{{.Versions.Helm}}-linux-amd64"
View Source
const HelmDownloadUrl = "https://get.helm.sh/{{.Filename}}.tar.gz"
View Source
const HelmServiceAccount = "tiller"
View Source
const IngressDomain = "k8s-tew.net"
View Source
const IngressSubdomainWordpress = "wordpress"
View Source
const K8sAdminUserSetup = "admin-user-setup.yaml"
View Source
const K8sAlertManagerSetup = "alert-manager.yaml"
View Source
const K8sBaseName = "kubernetes-node-linux-amd64"

URLs

View Source
const K8sCalicoSetup = "calico-setup.yaml"
View Source
const K8sCephCertificates = "ceph-certificates.yaml"
View Source
const K8sCephManagerCredentials = "ceph-manager-credentials.yaml"
View Source
const K8sCephRadosGatewayCredentials = "ceph-rados-gateway-credentials.yaml"
View Source
const K8sCerebroCredentials = "cerebro-credentials.yaml"
View Source
const K8sCertManagerSetup = "cert-manager-setup.yaml"
View Source
const K8sCorednsSetup = "coredns-setup.yaml"
View Source
const K8sDownloadUrl = "https://storage.googleapis.com/kubernetes-release/release/{{.Versions.K8S}}/{{.Filename}}.tar.gz"
View Source
const K8sEfkSetup = "efk-setup.yaml"
View Source
const K8sElasticsearchCertificates = "elasticsearch-certificates.yaml"
View Source
const K8sElasticsearchCredentials = "elasticsearch-credentials.yaml"
View Source
const K8sGrafanaCertificates = "grafana-certificates.yaml"
View Source
const K8sGrafanaCredentials = "grafana-credentials.yaml"
View Source
const K8sGrafanaDashboards = "grafana-dashboards.yaml"
View Source
const K8sGrafanaSetup = "grafana.yaml"
View Source
const K8sKubeProxyConfig = "kube-proxy-{{.Name}}-config.yaml"
View Source
const K8sKubeSchedulerConfig = "kube-scheduler-{{.Name}}-config.yaml"
View Source
const K8sKubeStateMetricsSetup = "kube-state-metrics-setup.yaml"
View Source
const K8sKubeletConfig = "kubelet-{{.Name}}-config.yaml"
View Source
const K8sKubeletSetup = "kubelet-setup.yaml"

K8S Config

View Source
const K8sKubernetesDashboardCertificates = "kubernetes-dashboard-certificates.yaml"
View Source
const K8sKubernetesDashboardSetup = "kubernetes-dashboard-setup.yaml"
View Source
const K8sMetalLBSetup = "metallb-setup.yaml"
View Source
const K8sMetricsServerSetup = "metrics-server-setup.yaml"
View Source
const K8sMinioCertificates = "minio-certificates.yaml"
View Source
const K8sMinioCredentials = "minio-credentials.yaml"
View Source
const K8sNginxIngressSetup = "nginx-ingress-setup.yaml"
View Source
const K8sNodeExporterSetup = "node-exporter-setup.yaml"
View Source
const K8sPrometheusAlerts = "prometheus-alerts.yaml"
View Source
const K8sPrometheusCertificates = "prometheus-certificates.yaml"
View Source
const K8sPrometheusRules = "prometheus-rules.yaml"
View Source
const K8sPrometheusSetup = "prometheus-setup.yaml"
View Source
const K8sTewBaseDirectory = "K8S_TEW_BASE_DIRECTORY"

Environment variables

View Source
const K8sTewProfile = "k8s-tew.sh"

Profile

View Source
const K8sVeleroSetup = "velero-setup.yaml"
View Source
const KeyPassword = "password"
View Source
const KeySecret = "secret"
View Source
const KeyUsername = "username"
View Source
const KubeStateMetricsCount = 1
View Source
const KubeconfigAdmin = "admin.kubeconfig"

Kubeconfig

View Source
const KubeconfigControllerManager = "controller-manager-{{.Name}}.kubeconfig"
View Source
const KubeconfigKubelet = "kubelet-{{.Name}}.kubeconfig"
View Source
const KubeconfigProxy = "proxy-{{.Name}}.kubeconfig"
View Source
const KubeconfigScheduler = "scheduler-{{.Name}}.kubeconfig"
View Source
const KubernetesDashboardCertificates = "kubernetes-dashboard-certificates"
View Source
const KubernetesDashboardNamespace = "kube-system"
View Source
const KubernetesRegistry = "registry.k8s.io"

Versions

View Source
const LetsencryptClusterIssuer = "letsencrypt-cluster-issuer.yaml"

Cluster Issuer

View Source
const ManifestControllerVirtualIP = "controller-virtual-ip-{{.Name}}.yaml"
View Source
const ManifestEtcd = "etcd-{{.Name}}.yaml"

Manifests

View Source
const ManifestGobetween = "gobetween-{{.Name}}.yaml"
View Source
const ManifestKubeApiserver = "kube-apiserver-{{.Name}}.yaml"
View Source
const ManifestKubeControllerManager = "kube-controller-manager-{{.Name}}.yaml"
View Source
const ManifestKubeProxy = "kube-proxy-{{.Name}}.yaml"
View Source
const ManifestKubeScheduler = "kube-scheduler-{{.Name}}.yaml"
View Source
const ManifestWorkerVirtualIP = "worker-virtual-ip-{{.Name}}.yaml"
View Source
const MaxPods = 110
View Source
const MetalLBAddresses = "192.168.0.16/28"
View Source
const MinioCertificates = "minio-certificates"
View Source
const MinioCredentials = "minio-credentials"
View Source
const MinioSize = 2
View Source
const NamespaceBackup = "backup"
View Source
const NamespaceKubeSystem = "kube-system"

Namespaces

View Source
const NamespaceLogging = "logging"
View Source
const NamespaceMonitoring = "monitoring"
View Source
const NamespaceNetworking = "networking"
View Source
const NamespaceShowcase = "showcase"
View Source
const NamespaceStorage = "storage"
View Source
const NodeBootstrapper = "bootstrapper"

Node Labels

View Source
const NodeController = "controller"
View Source
const NodeNotReady = "node.kubernetes.io/not-ready"
View Source
const NodeRoleController = "node-role.kubernetes.io/controller"
View Source
const NodeRoleStorage = "node-role.kubernetes.io/storage"
View Source
const NodeRoleWorker = "node-role.kubernetes.io/worker"
View Source
const NodeStorage = "storage"
View Source
const NodeWorker = "worker"
View Source
const OsCentos = "centos"
View Source
const OsCentos75 = "centos/7.5"
View Source
const OsUbuntu = "ubuntu"

OS

View Source
const OsUbuntu1804 = "ubuntu/18.04"
View Source
const PemAdmin = "admin.pem"
View Source
const PemAdminKey = "admin-key.pem"
View Source
const PemAggregator = "aggregator.pem"
View Source
const PemAggregatorKey = "aggregator-key.pem"
View Source
const PemCa = "ca.pem"

Certificates

View Source
const PemCaKey = "ca-key.pem"
View Source
const PemCeph = "ceph.pem"
View Source
const PemCephKey = "ceph-key.pem"
View Source
const PemControllerManager = "controller-manager.pem"
View Source
const PemControllerManagerKey = "controller-manager-key.pem"
View Source
const PemElasticsearch = "elasticsearch.pem"
View Source
const PemElasticsearchKey = "elasticsearch-key.pem"
View Source
const PemGrafana = "grafana.pem"
View Source
const PemGrafanaKey = "grafana-key.pem"
View Source
const PemKubelet = "kubelet-{{.Name}}.pem"
View Source
const PemKubeletKey = "kubelet-{{.Name}}-key.pem"
View Source
const PemKubernetes = "kubernetes.pem"
View Source
const PemKubernetesDashboard = "kubernetes-dashboard.pem"
View Source
const PemKubernetesDashboardKey = "kubernetes-dashboard-key.pem"
View Source
const PemKubernetesKey = "kubernetes-key.pem"
View Source
const PemMinio = "minio.pem"
View Source
const PemMinioKey = "minio-key.pem"
View Source
const PemPrometheus = "prometheus.pem"
View Source
const PemPrometheusKey = "prometheus-key.pem"
View Source
const PemProxy = "proxy.pem"
View Source
const PemProxyKey = "proxy-key.pem"
View Source
const PemScheduler = "scheduler.pem"
View Source
const PemSchedulerKey = "scheduler-key.pem"
View Source
const PemServiceAccount = "service-account.pem"
View Source
const PemServiceAccountKey = "service-account-key.pem"
View Source
const PemSnapshotValidationWebhook = "snapshot-validation-webhook.pem"
View Source
const PemSnapshotValidationWebhookKey = "snapshot-validation-webhook-key.pem"
View Source
const PemVirtualIp = "virtual-ip.pem"
View Source
const PemVirtualIpKey = "virtual-ip-key.pem"
View Source
const PortApiServer uint16 = 6443
View Source
const PortCephManager uint16 = 30700
View Source
const PortCephRadosGateway uint16 = 30750
View Source
const PortCerebro uint16 = 30990
View Source
const PortGrafana uint16 = 30900
View Source
const PortKibana uint16 = 30980
View Source
const PortKubernetesDashboard uint16 = 32443
View Source
const PortLoadBalancer uint16 = 16443
View Source
const PortMinio uint16 = 30800
View Source
const PortVipRaftController uint16 = 16277

Ports

View Source
const PortVipRaftWorker uint16 = 16728
View Source
const PortWordpress uint16 = 30100
View Source
const ProjectTitle = "Kubernetes - The Easier Way"

Settings

View Source
const PrometheusCertificates = "prometheus-certificates"
View Source
const PrometheusSize = 2
View Source
const PublicNetwork = "192.168.100.0/24"
View Source
const ResolvConf = "/etc/resolv.conf"
View Source
const RsaSize = 2048
View Source
const RuncDownloadUrl = "https://github.com/opencontainers/runc/releases/download/v{{.Versions.Runc}}/runc.amd64"
View Source
const ServiceConfig = ServiceName + ".service"
View Source
const ServiceName = "k8s-tew"

Service

View Source
const SubdirectoryBinary = "bin"
View Source
const SubdirectoryCeph = "ceph"
View Source
const SubdirectoryCephBootstrapMds = "bootstrap-mds"
View Source
const SubdirectoryCephBootstrapOsd = "bootstrap-osd"
View Source
const SubdirectoryCephBootstrapRbd = "bootstrap-rbd"
View Source
const SubdirectoryCephBootstrapRgw = "bootstrap-rgw"
View Source
const SubdirectoryCertificates = "ssl"
View Source
const SubdirectoryCni = "cni"
View Source
const SubdirectoryConfig = "etc"
View Source
const SubdirectoryContainerd = "containerd"
View Source
const SubdirectoryCri = "cri"
View Source
const SubdirectoryCsiCephfsPlugin = "csi-cephfsplugin"
View Source
const SubdirectoryCsiRbdPlugin = "csi-rbdplugin"
View Source
const SubdirectoryEtcd = "etcd"
View Source
const SubdirectoryHelm = "helm"
View Source
const SubdirectoryHost = "host"
View Source
const SubdirectoryImages = "images"
View Source
const SubdirectoryK8s = "k8s"
View Source
const SubdirectoryK8sTew = "k8s-tew"
View Source
const SubdirectoryKubeconfig = "kubeconfig"
View Source
const SubdirectoryKubelet = "kubelet"
View Source
const SubdirectoryLibrary = "lib"
View Source
const SubdirectoryLoadBalancer = "lb"
View Source
const SubdirectoryLogging = "log"
View Source
const SubdirectoryManifests = "manifests"
View Source
const SubdirectoryOptional = "opt"
View Source
const SubdirectoryPlugins = "plugins"
View Source
const SubdirectoryPluginsRegistry = "plugins_registry"
View Source
const SubdirectoryPods = "pods"
View Source
const SubdirectoryProfileD = "profile.d"
View Source
const SubdirectoryRun = "run"
View Source
const SubdirectorySecurity = "security"
View Source
const SubdirectorySetup = "setup"
View Source
const SubdirectorySystem = "system"
View Source
const SubdirectorySystemd = "systemd"
View Source
const SubdirectoryTemporary = "tmp"

Sub-Directories

View Source
const SubdirectoryVariable = "var"
View Source
const SubdirectoryVelero = "velero"
View Source
const TemplateAlertManagerSetup = "k8s/setup/monitoring/alert-manager.yaml"
View Source
const TemplateCalicoSetup = "k8s/setup/networking/calico.yaml"
View Source
const TemplateCephClientAdminKeyring = "ceph/client-admin.keyring"
View Source
const TemplateCephClientKeyring = "ceph/client.keyring"
View Source
const TemplateCephConfig = "ceph/ceph.conf"
View Source
const TemplateCephCsi = "k8s/setup/storage/ceph-csi.yaml"
View Source
const TemplateCephMonitorKeyring = "ceph/monitor.keyring"
View Source
const TemplateCephSecrets = "k8s/setup/storage/ceph-secrets.yaml"
View Source
const TemplateCephSetup = "k8s/setup/storage/ceph-setup.yaml"
View Source
const TemplateCertManagerSetup = "k8s/setup/networking/cert-manager.yaml"
View Source
const TemplateConfigMap = "k8s/config-map.yaml"
View Source
const TemplateContainerdToml = "k8s/cri/containerd.toml"

Templates

View Source
const TemplateCorednsSetup = "k8s/setup/dns/coredns.yaml"
View Source
const TemplateCredentials = "k8s/credentials.yaml"
View Source
const TemplateEfkSetup = "k8s/setup/logging/efk.yaml"
View Source
const TemplateEncryptionConfig = "k8s/encryption-config.yaml"
View Source
const TemplateEnvironment = "system/environment.sh"
View Source
const TemplateGobetweenToml = "k8s/lb/gobetween.toml"
View Source
const TemplateGrafanaDashboards = "k8s/setup/monitoring/grafana-dashboards.yaml"
View Source
const TemplateGrafanaSetup = "k8s/setup/monitoring/grafana.yaml"
View Source
const TemplateHelmSetup = "k8s/setup/management/helm.yaml"
View Source
const TemplateK8sTewProfile = "system/k8s-tew.sh"
View Source
const TemplateK8sTewService = "system/k8s-tew.service"
View Source
const TemplateKubeProxyConfiguration = "k8s/kube-proxy-configuration.yaml"
View Source
const TemplateKubeSchedulerConfiguration = "k8s/kube-scheduler-configuration.yaml"
View Source
const TemplateKubeStateMetricsSetup = "k8s/setup/monitoring/kube-state-metrics.yaml"
View Source
const TemplateKubeconfig = "k8s/kubeconfig.yaml"
View Source
const TemplateKubeletConfiguration = "k8s/kubelet-configuration.yaml"
View Source
const TemplateKubeletSetup = "k8s/setup/kubelet-setup.yaml"
View Source
const TemplateKubernetesDashboardSetup = "k8s/setup/management/kubernetes-dashboard.yaml"
View Source
const TemplateLetsencryptClusterIssuerSetup = "k8s/setup/ingress/letsencrypt-cluster-issuer.yaml"
View Source
const TemplateManifestEtcd = "k8s/manifests/etcd.yaml"
View Source
const TemplateManifestGobetween = "k8s/manifests/gobetween.yaml"
View Source
const TemplateManifestKubeApiserver = "k8s/manifests/kube-apiserver.yaml"
View Source
const TemplateManifestKubeControllerManager = "k8s/manifests/kube-controller-manager.yaml"
View Source
const TemplateManifestKubeProxy = "k8s/manifests/kube-proxy.yaml"
View Source
const TemplateManifestKubeScheduler = "k8s/manifests/kube-scheduler.yaml"
View Source
const TemplateManifestVirtualIP = "k8s/manifests/virtual-ip.yaml"
View Source
const TemplateMetalLBSetup = "k8s/setup/networking/metallb.yaml"
View Source
const TemplateMetricsServerSetup = "k8s/setup/monitoring/metrics-server.yaml"
View Source
const TemplateNginxIngressSetup = "k8s/setup/networking/nginx-ingress.yaml"
View Source
const TemplateNodeExporterSetup = "k8s/setup/monitoring/node-exporter.yaml"
View Source
const TemplatePrometheusAlerts = "k8s/setup/monitoring/prometheus-alerts.yaml"
View Source
const TemplatePrometheusRules = "k8s/setup/monitoring/prometheus-rules.yaml"
View Source
const TemplatePrometheusSetup = "k8s/setup/monitoring/prometheus.yaml"
View Source
const TemplateServiceAccount = "k8s/service-account.yaml"
View Source
const TemplateVeleroSetup = "k8s/setup/backup/velero.yaml"
View Source
const TemplateWordpressSetup = "k8s/setup/miscellaneous/wordpress.yaml"
View Source
const Username = "k8s-tew"
View Source
const VeleroBaseName = "velero-{{.Versions.Velero | image_tag}}-linux-amd64"
View Source
const VeleroDownloadUrl = "https://github.com/heptio/velero/releases/download/{{.Versions.Velero | image_tag}}/{{.Filename}}.tar.gz"
View Source
const VersionAlertManager = "quay.io/prometheus/alertmanager:v0.21.0"
View Source
const VersionBusybox = "docker.io/library/busybox:1.36.1"
View Source
const VersionCalicoCni = "quay.io/calico/cni:v3.27.3"
View Source
const VersionCalicoKubeControllers = "quay.io/calico/kube-controllers:v3.27.3"
View Source
const VersionCalicoNode = "quay.io/calico/node:v3.27.3"
View Source
const VersionCalicoTypha = "quay.io/calico/typha:v3.27.3"
View Source
const VersionCeph = "quay.io/ceph/ceph:v18.2.2"
View Source
const VersionCerebro = "docker.io/lmenezes/cerebro:0.9.3"
View Source
const VersionCertManagerAcmeSolver = "quay.io/jetstack/cert-manager-acmesolver:v1.14.5"
View Source
const VersionCertManagerCAInjector = "quay.io/jetstack/cert-manager-cainjector:v1.14.5"
View Source
const VersionCertManagerController = "quay.io/jetstack/cert-manager-controller:v1.14.5"
View Source
const VersionCertManagerCtl = "quay.io/jetstack/cert-manager-ctl:v1.9.1"
View Source
const VersionCertManagerStartupAPICheck = "quay.io/jetstack/cert-manager-startupapicheck:v1.14.5"
View Source
const VersionCertManagerWebHook = "quay.io/jetstack/cert-manager-webhook:v1.14.5"
View Source
const VersionConfig = "2.4.0"
View Source
const VersionContainerd = "1.7.16"
View Source
const VersionCoreDNS = "docker.io/coredns/coredns:1.11.1"
View Source
const VersionCrictl = "1.30.0"
View Source
const VersionCsiAttacher = "registry.k8s.io/sig-storage/csi-attacher:v4.5.0"
View Source
const VersionCsiCephPlugin = "quay.io/cephcsi/cephcsi:v3.11.0"
View Source
const VersionCsiDriverRegistrar = "registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.10.0"
View Source
const VersionCsiProvisioner = "registry.k8s.io/sig-storage/csi-provisioner:v4.0.0"
View Source
const VersionCsiResizer = "registry.k8s.io/sig-storage/csi-resizer:v1.10.0"
View Source
const VersionCsiSnapshotController = "registry.k8s.io/sig-storage/snapshot-controller:v7.0.1"
View Source
const VersionCsiSnapshotValidationWebhook = "registry.k8s.io/sig-storage/snapshot-validation-webhook:v7.0.1"
View Source
const VersionCsiSnapshotter = "registry.k8s.io/sig-storage/csi-snapshotter:v7.0.0"
View Source
const VersionElasticsearch = "docker.elastic.co/elasticsearch/elasticsearch:7.11.2"
View Source
const VersionEtcd = "quay.io/coreos/etcd:v3.5.13"
View Source
const VersionFluentBit = "docker.io/fluent/fluent-bit:1.7.2"
View Source
const VersionGobetween = "docker.io/yyyar/gobetween:0.8.0"
View Source
const VersionGrafana = "docker.io/grafana/grafana:7.4.3"
View Source
const VersionHelm = "3.14.4"
View Source
const VersionK8s = "v1.30.0"
View Source
const VersionKibana = "docker.elastic.co/kibana/kibana:7.11.2"
View Source
const VersionKubeAPIServer = KubernetesRegistry + "/kube-apiserver:" + VersionK8s
View Source
const VersionKubeControllerManager = KubernetesRegistry + "/kube-controller-manager:" + VersionK8s
View Source
const VersionKubeProxy = KubernetesRegistry + "/kube-proxy:" + VersionK8s
View Source
const VersionKubeScheduler = KubernetesRegistry + "/kube-scheduler:" + VersionK8s
View Source
const VersionKubeStateMetrics = "registry.k8s.io/kube-state-metrics/kube-state-metrics:v2.12.0"
View Source
const VersionKubernetesDashboardApi = "docker.io/kubernetesui/dashboard-api:1.5.0"
View Source
const VersionKubernetesDashboardAuth = "docker.io/kubernetesui/dashboard-auth:1.1.3"
View Source
const VersionKubernetesDashboardKong = "docker.io/library/kong:3.6"
View Source
const VersionKubernetesDashboardMetricsScraper = "docker.io/kubernetesui/dashboard-metrics-scraper:1.1.1"
View Source
const VersionKubernetesDashboardWeb = "docker.io/kubernetesui/dashboard-web:1.3.0"
View Source
const VersionMetalLBController = "quay.io/metallb/controller:v0.9.5"
View Source
const VersionMetalLBSpeaker = "quay.io/metallb/speaker:v0.9.5"
View Source
const VersionMetricsScraper = "docker.io/kubernetesui/metrics-scraper:v1.0.8"
View Source
const VersionMetricsServer = "registry.k8s.io/metrics-server/metrics-server:v0.7.1"
View Source
const VersionMinioClient = "docker.io/minio/mc:RELEASE.2021-03-12T03-36-59Z"
View Source
const VersionMinioServer = "docker.io/minio/minio:RELEASE.2021-03-12T00-00-47Z"
View Source
const VersionMysql = "docker.io/library/mysql:8.0.23"
View Source
const VersionNginxIngressAdmissionWebhook = "registry.k8s.io/ingress-nginx/kube-webhook-certgen:v1.4.1"
View Source
const VersionNginxIngressController = "registry.k8s.io/ingress-nginx/controller:v1.10.1"
View Source
const VersionNodeExporter = "quay.io/prometheus/node-exporter:v1.7.0"
View Source
const VersionPause = KubernetesRegistry + "/pause:3.9"
View Source
const VersionPrometheus = "quay.io/prometheus/prometheus:v2.22.0"
View Source
const VersionRunc = "1.1.12"
View Source
const VersionVelero = "docker.io/velero/velero:v1.9.0"
View Source
const VersionVeleroPluginAWS = "docker.io/velero/velero-plugin-for-aws:v1.6.1"
View Source
const VersionVeleroPluginCSI = "docker.io/velero/velero-plugin-for-csi:v0.4.2"
View Source
const VersionVeleroResticRestoreHelper = "docker.io/velero/velero-restic-restore-helper:v1.5.3"
View Source
const VersionVirtualIP = "docker.io/darxkies/virtual-ip:1.0.1"
View Source
const VersionWordpress = "docker.io/library/wordpress:5.7.0-apache"
View Source
const WordpressSetup = "wordpress-setup.yaml"

Variables

This section is empty.

Functions

func ApplyTemplate

func ApplyTemplate(label, content string, data interface{}, alternativeDelimiters bool) (string, error)

ApplyTemplate generates a string using a template

func ApplyTemplateAndSave

func ApplyTemplateAndSave(label, templateName string, data interface{}, filename string, force bool, extendedDelimiters bool, fileMode os.FileMode) error

ApplyTemplateAndSave generates the content of a file based on a template

func CreateDirectoryIfMissing

func CreateDirectoryIfMissing(directoryName string) error

CreateDirectoryIfMissing creates a directory if it does not exist

func CreateFileIfMissing

func CreateFileIfMissing(filename, content string) error

CreateFileIfMissing writes a string to a file

func ExtractImageName

func ExtractImageName(value string) string

ExtractImageName returns the name of a Docker image

func ExtractImageTag

func ExtractImageTag(value string) string

ExtractImageTag returns the tag from a Docker image

func FileExists

func FileExists(filename string) bool

FileExists returns true if a file exists

func GenerateCephKey

func GenerateCephKey() string

GenerateCephKey returns a valid ceph key

func GetBase64OfPEM

func GetBase64OfPEM(filename string) (string, error)

GetBase64OfPEM reads the content of a PEM file and converts it to Base64

func GetCSIMounts

func GetCSIMounts(destinationPrefix string) []string

func GetOSName

func GetOSName() string

GetOSName returns the name of the operating system

func GetOSNameAndRelease

func GetOSNameAndRelease() string

GetOSNameAndRelease returns the name of the operating system and the operating system version

func GetOSRelease

func GetOSRelease() string

GetOSRelease returns the version of the operating system

func GetTemplate

func GetTemplate(name string) string

func GetURL

func GetURL(protocol, ip string, port uint16) string

GetURL assembles a URL

func GetWorkingDirectory

func GetWorkingDirectory() (string, error)

GetWorkingDirectory returns the working directory of the executable

func HasOS

func HasOS(os []string) bool

HasOS checks if parameter os contains the name of the current operating system

func HideProgress

func HideProgress()

func IncreaseProgressStep

func IncreaseProgressStep()

func IsRoot

func IsRoot() bool

IsRoot returns true if the program is executed with root rights

func ListSubdirectories

func ListSubdirectories(directoryPath string) ([]string, error)

func LogDebugFilename

func LogDebugFilename(message, filename string)

func LogFilename

func LogFilename(message, filename string)

func LogURL

func LogURL(message, url string)

func MoveFile

func MoveFile(sourceFilename, targetFilename string) error

MoveFile copies a files and then removes the original

func OpenWebBrowser

func OpenWebBrowser(name, url string) error

OpenWebBrowser starts a web browser

func PathExists

func PathExists(path string) bool

func ReadFile

func ReadFile(filename string) (string, error)

ReadFile reads the content of a file

func RemoveDirectoryWithTimeout

func RemoveDirectoryWithTimeout(directoryPath string, timeout time.Duration) error

func RunCommand

func RunCommand(command string) error

RunCommand executes a shell command

func RunCommandWithConsoleOutput

func RunCommandWithConsoleOutput(command string) error

RunCommandWithOutput execute a shell command and return its output

func RunCommandWithOutput

func RunCommandWithOutput(command string) (string, error)

RunCommandWithOutput execute a shell command and return its output

func SetDebug

func SetDebug(_debug bool)

func SetProgressSteps

func SetProgressSteps(steps int)

func SetupLogger

func SetupLogger()

func ShowProgress

func ShowProgress()

func SupressProgress

func SupressProgress(hide bool)

func Unmount

func Unmount(path string) error

func WaitForSignal

func WaitForSignal(signal <-chan struct{}, timeout uint) error

WaitForSignal exists when a signal was fired or a timeout occurred

Types

type Checksum

type Checksum struct {
	// contains filtered or unexported fields
}

type Checksums

type Checksums struct {
	// contains filtered or unexported fields
}

func NewChecksums

func NewChecksums(filename, baseDirectory string) *Checksums

func (*Checksums) GetChecksum

func (checksums *Checksums) GetChecksum(targetFilename string) (result string, error error)

func (*Checksums) Load

func (checksums *Checksums) Load() error

func (*Checksums) Save

func (checksums *Checksums) Save() error

type Errors

type Errors []error

func RunParallelTasks

func RunParallelTasks(tasks Tasks, parallel bool) (errors Errors)

type Limiter

type Limiter struct {
	// contains filtered or unexported fields
}

func NewLimiter

func NewLimiter(limit int) *Limiter

func (Limiter) Lock

func (limiter Limiter) Lock()

func (Limiter) Unlock

func (limiter Limiter) Unlock()

type Task

type Task func() error

type Tasks

type Tasks []Task

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL