Git Product home page Git Product logo

cluster-api-provider-hcloud's Introduction

cluster-api-provider-hcloud

New project ->: https://github.com/syself/cluster-api-provider-hetzner

⚠️ Deprecation notice: We decided to archive this project and to start a fresh one out of several reasons. We wanted to re-design the structure of the project. For example, we got rid of Bazel and Packer and started with the latest skaffolding of kubebuilder. This makes it more comparable to the other provider integrations and easier to use. We are no longer accepting pull requests or providing support. We urge all cluster-api-provider-hcloud users to migrate to cluster-api-provider-hetzner as soon as possible.

Cluster API infrastructure provider for Hetzner Cloud https://hetzner.cloud

Docs

https://docs.capihc.com/ or under ./docs/src

Time estimation

Task Time
Full cluster ~15-30min
For the packer ~10-15min
Snapshot ~2-3min
First control-plane, worker-nodes are created after ~4min
Cluster creation without packer and snapshot 3 control planes, 3 worker ~10min
Worker upscale ~1-2min
Worker downscale ~20s
Control plane upscale per node ~2.5min
Control plane downscale per node ~1min

Quick start

More information available in the Cluster API - Quick Start guide

Before you can start you need a management Cluster. If you have no management cluster you can use the ./demo/setup.sh to get a kind cluster. If you are not using the script because you have already a managment cluster please ensure to have the following enabled:

export EXP_CLUSTER_RESOURCE_SET=true
clusterctl init --core cluster-api:v0.3.13

Please ensure you have a recent clusterctl release (tested with v0.3.16). You can test with clusterctl version

Now we can start by creating a secret in management cluster. $TOKEN is a placeholder for your HETZNER API Token. You can create one in your Project under security/API TOKENS.

kubectl create secret generic hetzner-token --from-literal=token=$TOKEN

Then we need to create an SSH Key for the nodes. Because this is a quickstart we have specified the name of the Key, but of course feel free to change the name, but remember to do it also in cluster.yaml file. Then upload the public Key to Hetzner Cloud.

ssh-keygen -t ed25519 -C "[email protected]" -f ~/.ssh/cluster

For deploying necessary applications like the CNI, CCM, CSI etc. We use the ClusterResourceSets and apply them to our managment cluster.

kubectl apply -f ./demo/ClusterResourceSets

Then we need to register this infrastructure provider in your $HOME/.cluster-api/clusterctl.yaml:

providers:
  - name: "hcloud"
    url: "https://github.com/cluster-api-provider-hcloud/cluster-api-provider-hcloud/releases/latest/infrastructure-components.yaml"
    type: "InfrastructureProvider"

Now we deploy the API components to the management cluster

clusterctl init --infrastructure hcloud:v0.1.4

Now we can deploy our first Cluster. For production use it is recommended to use your own templates with all configurations. [name] is the placeholder for your cluster name like cluster-dev

clusterctl config cluster [name] | kubectl apply -f -

or use helm

helm install cluster ./demo/helm-charts/cluster-demo

You can check now the status of your target cluster via your management cluster:

kubectl get cluster --all-namespaces

### To verify the first control plane is up:
kubectl get kubeadmcontrolplane --all-namespaces

To get access to your target cluster you can retrieve the kubeconfig file and use it via ENV. [name] is the placeholder for your above defined cluster name.

export KUBECONFIG_GUEST=$(pwd)/.kubeconfig-[name]
kubectl --namespace=default get secret [name]-kubeconfig \
   -o jsonpath={.data.value} | base64 --decode \
   > $KUBECONFIG_GUEST

To verify you have access try:

KUBECONFIG=$KUBECONFIG_GUEST kubectl get nodes

If you want you can now move all the cluster-api Resources from your management Cluster to your Target Cluster:

export EXP_CLUSTER_RESOURCE_SET=true
KUBECONFIG=$KUBECONFIG_GUEST clusterctl init --core cluster-api:v0.3.16
KUBECONFIG=$KUBECONFIG_GUEST clusterctl init --infrastructure hcloud:v0.1.4
clusterctl move --to-kubeconfig $KUBECONFIG_GUEST

### You also need to create your Hetzner Token secret on the new management cluster
### If you use helm please keep in mind to also move the helm secret 

To delete the cluster (if management cluster not equal target cluster)

kubectl delete cluster [name]

or with helm

helm uninstall cluster

To delete your managment cluster (setup via setup.sh)

kind delete cluster --name capi-hcloud

Debugging

### Getting information about the cluster
KUBECONFIG=$KUBECONFIG_GUEST kubectl get all,nodes -A

### Getting informations about cluster-api
watch kubectl get hcloudclusters,cluster,hcloudmachines,baremetalmachines,machines

### cluster-info
KUBECONFIG=$KUBECONFIG_GUEST kubectl get cm cluster-info -n kube-public -o yaml

# Logs
### Provider Integration
kubectl logs -f deployment/capi-hcloud-controller-manager -c manager -n capi-hcloud-system

### Cluster-API Controller
kubectl logs -f deployment/capi-controller-manager -c manager -n capi-system

### Bootstrap Controller
kubectl logs -f deployment/capi-kubeadm-bootstrap-controller-manager -c manager  -n capi-kubeadm-bootstrap-system

### Kubeadm Control-plane Controller
kubectl logs -f deployment/capi-kubeadm-control-plane-controller-manager -c manager  -n capi-kubeadm-control-plane-system

### Kubernetes Events
kubectl get events -o custom-columns=FirstSeen:.firstTimestamp,LastSeen:.lastTimestamp,Count:.count,From:.source.component,Type:.type,Re│
ason:.reason,Message:.message --watch

### Get kubeadm-config
kubectl -n kube-system get cm kubeadm-config -o yaml

For Developers

Please use this for testing!

See ./docs/src/developers or https://docs.capihc.com/developer/developer.html

Prerequisites

  • clusterctl

  • docker

  • kind

  • kubectl

  • kustomize

  • kubebuilder

  • packer

  • BAZEL

  • Go 1.13

  • gomock

  • watch (On MAC: brew install watch)

  • JQ (On MAC: brew install jq)

  • Running development version

This creates the management cluster with all the controllers

# Deploy kind cluster with cluster-api core componets
./demo/setup.sh

# Build project and deploy to local cluster
make deploy_kind
  • Applying the target cluster with demo-cluster
# Please create an SSH Key for later access on the nodes.
ssh-keygen -t ed25519 -C "[email protected]" -f ~/.ssh/cluster

# Create a Project on Hetzner Cloud and upload the public key. 

# Create a token on Hetzner Cloud and apply it as secret
kubectl create secret generic hetzner-token --from-literal=token=$TOKEN

