Package Details: kubeadm 1.19.3-1

Git Clone URL: https://aur.archlinux.org/kubernetes.git (read-only, click to copy)
Package Base: kubernetes
Description: Kubernetes Cluster Bootstrapping Tool
Upstream URL: http://kubernetes.io/
Licenses: Apache
Submitter: irtimmer
Maintainer: irtimmer
Last Packager: irtimmer
Votes: 51
Popularity: 0.28
First Submitted: 2015-05-29 17:48
Last Updated: 2020-11-03 17:12

Pinned Comments

irtimmer commented on 2019-08-21 20:20

NOTICE: Since version 1.15.3 this package(s) only provides the required bits to setup a cluster using kubeadm (similiar to the debs/rpms provided by the upstream project) as documentation about setting up a cluster from scratch has removed and provided systemd services were out-of-date. Also there is now only 4GB of ram required to build the package.

Latest Comments

1 2 3 4 5 6 ... Next › Last »

dvzrv commented on 2020-10-28 22:16

@irtimmer: I have updated the PKGBUILD to be able to build this and add man pages:

#Maintainer: Iwan Timmer <irtimmer@gmail.com>

pkgbase=kubernetes
pkgname=(kubelet kubeadm)
pkgver=1.19.3
pkgrel=1
arch=('x86_64')
url="http://kubernetes.io/"
pkgdesc="Production-Grade Container Scheduling and Management"
makedepends=('go' 'go-bindata' 'go-md2man' 'rsync')
source=("${pkgbase}-$pkgver.tar.gz::https://github.com/${pkgbase}/${pkgbase}/archive/v${pkgver}.tar.gz"
        "kubelet.default"
        "kubelet.service"
        "kubeadm.conf"
        "10-kubeadm.conf"
        "50-kubeadm.conf")
license=("Apache")
sha512sums=('a394544e3baf797282291cae28b58e27e31fea3b3f66274a5ce9005519534860ae6f4b138ce51f4996e7da15930fadeb21d427d80e93433dc14e79cdcb250607'
            'bd8bfcb4de9866e1e61beb37d8caae5f553fb406744c62bee226033dde746c11b47a536b1557664fe7cacb0c702234e08561e7460426e25667fe7e1e9b913adc'
            'b9ca0db34fea67dfd0654e65d3898a72997b1360c1e802cab5adc4288199c1a08423f90751757af4a7f1ff5932bfd81d3e215ce9b9d3f4efa1c04a202228adc8'
            'b97703490fb00caf3eb7f670632a897209da344ce3b869f262c855ffe2dae8c11c1b25d5642019d0733c6ac975f451794e49ce27fca3d02611bf1de5f5fa56d6'
            'db6ee01c114d8bfc68eabd27a91b50acd017b82f8d044b08b1fba672846bec6c8c20c775113b8a6d1b81b3bf8b61c2b344856b16f1115e9eea3947e21a6bc378'
            'ed5ba22b37eaa9f4950ff3b57d60dd7866fcd5b8bd5197eab3170470528e8d91379483d3eb724589e695184f9b0ed506ebaee73ecca0dc40afdb5f35e79d178a')

prepare() {
  cd "${pkgbase}-${pkgver}"
  # the -tags can only be a space separated list
  sed -e 's/selinux,/selinux /g' -i hack/lib/golang.sh
}

build() {
  cd "${pkgbase}-${pkgver}"
  export CGO_CPPFLAGS="${CPPFLAGS}"
  export CGO_CFLAGS="${CFLAGS}"
  export CGO_CXXFLAGS="${CXXFLAGS}"
  export CGO_LDFLAGS="${LDFLAGS}"
  export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=readonly -modcacherw"
  make WHAT="cmd/kubelet cmd/kubeadm" KUBE_VERBOSE=3

  # shell completion
  _output/bin/kubeadm completion bash > _output/kubeadm
  _output/bin/kubeadm completion zsh > _output/_kubeadm

  # docs
  hack/update-generated-docs.sh
}

package_kubelet() {
  pkgdesc='Kubernetes Node Agent'
  depends=(conntrack-tools ebtables ethtool iptables socat cni-plugins)
  optdepends=('containerd: for using the containerd container runtime'
              'cri-o: for using the cri-o container runtime'
              'docker: for using the docker container runtime')
  backup=('etc/default/kubelet')

  cd "${pkgbase}-${pkgver}"
  install -vDm 755 "_output/bin/${pkgname}" -t "$pkgdir/usr/bin"

  install -vDm 644 "../${pkgname}.service" -t "$pkgdir/usr/lib/systemd/system"
  install -vDm 644 "../${pkgname}.default" "$pkgdir/etc/default/${pkgname}"
  # man pages
  install -vDm 644 "docs/man/man1/${pkgname}"* -t "${pkgdir}/usr/share/man/man1/"
}

package_kubeadm() {
  pkgdesc='Kubernetes Cluster Bootstrapping Tool'
  depends=(kubelet kubectl crictl)

  cd "${pkgbase}-${pkgver}"
  install -Dm 755 "_output/bin/${pkgname}" -t "$pkgdir/usr/bin"

  install -Dm 644 "../${pkgname}.conf" -t "$pkgdir/usr/lib/modules-load.d"
  install -Dm 644 "../10-${pkgname}.conf" -t "$pkgdir/etc/systemd/system/kubelet.service.d"
  install -Dm 644 "../50-${pkgname}.conf" -t "$pkgdir/etc/sysctl.d"

  # shell completion
  install -vDm 644 "_output/${pkgname}" -t "$pkgdir/usr/share/bash-completion/completions/"
  install -vDm 644 "_output/_${pkgname}" -t "$pkgdir/usr/share/zsh/site-functions/"
  # man pages
  install -vDm 644 "docs/man/man1/${pkgname}"* -t "${pkgdir}/usr/share/man/man1/"
}

Unfortunately kubeadm still lacks full RELRO...

I checked with Fedora and they ship e.g. kube-proxy alongside kubelet. How do you use these packages? How do you make use of e.g. kube-controller-manager or kube-apiserver?

solarer commented on 2020-08-12 18:44

I have the same problem as described by user: 12101111.

When I try to setup calico as cni for my node, the coredns-... nodes will not initialize.

Running 'journalctl -ru kubelet' shows that plugin "calico" and "calico-ipam" are not located in /usr/lib/cni.

I was able to fix this by creating symlinks:

ln -s /opt/cni/bin/calico /usr/lib/cni
ln -s /opt/cni/bin/calico-ipam /usr/lib/cni

When trying to join a node to the cluster, I got the following error: Unable to read config path "/etc/kubernetes/manifests": path does not exist

Creating the directory

mkdir /etc/kubernetes/manifests
finally joined the node.

12101111 commented on 2020-07-15 11:37

I got this error when join a cluster:

[failed to find plugin "calico" in path [/usr/lib/cni]]

Deleting kubelet.default fix this issue.

ayekat commented on 2020-05-26 07:37

I'm currently running into this error:

==> Starting build()...
+++ [0526 09:29:39] Building go targets for linux/amd64:
    ./vendor/k8s.io/code-generator/cmd/defaulter-gen
+++ [0526 09:29:39] Building go targets for linux/amd64:
    ./vendor/k8s.io/code-generator/cmd/deepcopy-gen
+++ [0526 09:29:39] Building go targets for linux/amd64:
    ./vendor/github.com/go-bindata/go-bindata/go-bindata
+++ [0526 09:29:39] Building go targets for linux/amd64:
    ./vendor/k8s.io/kube-openapi/cmd/openapi-gen
+++ [0526 09:29:39] Building go targets for linux/amd64:
    ./vendor/k8s.io/code-generator/cmd/conversion-gen
warning: ignoring symlink /home/ayekat/.local/src/kubernetes_aur/src/_output/local/go/src/k8s.io/kubernetes
go: warning: "k8s.io/kubernetes/vendor/github.com/go-bindata/go-bindata/..." matched no packages
touch: cannot touch '_output/bin/defaulter-gen': No such file or directory
make[1]: *** [Makefile.generated_files:295: _output/bin/defaulter-gen] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [Makefile:544: generated_files] Error 2
==> ERROR: A failure occurred in build().