#For automatic installation of manifests we use ClusterResourceSets
kubectl apply -f demo/ClusterResourceSets

## You can choose which manifests should be applyed by setting the value of the labels under kind: Cluster

# Apply the manifest to your management cluster; use quickstart guide for getting access to the target cluster
kubectl apply -f ./demo/cluster-minimal.yaml

## Get Logs:
kubectl logs -f deployment/capi-hcloud-controller-manager -c manager --v=4 -n capi-hcloud-system

# Deleting the target cluster
kubectl delete -f ./demo/demo-cluster.yaml

# Deleting the controller
make delete_capihc

# Deleting the management cluster
kind delete cluster --name capi-hcloud

cluster-api-provider-hcloud's People

Contributors

batistein avatar dippynark avatar janiskemper avatar simonswine avatar toonsevrin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

cluster-api-provider-hcloud's Issues

MachineHealthChecks are not working

What steps did you take and what happened:
Machine HealthChecks are not working used this configuration:

apiVersion: cluster.x-k8s.io/v1alpha3
kind: MachineHealthCheck
metadata:
  name: cluster-dev-worker-unhealthy-1m
spec:
  clusterName: cluster-dev
  maxUnhealthy: 10%
  nodeStartupTimeout: 5m
  selector:
    matchLabels:
      nodepool: cluster-dev-worker-0
  unhealthyConditions:
  - type: Ready
    status: Unknown
    timeout: 60s
  - type: Ready
    status: "False"
    timeout: 60s

Automatically add floating IPs to Metallb

User Story
As a user, when creating a Floating IP in Hetzner Cloud I would like to have it automatically configured in MetalLB.

There are several practical solutions for this:

If you create a Floating IP in the HCloud, it is simply added to the MetalLB instance. The controller would have to be adapted for this. However, the problem is that when using multiple instances of MetalLB, we can not specify where the IP would be assigned.

We could add better documentation to simplify the steps. For this we should solve Issue #40.

MetalLB BGP Mode with pfsense

User Story

To get real load balancing and not just failover we should run MetalLB in BGP mode. This could be achieved by using something like pfsense.

kubelet and kubeapi security settings

User Story
It should be possible to set the kubeapiserver settings and kubelet settings yourself.

Detailed Description
We need documentation how to do this. Also what the CSR_Controller does

Add image hardened - Ubuntu 20.04

User Story

We should provide an Ubuntu image that builds all dependencies from binaries.

Detailed Description

  • disable public network interface
  • SSH Root Login disabled
  • SSH Port set via variable
  • Allow SSH only from private network
  • SELinux
  • Firewall
  • Fail2Ban
  • CRI-o with Gvisor as default and runc for fallback
  • MetalLb Firewall configuration
  • Security settings according to CIS for Kubernetes and Ubuntu

Support kubernetes version > v1.20.0

What steps did you take and what happened:
clusterctl init --infrastructure hcloud:v0.1.4 does not work with kubernetes version > v1.20.0
Error message:

Error: failed to get provider components for the "hcloud:v0.1.4" provider: failed to set the TargetNamespace on the components: converting (v1beta1.ValidatingWebhookConfiguration) to (v1.ValidatingWebhookConfiguration): unknown conversion

Anything else you would like to add:
Components should be updated to api-version v1. Automatic conversion does not work correctly.

Environment:

  • Cluster-api version: v0.4.1
  • Cluster-api-provider-hcloud version: v0.1.4
  • Kubernetes version: (use kubectl version):
Client Version: version.Info{Major:"1", Minor:"22", GitVersion:"v1.22.0", GitCommit:"c2b5237ccd9c0f1d600d3072634ca66cefdf272f", GitTreeState:"clean", BuildDate:"2021-08-04T18:03:20Z", GoVersion:"go1.16.6", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.1", GitCommit:"5e58841cce77d4bc13713ad2b91fa0d961e69192", GitTreeState:"clean", BuildDate:"2021-05-12T14:12:29Z", GoVersion:"go1.16.4", Compiler:"gc", Platform:"linux/amd64"}
  • OS (e.g. from /etc/os-release):
NAME="CentOS Linux"
VERSION="8"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="8"
PLATFORM_ID="platform:el8"
PRETTY_NAME="CentOS Linux 8"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:8"
HOME_URL="https://centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-8"
CENTOS_MANTISBT_PROJECT_VERSION="8"

Hardcode centos release

We should make sure that we somehow hardcode the centos release, to ensure we have reproducible image builds

Private network - define CIDR by variable

We should find a solution with which we can define the private network by variable. Similar to the POD and SERVICE CIDR

func (s *Service) defaults() *infrav1.HcloudNetworkSpec {
n := infrav1.HcloudNetworkSpec{}
n.CIDRBlock = "10.0.0.0/16"
n.Subnets = []infrav1.HcloudNetworkSubnetSpec{
{
NetworkZone: s.scope.HcloudCluster.Status.NetworkZone,
HcloudNetwork: infrav1.HcloudNetwork{
CIDRBlock: "10.0.0.0/24",
},
},
}
return &n
}

Add Multiimage support

User Story

As operator I would like to be able to select the operating system. I would also like to use my own configuration.

Detailed Description

We should create the possibility to use own images and also provide ready to use images. It should also be possible to use different images for control-planes, worker nodes and the bastion host.
For our images we should take a similar approach to the AMIs of AWS. https://github.com/kubernetes-sigs/cluster-api-provider-aws/blob/master/docs/amis.md

They version the images with the Kubernetes version and also with the operating system.

It would be best to use a separate folder for the images and structure it for example as follows:

 images
--- v1.17.5
------ Ubuntu 18.04
------ Centos 7
--- v1.18.2
------ Ubuntu 20.04
------ Centos 8

You could then also put your own images in the override folder

Add Ingress Manifests

User Story

As a operator I would like to use in a quick way ingress.

Detailed Description

We should provide the ability to define preinstalled Ingress Controllers:

  • Nginx Ingress Controller with cert-manager
  • Traefik
  • Istio

Documentation for Newbies

User Story

As a developer I would like to get all resources needed to start developing.

Detailed Description

We need Documentation for:

  • Resources
  • How to use the clusterapi
  • Architecture
  • Iterating with packer
  • Detailed Documentation of the core components and controllers
  • Good first issues

add Documentation of configurable settings

User Story

As a operator I would like to define my own settings. I would like to export the variables and generate my config and need detailed documentation of what is adjustable. A documentation which values are applicable would also be desirable

Detailed Description

  • CLUSTER NAME
  • POD CIDR
  • SERVICE CIDR
  • SSH KEYS
  • Location / Failure Domains
  • Machine Types

Add Rook Ceph with Hetzner Volume to get RWM

User Story

As a developer and operator I would like to have this preinstalled and configured manifest to test quicker or having a production ready workload cluster with usable storage class.

Error downloading packages -- No more mirrors to try

What steps did you take and what happened:
[A clear and concise description on how to REPRODUCE the bug.]

First of all thanks for the controller and the cluster api provider.

I try to start with the tutorial from the readme. But I got some error during the packer run. Maybe this is allready fix so my question is also will there be a new pre release in the near future?

	external/com_github_go_logr_zapr/zapr.go:128
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler
	external/io_k8s_sigs_controller_runtime/pkg/internal/controller/controller.go:258
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem
	external/io_k8s_sigs_controller_runtime/pkg/internal/controller/controller.go:232
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).worker
	external/io_k8s_sigs_controller_runtime/pkg/internal/controller/controller.go:211
k8s.io/apimachinery/pkg/util/wait.BackoffUntil.func1
	external/io_k8s_apimachinery/pkg/util/wait/wait.go:155
k8s.io/apimachinery/pkg/util/wait.BackoffUntil
	external/io_k8s_apimachinery/pkg/util/wait/wait.go:156
k8s.io/apimachinery/pkg/util/wait.JitterUntil
	external/io_k8s_apimachinery/pkg/util/wait/wait.go:133
k8s.io/apimachinery/pkg/util/wait.Until
	external/io_k8s_apimachinery/pkg/util/wait/wait.go:90", "logger": "controller-runtime.controller", "level": "error", "errorVerbose": "exit status 1 stdout=�[1;32mhcloud: output will be in this color.�[0m

�[1;32m==> hcloud: Creating temporary ssh key for server...�[0m
�[1;32m==> hcloud: Creating server...�[0m
�[1;32m==> hcloud: Using ssh communicator to connect: 157.90.29.56�[0m
�[1;32m==> hcloud: Waiting for SSH to become available...�[0m
�[1;32m==> hcloud: Connected to SSH!�[0m
�[1;32m==> hcloud: Provisioning with shell script: /packer-config/scripts/configure_base.sh�[0m
�[0;32m    hcloud: Loaded plugins: fastestmirror�[0m
�[0;32m    hcloud: Loading mirror speeds from cached hostfile�[0m
�[0;32m    hcloud:  * base: mirror.centos.org�[0m
�[0;32m    hcloud:  * extras: mirror.centos.org�[0m
�[0;32m    hcloud:  * updates: mirror.centos.org�[0m
�[1;31m==> hcloud: http://mirror.centos.org/centos/7.8.2003/os/x86_64/repodata/repomd.xml: [Errno 14] HTTP Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: To address this issue please refer to the below wiki article�[0m
�[1;31m==> hcloud:�[0m
�[1;31m==> hcloud: https://wiki.centos.org/yum-errors�[0m
�[1;31m==> hcloud:�[0m
�[1;31m==> hcloud: If above article doesn't help to resolve this issue please use https://bugs.centos.org/.�[0m
�[1;31m==> hcloud:�[0m
�[1;31m==> hcloud: Not using downloaded base/repomd.xml because it is older than what we have:�[0m
�[1;31m==> hcloud:   Current   : Thu Oct 29 21:03:00 2020�[0m
�[1;31m==> hcloud:   Downloaded: Wed Apr 22 01:37:50 2020�[0m
�[1;31m==> hcloud: Not using downloaded extras/repomd.xml because it is older than what we have:�[0m
�[1;31m==> hcloud:   Current   : Thu Nov 12 17:16:23 2020�[0m
�[1;31m==> hcloud:   Downloaded: Fri Aug  7 15:07:18 2020�[0m
�[1;31m==> hcloud: Not using downloaded updates/repomd.xml because it is older than what we have:�[0m
�[1;31m==> hcloud:   Current   : Mon Dec  7 14:22:58 2020�[0m
�[1;31m==> hcloud:   Downloaded: Mon Sep 14 15:18:15 2020�[0m
�[0;32m    hcloud: No packages marked for update�[0m
�[0;32m    hcloud: Loaded plugins: fastestmirror�[0m
�[0;32m    hcloud: Loading mirror speeds from cached hostfile�[0m
�[0;32m    hcloud:  * base: mirror.centos.org�[0m
�[0;32m    hcloud:  * extras: mirror.centos.org�[0m
�[0;32m    hcloud:  * updates: mirror.centos.org�[0m
�[0;32m    hcloud: Resolving Dependencies�[0m
�[0;32m    hcloud: --> Running transaction check�[0m
�[0;32m    hcloud: ---> Package epel-release.noarch 0:7-11 will be installed�[0m
�[0;32m    hcloud: --> Finished Dependency Resolution�[0m
�[0;32m    hcloud:�[0m
�[0;32m    hcloud: Dependencies Resolved�[0m
�[0;32m    hcloud:�[0m
�[0;32m    hcloud: ================================================================================�[0m
�[0;32m    hcloud:  Package                Arch             Version         Repository        Size�[0m
�[0;32m    hcloud: ================================================================================�[0m
�[0;32m    hcloud: Installing:�[0m
�[0;32m    hcloud:  epel-release           noarch           7-11            extras            15 k�[0m
�[0;32m    hcloud:�[0m
�[0;32m    hcloud: Transaction Summary�[0m
�[0;32m    hcloud: ================================================================================�[0m
�[0;32m    hcloud: Install  1 Package�[0m
�[0;32m    hcloud:�[0m
�[0;32m    hcloud: Total download size: 15 k�[0m
�[0;32m    hcloud: Installed size: 24 k�[0m
�[0;32m    hcloud: Downloading packages:�[0m
�[0;32m    hcloud: Running transaction check�[0m
�[0;32m    hcloud: Running transaction test�[0m
�[0;32m    hcloud: Transaction test succeeded�[0m
�[0;32m    hcloud: Running transaction�[0m
�[0;32m    hcloud:   Installing : epel-release-7-11.noarch                                     1/1�[0m
�[0;32m    hcloud:   Verifying  : epel-release-7-11.noarch                                     1/1�[0m
�[0;32m    hcloud:�[0m
�[0;32m    hcloud: Installed:�[0m
�[0;32m    hcloud:   epel-release.noarch 0:7-11�[0m
�[0;32m    hcloud:�[0m
�[0;32m    hcloud: Complete!�[0m
�[0;32m    hcloud: Loaded plugins: fastestmirror�[0m
�[0;32m    hcloud: Loading mirror speeds from cached hostfile�[0m
�[0;32m    hcloud:  * base: mirror.centos.org�[0m
�[0;32m    hcloud:  * epel: mirror.de.leaseweb.net�[0m
�[0;32m    hcloud:  * extras: mirror.centos.org�[0m
�[0;32m    hcloud:  * updates: mirror.centos.org�[0m
�[0;32m    hcloud: Resolving Dependencies�[0m
�[0;32m    hcloud: --> Running transaction check�[0m
�[0;32m    hcloud: ---> Package at.x86_64 0:3.1.13-24.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package firewalld.noarch 0:0.6.3-12.el7 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: python-firewall = 0.6.3-12.el7 for package: firewalld-0.6.3-12.el7.noarch�[0m
�[0;32m    hcloud: --> Processing Dependency: firewalld-filesystem = 0.6.3-12.el7 for package: firewalld-0.6.3-12.el7.noarch�[0m
�[0;32m    hcloud: --> Processing Dependency: ipset for package: firewalld-0.6.3-12.el7.noarch�[0m
�[0;32m    hcloud: --> Processing Dependency: ebtables for package: firewalld-0.6.3-12.el7.noarch�[0m
�[0;32m    hcloud: ---> Package git.x86_64 0:1.8.3.1-23.el7_8 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: perl-Git = 1.8.3.1-23.el7_8 for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl >= 5.008 for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(warnings) for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(vars) for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(strict) for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(lib) for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Term::ReadKey) for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Git) for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Getopt::Long) for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(File::stat) for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(File::Temp) for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(File::Spec) for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(File::Path) for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(File::Find) for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(File::Copy) for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(File::Basename) for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Exporter) for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Error) for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: /usr/bin/perl for package: git-1.8.3.1-23.el7_8.x86_64�[0m
�[0;32m    hcloud: ---> Package htop.x86_64 0:2.2.0-3.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package ipvsadm.x86_64 0:1.27-8.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package iscsi-initiator-utils.x86_64 0:6.2.0.874-19.el7 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: iscsi-initiator-utils-iscsiuio >= 6.2.0.874-19.el7 for package: iscsi-initiator-utils-6.2.0.874-19.el7.x86_64�[0m
�[0;32m    hcloud: ---> Package jq.x86_64 0:1.6-2.el7 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: libonig.so.5()(64bit) for package: jq-1.6-2.el7.x86_64�[0m
�[0;32m    hcloud: ---> Package nfs-utils.x86_64 1:1.3.0-0.68.el7 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: gssproxy >= 0.7.0-3 for package: 1:nfs-utils-1.3.0-0.68.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: rpcbind for package: 1:nfs-utils-1.3.0-0.68.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: quota for package: 1:nfs-utils-1.3.0-0.68.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libnfsidmap for package: 1:nfs-utils-1.3.0-0.68.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libevent for package: 1:nfs-utils-1.3.0-0.68.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: keyutils for package: 1:nfs-utils-1.3.0-0.68.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libnfsidmap.so.0()(64bit) for package: 1:nfs-utils-1.3.0-0.68.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libevent-2.0.so.5()(64bit) for package: 1:nfs-utils-1.3.0-0.68.el7.x86_64�[0m
�[0;32m    hcloud: ---> Package socat.x86_64 0:1.7.3.2-2.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package tmux.x86_64 0:1.8-4.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package unzip.x86_64 0:6.0-21.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package vim-enhanced.x86_64 2:7.4.629-7.el7 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: vim-common = 2:7.4.629-7.el7 for package: 2:vim-enhanced-7.4.629-7.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libperl.so()(64bit) for package: 2:vim-enhanced-7.4.629-7.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libgpm.so.2()(64bit) for package: 2:vim-enhanced-7.4.629-7.el7.x86_64�[0m
�[0;32m    hcloud: --> Running transaction check�[0m
�[0;32m    hcloud: ---> Package ebtables.x86_64 0:2.0.10-16.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package firewalld-filesystem.noarch 0:0.6.3-12.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package gpm-libs.x86_64 0:1.20.7-6.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package gssproxy.x86_64 0:0.7.0-29.el7 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: libini_config >= 1.3.1-31 for package: gssproxy-0.7.0-29.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libverto-module-base for package: gssproxy-0.7.0-29.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libref_array.so.1(REF_ARRAY_0.1.1)(64bit) for package: gssproxy-0.7.0-29.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libini_config.so.3(INI_CONFIG_1.2.0)(64bit) for package: gssproxy-0.7.0-29.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libini_config.so.3(INI_CONFIG_1.1.0)(64bit) for package: gssproxy-0.7.0-29.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libref_array.so.1()(64bit) for package: gssproxy-0.7.0-29.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libini_config.so.3()(64bit) for package: gssproxy-0.7.0-29.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libcollection.so.2()(64bit) for package: gssproxy-0.7.0-29.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libbasicobjects.so.0()(64bit) for package: gssproxy-0.7.0-29.el7.x86_64�[0m
�[0;32m    hcloud: ---> Package ipset.x86_64 0:7.1-1.el7 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: ipset-libs(x86-64) = 7.1-1.el7 for package: ipset-7.1-1.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libipset.so.13(LIBIPSET_4.8)(64bit) for package: ipset-7.1-1.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libipset.so.13(LIBIPSET_2.0)(64bit) for package: ipset-7.1-1.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libipset.so.13()(64bit) for package: ipset-7.1-1.el7.x86_64�[0m
�[0;32m    hcloud: ---> Package iscsi-initiator-utils-iscsiuio.x86_64 0:6.2.0.874-19.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package keyutils.x86_64 0:1.5.8-3.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package libevent.x86_64 0:2.0.21-4.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package libnfsidmap.x86_64 0:0.25-19.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package oniguruma.x86_64 0:6.8.2-1.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl.x86_64 4:5.16.3-297.el7 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Socket) >= 1.3 for package: 4:perl-5.16.3-297.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Scalar::Util) >= 1.10 for package: 4:perl-5.16.3-297.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl-macros for package: 4:perl-5.16.3-297.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(threads::shared) for package: 4:perl-5.16.3-297.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(threads) for package: 4:perl-5.16.3-297.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(constant) for package: 4:perl-5.16.3-297.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Time::Local) for package: 4:perl-5.16.3-297.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Time::HiRes) for package: 4:perl-5.16.3-297.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Storable) for package: 4:perl-5.16.3-297.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Socket) for package: 4:perl-5.16.3-297.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Scalar::Util) for package: 4:perl-5.16.3-297.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Pod::Simple::XHTML) for package: 4:perl-5.16.3-297.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Pod::Simple::Search) for package: 4:perl-5.16.3-297.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Filter::Util::Call) for package: 4:perl-5.16.3-297.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Carp) for package: 4:perl-5.16.3-297.el7.x86_64�[0m
�[0;32m    hcloud: ---> Package perl-Error.noarch 1:0.17020-2.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-Exporter.noarch 0:5.68-3.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-File-Path.noarch 0:2.09-2.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-File-Temp.noarch 0:0.23.01-3.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-Getopt-Long.noarch 0:2.40-3.el7 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Pod::Usage) >= 1.14 for package: perl-Getopt-Long-2.40-3.el7.noarch�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Text::ParseWords) for package: perl-Getopt-Long-2.40-3.el7.noarch�[0m
�[0;32m    hcloud: ---> Package perl-Git.noarch 0:1.8.3.1-23.el7_8 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-PathTools.x86_64 0:3.40-5.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-TermReadKey.x86_64 0:2.30-20.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-libs.x86_64 4:5.16.3-297.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package python-firewall.noarch 0:0.6.3-12.el7 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: python-slip-dbus for package: python-firewall-0.6.3-12.el7.noarch�[0m
�[0;32m    hcloud: ---> Package quota.x86_64 1:4.01-19.el7 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: quota-nls = 1:4.01-19.el7 for package: 1:quota-4.01-19.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: tcp_wrappers for package: 1:quota-4.01-19.el7.x86_64�[0m
�[0;32m    hcloud: ---> Package rpcbind.x86_64 0:0.2.0-49.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package vim-common.x86_64 2:7.4.629-7.el7 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: vim-filesystem for package: 2:vim-common-7.4.629-7.el7.x86_64�[0m
�[0;32m    hcloud: --> Running transaction check�[0m
�[0;32m    hcloud: ---> Package ipset-libs.x86_64 0:7.1-1.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package libbasicobjects.x86_64 0:0.1.1-32.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package libcollection.x86_64 0:0.7.0-32.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package libini_config.x86_64 0:1.3.1-32.el7 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: libpath_utils.so.1(PATH_UTILS_0.2.1)(64bit) for package: libini_config-1.3.1-32.el7.x86_64�[0m
�[0;32m    hcloud: --> Processing Dependency: libpath_utils.so.1()(64bit) for package: libini_config-1.3.1-32.el7.x86_64�[0m
�[0;32m    hcloud: ---> Package libref_array.x86_64 0:0.1.5-32.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package libverto-libevent.x86_64 0:0.2.5-4.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-Carp.noarch 0:1.26-244.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-Filter.x86_64 0:1.49-3.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-Pod-Simple.noarch 1:3.28-4.el7 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Pod::Escapes) >= 1.04 for package: 1:perl-Pod-Simple-3.28-4.el7.noarch�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Encode) for package: 1:perl-Pod-Simple-3.28-4.el7.noarch�[0m
�[0;32m    hcloud: ---> Package perl-Pod-Usage.noarch 0:1.63-3.el7 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(Pod::Text) >= 3.15 for package: perl-Pod-Usage-1.63-3.el7.noarch�[0m
�[0;32m    hcloud: --> Processing Dependency: perl-Pod-Perldoc for package: perl-Pod-Usage-1.63-3.el7.noarch�[0m
�[0;32m    hcloud: ---> Package perl-Scalar-List-Utils.x86_64 0:1.27-248.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-Socket.x86_64 0:2.010-5.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-Storable.x86_64 0:2.45-3.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-Text-ParseWords.noarch 0:3.29-4.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-Time-HiRes.x86_64 4:1.9725-3.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-Time-Local.noarch 0:1.2300-2.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-constant.noarch 0:1.27-2.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-macros.x86_64 4:5.16.3-297.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-threads.x86_64 0:1.87-4.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-threads-shared.x86_64 0:1.43-6.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package python-slip-dbus.noarch 0:0.4.0-4.el7 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: python-slip = 0.4.0-4.el7 for package: python-slip-dbus-0.4.0-4.el7.noarch�[0m
�[0;32m    hcloud: ---> Package quota-nls.noarch 1:4.01-19.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package tcp_wrappers.x86_64 0:7.6-77.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package vim-filesystem.x86_64 2:7.4.629-7.el7 will be installed�[0m
�[0;32m    hcloud: --> Running transaction check�[0m
�[0;32m    hcloud: ---> Package libpath_utils.x86_64 0:0.2.1-32.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-Encode.x86_64 0:2.51-7.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-Pod-Escapes.noarch 1:1.04-297.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-Pod-Perldoc.noarch 0:3.20-4.el7 will be installed�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(parent) for package: perl-Pod-Perldoc-3.20-4.el7.noarch�[0m
�[0;32m    hcloud: --> Processing Dependency: perl(HTTP::Tiny) for package: perl-Pod-Perldoc-3.20-4.el7.noarch�[0m
�[0;32m    hcloud: ---> Package perl-podlators.noarch 0:2.5.1-3.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package python-slip.noarch 0:0.4.0-4.el7 will be installed�[0m
�[0;32m    hcloud: --> Running transaction check�[0m
�[0;32m    hcloud: ---> Package perl-HTTP-Tiny.noarch 0:0.033-3.el7 will be installed�[0m
�[0;32m    hcloud: ---> Package perl-parent.noarch 1:0.225-244.el7 will be installed�[0m
�[0;32m    hcloud: --> Finished Dependency Resolution�[0m
�[0;32m    hcloud:�[0m
�[0;32m    hcloud: Dependencies Resolved�[0m
�[0;32m    hcloud:�[0m
�[0;32m    hcloud: ================================================================================�[0m
�[0;32m    hcloud:  Package                          Arch     Version              Repository�[0m
�[0;32m    hcloud:                                                                            Size�[0m
�[0;32m    hcloud: ================================================================================�[0m
�[0;32m    hcloud: Installing:�[0m
�[0;32m    hcloud:  at                               x86_64   3.1.13-24.el7        base       51 k�[0m
�[0;32m    hcloud:  firewalld                        noarch   0.6.3-12.el7         updates   448 k�[0m
�[0;32m    hcloud:  git                              x86_64   1.8.3.1-23.el7_8     base      4.4 M�[0m
�[0;32m    hcloud:  htop                             x86_64   2.2.0-3.el7          epel      103 k�[0m
�[0;32m    hcloud:  ipvsadm                          x86_64   1.27-8.el7           base       45 k�[0m
�[0;32m    hcloud:  iscsi-initiator-utils            x86_64   6.2.0.874-19.el7     base      423 k�[0m
�[0;32m    hcloud:  jq                               x86_64   1.6-2.el7            epel      167 k�[0m
�[0;32m    hcloud:  nfs-utils                        x86_64   1:1.3.0-0.68.el7     base      412 k�[0m
�[0;32m    hcloud:  socat                            x86_64   1.7.3.2-2.el7        base      290 k�[0m
�[0;32m    hcloud:  tmux                             x86_64   1.8-4.el7            base      243 k�[0m
�[0;32m    hcloud:  unzip                            x86_64   6.0-21.el7           base      171 k�[0m
�[0;32m    hcloud:  vim-enhanced                     x86_64   2:7.4.629-7.el7      base      1.1 M�[0m
�[0;32m    hcloud: Installing for dependencies:�[0m
�[0;32m    hcloud:  ebtables                         x86_64   2.0.10-16.el7        base      123 k�[0m
�[0;32m    hcloud:  firewalld-filesystem             noarch   0.6.3-12.el7         updates    51 k�[0m
�[0;32m    hcloud:  gpm-libs                         x86_64   1.20.7-6.el7         base       32 k�[0m
�[0;32m    hcloud:  gssproxy                         x86_64   0.7.0-29.el7         base      111 k�[0m
�[0;32m    hcloud:  ipset                            x86_64   7.1-1.el7            base       39 k�[0m
�[0;32m    hcloud:  ipset-libs                       x86_64   7.1-1.el7            base       64 k�[0m
�[0;32m    hcloud:  iscsi-initiator-utils-iscsiuio   x86_64   6.2.0.874-19.el7     base       94 k�[0m
�[0;32m    hcloud:  keyutils                         x86_64   1.5.8-3.el7          base       54 k�[0m
�[0;32m    hcloud:  libbasicobjects                  x86_64   0.1.1-32.el7         base       26 k�[0m
�[0;32m    hcloud:  libcollection                    x86_64   0.7.0-32.el7         base       42 k�[0m
�[0;32m    hcloud:  libevent                         x86_64   2.0.21-4.el7         base      214 k�[0m
�[0;32m    hcloud:  libini_config                    x86_64   1.3.1-32.el7         base       64 k�[0m
�[0;32m    hcloud:  libnfsidmap                      x86_64   0.25-19.el7          base       50 k�[0m
�[0;32m    hcloud:  libpath_utils                    x86_64   0.2.1-32.el7         base       28 k�[0m
�[0;32m    hcloud:  libref_array                     x86_64   0.1.5-32.el7         base       27 k�[0m
�[0;32m    hcloud:  libverto-libevent                x86_64   0.2.5-4.el7          base      8.9 k�[0m
�[0;32m    hcloud:  oniguruma                        x86_64   6.8.2-1.el7          epel      181 k�[0m
�[0;32m    hcloud:  perl                             x86_64   4:5.16.3-297.el7     base      8.0 M�[0m
�[0;32m    hcloud:  perl-Carp                        noarch   1.26-244.el7         base       19 k�[0m
�[0;32m    hcloud:  perl-Encode                      x86_64   2.51-7.el7           base      1.5 M�[0m
�[0;32m    hcloud:  perl-Error                       noarch   1:0.17020-2.el7      base       32 k�[0m
�[0;32m    hcloud:  perl-Exporter                    noarch   5.68-3.el7           base       28 k�[0m
�[0;32m    hcloud:  perl-File-Path                   noarch   2.09-2.el7           base       26 k�[0m
�[0;32m    hcloud:  perl-File-Temp                   noarch   0.23.01-3.el7        base       56 k�[0m
�[0;32m    hcloud:  perl-Filter                      x86_64   1.49-3.el7           base       76 k�[0m
�[0;32m    hcloud:  perl-Getopt-Long                 noarch   2.40-3.el7           base       56 k�[0m
�[0;32m    hcloud:  perl-Git                         noarch   1.8.3.1-23.el7_8     base       56 k�[0m
�[0;32m    hcloud:  perl-HTTP-Tiny                   noarch   0.033-3.el7          base       38 k�[0m
�[0;32m    hcloud:  perl-PathTools                   x86_64   3.40-5.el7           base       82 k�[0m
�[0;32m    hcloud:  perl-Pod-Escapes                 noarch   1:1.04-297.el7       base       52 k�[0m
�[0;32m    hcloud:  perl-Pod-Perldoc                 noarch   3.20-4.el7           base       87 k�[0m
�[0;32m    hcloud:  perl-Pod-Simple                  noarch   1:3.28-4.el7         base      216 k�[0m
�[0;32m    hcloud:  perl-Pod-Usage                   noarch   1.63-3.el7           base       27 k�[0m
�[0;32m    hcloud:  perl-Scalar-List-Utils           x86_64   1.27-248.el7         base       36 k�[0m
�[0;32m    hcloud:  perl-Socket                      x86_64   2.010-5.el7          base       49 k�[0m
�[0;32m    hcloud:  perl-Storable                    x86_64   2.45-3.el7           base       77 k�[0m
�[0;32m    hcloud:  perl-TermReadKey                 x86_64   2.30-20.el7          base       31 k�[0m
�[0;32m    hcloud:  perl-Text-ParseWords             noarch   3.29-4.el7           base       14 k�[0m
�[0;32m    hcloud:  perl-Time-HiRes                  x86_64   4:1.9725-3.el7       base       45 k�[0m
�[0;32m    hcloud:  perl-Time-Local                  noarch   1.2300-2.el7         base       24 k�[0m
�[0;32m    hcloud:  perl-constant                    noarch   1.27-2.el7           base       19 k�[0m
�[0;32m    hcloud:  perl-libs                        x86_64   4:5.16.3-297.el7     base      689 k�[0m
�[0;32m    hcloud:  perl-macros                      x86_64   4:5.16.3-297.el7     base       44 k�[0m
�[0;32m    hcloud:  perl-parent                      noarch   1:0.225-244.el7      base       12 k�[0m
�[0;32m    hcloud:  perl-podlators                   noarch   2.5.1-3.el7          base      112 k�[0m
�[0;32m    hcloud:  perl-threads                     x86_64   1.87-4.el7           base       49 k�[0m
�[0;32m    hcloud:  perl-threads-shared              x86_64   1.43-6.el7           base       39 k�[0m
�[0;32m    hcloud:  python-firewall                  noarch   0.6.3-12.el7         updates   355 k�[0m
�[0;32m    hcloud:  python-slip                      noarch   0.4.0-4.el7          base       31 k�[0m
�[0;32m    hcloud:  python-slip-dbus                 noarch   0.4.0-4.el7          base       32 k�[0m
�[0;32m    hcloud:  quota                            x86_64   1:4.01-19.el7        base      179 k�[0m
�[0;32m    hcloud:  quota-nls                        noarch   1:4.01-19.el7        base       90 k�[0m
�[0;32m    hcloud:  rpcbind                          x86_64   0.2.0-49.el7         base       60 k�[0m
�[0;32m    hcloud:  tcp_wrappers                     x86_64   7.6-77.el7           base       78 k�[0m
�[0;32m    hcloud:  vim-common                       x86_64   2:7.4.629-7.el7      base      5.9 M�[0m
�[0;32m    hcloud:  vim-filesystem                   x86_64   2:7.4.629-7.el7      base       11 k�[0m
�[0;32m    hcloud:�[0m
�[0;32m    hcloud: Transaction Summary�[0m
�[0;32m    hcloud: ================================================================================�[0m
�[0;32m    hcloud: Install  12 Packages (+56 Dependent packages)�[0m
�[0;32m    hcloud:�[0m
�[0;32m    hcloud: Total download size: 27 M�[0m
�[0;32m    hcloud: Installed size: 96 M�[0m
�[0;32m    hcloud: Downloading packages:�[0m
�[1;31m==> hcloud: http://vault.centos.org/centos/7.8.2003/os/x86_64/Packages/git-1.8.3.1-23.el7_8.x86_64.rpm: [Errno 14] HTTPS Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: To address this issue please refer to the below wiki article�[0m
�[1;31m==> hcloud:�[0m
�[1;31m==> hcloud: https://wiki.centos.org/yum-errors�[0m
�[1;31m==> hcloud:�[0m
�[1;31m==> hcloud: If above article doesn't help to resolve this issue please use https://bugs.centos.org/.�[0m
�[1;31m==> hcloud:�[0m
�[1;31m==> hcloud: http://mirror.centos.org/centos/7.8.2003/os/x86_64/Packages/gssproxy-0.7.0-29.el7.x86_64.rpm: [Errno 14] HTTP Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: warning: /var/cache/yum/x86_64/7/epel/packages/htop-2.2.0-3.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 352c64e5: NOKEY�[0m
�[0;32m    hcloud: Public key for htop-2.2.0-3.el7.x86_64.rpm is not installed�[0m
�[1;31m==> hcloud: http://vault.centos.org/centos/7.8.2003/updates/x86_64/Packages/firewalld-filesystem-0.6.3-12.el7.noarch.rpm: [Errno 14] HTTPS Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://vault.centos.org/centos/7.8.2003/updates/x86_64/Packages/firewalld-0.6.3-12.el7.noarch.rpm: [Errno 14] HTTPS Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://vault.centos.org/centos/7.8.2003/os/x86_64/Packages/iscsi-initiator-utils-6.2.0.874-19.el7.x86_64.rpm: [Errno 14] HTTPS Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://vault.centos.org/centos/7.8.2003/os/x86_64/Packages/iscsi-initiator-utils-iscsiuio-6.2.0.874-19.el7.x86_64.rpm: [Errno 14] HTTPS Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://vault.centos.org/centos/7.8.2003/os/x86_64/Packages/nfs-utils-1.3.0-0.68.el7.x86_64.rpm: [Errno 14] HTTPS Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://vault.centos.org/centos/7.8.2003/os/x86_64/Packages/perl-5.16.3-297.el7.x86_64.rpm: [Errno 14] HTTPS Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://vault.centos.org/centos/7.8.2003/os/x86_64/Packages/perl-Git-1.8.3.1-23.el7_8.noarch.rpm: [Errno 14] HTTPS Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://vault.centos.org/centos/7.8.2003/os/x86_64/Packages/perl-Pod-Escapes-1.04-297.el7.noarch.rpm: [Errno 14] HTTPS Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://vault.centos.org/centos/7.8.2003/os/x86_64/Packages/perl-libs-5.16.3-297.el7.x86_64.rpm: [Errno 14] HTTPS Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://vault.centos.org/centos/7.8.2003/os/x86_64/Packages/perl-macros-5.16.3-297.el7.x86_64.rpm: [Errno 14] HTTPS Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://vault.centos.org/centos/7.8.2003/updates/x86_64/Packages/python-firewall-0.6.3-12.el7.noarch.rpm: [Errno 14] HTTPS Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://vault.centos.org/centos/7.8.2003/os/x86_64/Packages/vim-common-7.4.629-7.el7.x86_64.rpm: [Errno 14] HTTPS Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://vault.centos.org/centos/7.8.2003/os/x86_64/Packages/vim-enhanced-7.4.629-7.el7.x86_64.rpm: [Errno 14] HTTPS Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://mirror.centos.org/centos/7.8.2003/os/x86_64/Packages/git-1.8.3.1-23.el7_8.x86_64.rpm: [Errno 14] HTTP Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://vault.centos.org/centos/7.8.2003/os/x86_64/Packages/vim-filesystem-7.4.629-7.el7.x86_64.rpm: [Errno 14] HTTPS Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://mirror.centos.org/centos/7.8.2003/updates/x86_64/Packages/firewalld-filesystem-0.6.3-12.el7.noarch.rpm: [Errno 14] HTTP Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://vault.centos.org/centos/7.8.2003/os/x86_64/Packages/gssproxy-0.7.0-29.el7.x86_64.rpm: [Errno 14] HTTPS Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://mirror.centos.org/centos/7.8.2003/updates/x86_64/Packages/firewalld-0.6.3-12.el7.noarch.rpm: [Errno 14] HTTP Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://mirror.centos.org/centos/7.8.2003/os/x86_64/Packages/iscsi-initiator-utils-6.2.0.874-19.el7.x86_64.rpm: [Errno 14] HTTP Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://mirror.centos.org/centos/7.8.2003/os/x86_64/Packages/iscsi-initiator-utils-iscsiuio-6.2.0.874-19.el7.x86_64.rpm: [Errno 14] HTTP Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://mirror.centos.org/centos/7.8.2003/os/x86_64/Packages/nfs-utils-1.3.0-0.68.el7.x86_64.rpm: [Errno 14] HTTP Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://mirror.centos.org/centos/7.8.2003/os/x86_64/Packages/perl-5.16.3-297.el7.x86_64.rpm: [Errno 14] HTTP Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://mirror.centos.org/centos/7.8.2003/os/x86_64/Packages/perl-Git-1.8.3.1-23.el7_8.noarch.rpm: [Errno 14] HTTP Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://mirror.centos.org/centos/7.8.2003/os/x86_64/Packages/perl-Pod-Escapes-1.04-297.el7.noarch.rpm: [Errno 14] HTTP Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://mirror.centos.org/centos/7.8.2003/os/x86_64/Packages/perl-libs-5.16.3-297.el7.x86_64.rpm: [Errno 14] HTTP Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://mirror.centos.org/centos/7.8.2003/os/x86_64/Packages/perl-macros-5.16.3-297.el7.x86_64.rpm: [Errno 14] HTTP Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://mirror.centos.org/centos/7.8.2003/updates/x86_64/Packages/python-firewall-0.6.3-12.el7.noarch.rpm: [Errno 14] HTTP Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://mirror.centos.org/centos/7.8.2003/os/x86_64/Packages/vim-common-7.4.629-7.el7.x86_64.rpm: [Errno 14] HTTP Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://mirror.centos.org/centos/7.8.2003/os/x86_64/Packages/vim-enhanced-7.4.629-7.el7.x86_64.rpm: [Errno 14] HTTP Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud: http://mirror.centos.org/centos/7.8.2003/os/x86_64/Packages/vim-filesystem-7.4.629-7.el7.x86_64.rpm: [Errno 14] HTTP Error 404 - Not Found�[0m
�[1;31m==> hcloud: Trying other mirror.�[0m
�[1;31m==> hcloud:�[0m
�[1;31m==> hcloud:�[0m
�[1;31m==> hcloud: Error downloading packages:�[0m
�[1;31m==> hcloud:   1:perl-Pod-Escapes-1.04-297.el7.noarch: [Errno 256] No more mirrors to try.�[0m
�[1;31m==> hcloud:   gssproxy-0.7.0-29.el7.x86_64: [Errno 256] No more mirrors to try.�[0m
�[1;31m==> hcloud:   perl-Git-1.8.3.1-23.el7_8.noarch: [Errno 256] No more mirrors to try.�[0m
�[1;31m==> hcloud:   1:nfs-utils-1.3.0-0.68.el7.x86_64: [Errno 256] No more mirrors to try.�[0m
�[1;31m==> hcloud:   iscsi-initiator-utils-iscsiuio-6.2.0.874-19.el7.x86_64: [Errno 256] No more mirrors to try.�[0m
�[1;31m==> hcloud:   2:vim-common-7.4.629-7.el7.x86_64: [Errno 256] No more mirrors to try.�[0m
�[1;31m==> hcloud:   2:vim-filesystem-7.4.629-7.el7.x86_64: [Errno 256] No more mirrors to try.�[0m
�[1;31m==> hcloud:   firewalld-0.6.3-12.el7.noarch: [Errno 256] No more mirrors to try.�[0m
�[1;31m==> hcloud:   firewalld-filesystem-0.6.3-12.el7.noarch: [Errno 256] No more mirrors to try.�[0m
�[1;31m==> hcloud:   python-firewall-0.6.3-12.el7.noarch: [Errno 256] No more mirrors to try.�[0m
�[1;31m==> hcloud:   iscsi-initiator-utils-6.2.0.874-19.el7.x86_64: [Errno 256] No more mirrors to try.�[0m
�[1;31m==> hcloud:   4:perl-5.16.3-297.el7.x86_64: [Errno 256] No more mirrors to try.�[0m
�[1;31m==> hcloud:   4:perl-macros-5.16.3-297.el7.x86_64: [Errno 256] No more mirrors to try.�[0m
�[1;31m==> hcloud:   git-1.8.3.1-23.el7_8.x86_64: [Errno 256] No more mirrors to try.�[0m
�[1;31m==> hcloud:   4:perl-libs-5.16.3-297.el7.x86_64: [Errno 256] No more mirrors to try.�[0m
�[1;31m==> hcloud:   2:vim-enhanced-7.4.629-7.el7.x86_64: [Errno 256] No more mirrors to try.�[0m

What did you expect to happen:

The tutorial works :-)

Anything else you would like to add:
[Miscellaneous information that will assist in solving the issue.]

Environment:
GKE Cluster 1.16.15

  • Cluster-api version: 0.3.12
  • Cluster-api-provider-hcloud version: v0.1.0-rc.4
  • Minikube/KIND version:
  • Kubernetes version: (use kubectl version): 1.16
  • OS (e.g. from /etc/os-release):

Server deletion not working for hanging/broken nodes

What steps did you take and what happened:
When a cluster node is hanging completely or can't shutdown cleanly for any reason, it can't be deleted by the controller. The deletion process uses the "shutdown" action, which per API documentation requires a cooperative system that reacts to the "ACPI shutdown request". Only after the system has managed to power itself off properly the instance is deleted.

This breaks/blocks MachineHealthCheck replacing nodes. This in turn leads to volumes which are bound to a broken node that can never be released/rebound, and pods that require those volumes are unschedulable until manual intervention.

What did you expect to happen:
The broken node to be deleted in a reasonable time. If the node can't perform a clean shutdown for whatever reason the controller should "pull the plug" after a few tries.

Environment:

  • Cluster-api version: 0.3.19
  • Cluster-api-provider-hcloud version: 0.4.1
  • Minikube/KIND version: 0.10.0
  • Kubernetes version: (use kubectl version): 1.20.2
  • OS (e.g. from /etc/os-release): Ubuntu 20.04.1

Easier use of external nodes

User Story

As a operator I would like to use external nodes like the dedicated nodes of Hetzner in an easier way.

Detailed Description

  • We should find a solution how to make external nodes usable despite a private network.
  • We should find a solution how to provision an external node more easily.
  • We should see if we could combine the provisioning step with the creation of the manual node object.

Use Hetzner Loadbalancer for kubeapiserver

User Story

As a operator I would like to use the new Hetzner Loadbalancer as default. The Kubeapiserver should communicate via the HetznerLoadbalancer. Further loadbalancers for Ingress should be created independently. Metallb should also be able to be used for further Service=Loadbalancer. But we have to check if this is within the scope of the CCM. See hetznercloud/hcloud-cloud-controller-manager#62

Clean Up and Relocation Tasks

we need to clean up a few things:

  • Delete unused Branches
  • Switching to new contributing workflow
  • Relocation of all Repos and Images
  • Domain for the documentation
  • Volume Controller not used - clean up?
  • Keepalived not used - clean up?
  • Remove other not used stuff

Add a warning when you try to create a CX11-based control plane

First of all, wow: great job on this controller! I'm surprised by the quality of it. Is this being developed by Hetzner employees?

User Story

As an operator I would like to test out the provider with CX11 instances because they are the cheapest. As this is not possible with the Kubeadm provider, I expect a warning or error to be thrown.

Detailed Description

Anyways: Provisioning control-planes on single core instances is not possible with kubeadm. They add a check to prevent these clusters from bootstrapping. It does not appear like this fact is propagated to any of the resource status's right now.

I've rebooted my cluster with cpx11 and now it works, nothing was logged anywhere with details that the singe core was the problem.

Proposed solution
I propose that a warning is logged periodically if someone tries to bootstrap a cx11-based control-plane. Secondly I propose a status message is added to some resource so operators will be able to identify that this may be an issue.

P.S. I wanted to PR this myself but as the code quality of this project is relatively high, it would probably create more overhead then just posting an issue about this.

EDIT: A note can also be added to the README.md getting started, this would probably also be sufficient!

CAPI Tests and Conformance Tests

User Story

As a developer I would like to test the provider integration and the created cluster in an easy way.

Detailed Description

  • We should create documentation for the currently available tests.
  • We should also look at how to use the new E2E tests of CAPI.
  • We should find a simple way to run the conformance tests. https://github.com/vmware-tanzu/sonobuoy

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.