According to https://github.com/kubernetes/kubernetes/issues/89675#issuecomment-612522019, one has to apply this change:

Then rebuilding with makepkg -e works. A patch would of course be more elegant.

--edit, 2020-07-06: With 1.18.5, this no longer appears to be an issue.

--edit, 2020-07-27: With 1.18.6, this is again an issue.

newsboost commented on 2019-09-21 11:10

Thanks ayekat for the help/explanation! I'm slowly learning kubernetes in my sparetime incl the difference between kubectl, kubeadm and kubelet (work in progress), I might try with go 1.12 later, when I have more time than now...

ayekat commented on 2019-09-20 21:22

@newsboost: Kubernetes currently does not build with Go 1.13. Try buiding with Go 1.12 for the time being.

Also, some component of Go has the very annoying habit of creating directory structures read-only if it fails halfway through. One workaround is to recursively add back write permissions with chmod -R u+w … before trying to delete them.

--edit: Also, kubectl is not the same as kubeadm and kubelet. There's a reason this one here exists (and you attempted to build it, I assume?)

newsboost commented on 2019-09-19 01:29

Not sure if I misunderstood anything, but I cannot install - see errors/output: https://pastebin.com/jqZbtQYa (I get errors during install, e.g. "go/build: importGo k8s.io/kubernetes: exit status 1 can't load package: package k8s.io/kubernetes: cannot find module providing package k8s.io/kubernetes", "can't load package: package k8s.io/kubernetes/vendor/k8s.io/code-generator/cmd/deepcopy-gen: no matching versions for query "latest"", "!!! [0919 03:19:53] 1: hack/make-rules/build.sh:27 kube::golang::build_binaries(...) make[1]: [Makefile.generated_files:200: _output/bin/deepcopy-gen] Error 1", "can't load package: package k8s.io/kubernetes/vendor/k8s.io/code-generator/cmd/defaulter-gen: no matching versions for query "latest"", "make: [Makefile:557: generated_files] Error 2" and it ends with ""==> ERROR: A failure occurred in build(). Aborting... Error making: kubernetes (kubelet)") - if I try again, I get:

190812203447-cdfb69ac37fc/http/httpproxy/go19_test.go': Permission denied
rm: cannot remove '/home/martin/.cache/yay/kubernetes/src/_output/local/go/pkg/mod/golang.org/x/net@v0.0.0-20190812203447-cdfb69ac37fc/http/httpproxy/export_test.go': Permission denied
rm: cannot remove '/home/martin/.cache/yay/kubernetes/src/_output/local/go/pkg/mod/golang.org/x/net@v0.0.0-20190812203447-cdfb69ac37fc/.gitignore': Permission denied
rm: cannot remove '/home/martin/.cache/yay/kubernetes/src/_output/local/go/pkg/mod/golang.org/x/net@v0.0.0-20190812203447-cdfb69ac37fc/netutil/listen.go': Permission denied
rm: cannot remove '/home/martin/.cache/yay/kubernetes/src/_output/local/go/pkg/mod/golang.org/x/net@v0.0.0-20190812203447-cdfb69ac37fc/netutil/listen_test.go': Permission denied
rm: cannot remove '/home/martin/.cache/yay/kubernetes/src/_output/local/go/pkg/mod/golang.org/x/net@v0.0.0-20190812203447-cdfb69ac37fc/CONTRIBUTORS': Permission denied

==> ERROR: An unknown error has occurred. Exiting...
Error making: kubernetes (kubelet)

I'll try "pacman -S cubectl" instead...

irtimmer commented on 2019-08-21 20:20

NOTICE: Since version 1.15.3 this package(s) only provides the required bits to setup a cluster using kubeadm (similiar to the debs/rpms provided by the upstream project) as documentation about setting up a cluster from scratch has removed and provided systemd services were out-of-date. Also there is now only 4GB of ram required to build the package.

annguyenfoss commented on 2019-08-12 10:11

Anyone knows why this package is orphaned now? I can adopt and update it, but I need to know the root cause. Thanks

@irtimmer: Can you please help me out?

zrhoffman commented on 2019-06-23 23:26

The kubernetes AUR package conflicts with community/kubectl.