Kubernetes单节点离线安装

由于各种各样的原因,你可能需要离线安装,至于为什么不是通过apt或者yum安装,这个原因就看具体情况了。

这里主要指rpm包的操作系统,比如centos, fedora之类的。

环境

环境说明

这里安装v1.14.1版本的kubernetes, cni选择flannel.

安装系统依赖

yum install conntrack-tools socat ebtables

系统环境配置

groupadd docker
useradd -g docker docker

可能的配置/etc/default/grub -> GRUB_CMDLINE_LINUX_DEFAULT

cgroup_enable=memory swapaccount=1

取消swap

编辑/etc/fstab, 将含有swap字段的那行注释掉

最后重启

下载相关文件

下载kubeadm,kubectl, kubelet, kubernetes-cni, docker-ce, kube-flannel.yml

curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.14.1/bin/linux/amd64/kubeadm

curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.14.1/bin/linux/amd64/kubelet

curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.14.1/bin/linux/amd64/kubectl

curl -LO https://download.docker.com/linux/static/stable/x86_64/docker-18.06.3-ce.tgz

curl -LO https://github.com/containernetworking/plugins/releases/download/v0.8.2/cni-plugins-linux-amd64-v0.8.2.tgz

curl -LO https://raw.githubusercontent.com/coreos/flannel/62e44c867a2846fefb68bd5f178daf4da3095ccb/Documentation/kube-flannel.yml

安装

kubernetes相关命令

chmod +x kube*
mv kube* /usr/local/bin/

mkdir -p /opt/cni/bin
tar xf cni-plugins-linux-amd64-v0.8.2.tgz -C /opt/cni/bin

配置kubelet服务

cat > /usr/lib/systemd/system/kubelet.service  << EOF
[Unit]
Description=kubelet: The Kubernetes Node Agent
Documentation=https://kubernetes.io/docs/

[Service]
ExecStart=/usr/local/bin/kubelet
Restart=always
StartLimitInterval=0
RestartSec=10

[Install]
WantedBy=multi-user.target

EOF

配置kubeadm环境变量


cat > /etc/systemd/system/kubelet.service.d/10-kubeadm.conf << EOF
# Note: This dropin only works with kubeadm and kubelet v1.11+
[Service]
Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf"
Environment="KUBELET_CONFIG_ARGS=--config=/var/lib/kubelet/config.yaml"
# This is a file that "kubeadm init" and "kubeadm join" generates at runtime, populating the KUBELET_KUBEADM_ARGS variable dynamically
EnvironmentFile=-/var/lib/kubelet/kubeadm-flags.env
# This is a file that the user can use for overrides of the kubelet args as a last resort. Preferably, the user should use
# the .NodeRegistration.KubeletExtraArgs object in the configuration files instead. KUBELET_EXTRA_ARGS should be sourced from this file.
EnvironmentFile=-/etc/sysconfig/kubelet
ExecStart=
ExecStart=/usr/local/bin/kubelet \$KUBELET_KUBECONFIG_ARGS \$KUBELET_CONFIG_ARGS \$KUBELET_KUBEADM_ARGS \$KUBELET_EXTRA_ARGS

EOF

让kublet服务随系统启动

systemctl enable kubelet

安装docker

tar xf docker-17.09.1-ce.tgz

mv docker/* /usr/local/bin/

配置docker服务

cat > /usr/lib/systemd/system/docker.service
[Unit]
Description=docker: docker

[Service]
ExecStart=/usr/local/bin/dockerd
Restart=always
StartLimitInterval=0
RestartSec=10

[Install]
WantedBy=multi-user.target

启动docker服务并随系统启动

systemctl enable docker
systemctl start docker

通过docker pull 命令下载以下docker镜像:

k8s.gcr.io/kube-apiserver:v1.14.1
k8s.gcr.io/kube-controller-manager:v1.14.1
k8s.gcr.io/kube-scheduler:v1.14.1
k8s.gcr.io/kube-proxy:v1.14.1
k8s.gcr.io/pause:3.1
k8s.gcr.io/etcd:3.3.10
k8s.gcr.io/coredns:1.3.1
https://raw.githubusercontent.com/coreos/flannel/62e44c867a2846fefb68bd5f178daf4da3095ccb/Documentation/kube-flannel.yml
quay.io/coreos/flannel:v0.11.0-amd64

这些相关镜像版本可以通过以下命令列出,

kubeadm config images list

k8s集群初始化

kubeadm init -v=8 --alsologtostderr

配置自己的admin.conf

mkdir -p $HOME/.kube
cp -i /etc/kubernetes/admin.comf $HOME/.kube

让自身可调度
kubectl taint node hostname node-role.kubernetes.io/master=-

配置pod cidr网络
编辑/etc/kubernetes/manifests/kube-controller-manager.yaml文件, 在command那项加入

--allocate-node-cidrs=true
--cluster-cidr=10.244.0.0/16

重启kubelet

systemctl restart kubelet

安装cni

kubectl apply -f kube-flannel.yml

至此就完成了

最后的说明

纯粹记录,如果按照文档装不上或者某些命令式很正常的。

原文地址:https://blog.51cto.com/youerning/2436197

时间: 2024-11-05 23:20:21

Kubernetes单节点离线安装的相关文章

ubuntu k8s 单节点快速安装

ubuntu k8s 单节点快速安装 很早以前记录过 ubuntu 上 k8s 的单节点安装,现在更新一下 ubuntu 18.04 上 k8s 单节点的快速安装,方便参考. 安装过程 安装 docker curl -fsSL https://get.docker.com | sudo sh 使用 ubuntu 18.04,先使用 aliyun 的 k8s 源安装 kubeadm 和相关命令行工具 apt-get update && apt-get install -y apt-trans

cassandra单节点的安装与配置——cassandra总结(二)

一.cassandra的安装 cassandra现在的版本比之以前各个方面都有了很大的提升,这里采用的是2.1.11版本,下载地址:http://www.apache.org/dyn/closer.lua/cassandra/2.1.11/apache-cassandra-2.1.11-bin.tar.gz     当然大家也可以采用最新稳定版本,一定要是稳定版本,笔者刚开始学习的时候采用The latest release吃了不少苦头. 二.cassandra的配置 配置方面主要就是JDK,要

Packstack单节点一键安装openstack

本文介绍在单节点上用packstack一键安装openstack的方法,其中节点的硬件架构为x86_64(必须是64位,32位不可以).操作系统为centos7.官方的安装文档地址为https://openstack.redhat.com/Quickstart. 1 安装软件库 更新安装的软件包,命令如下: sudo yum update -y 建立RDO库,命令如下: sudo yum install -y https://rdo.fedorapeople.org/rdo-release.rp

深入学习Kubernetes(一):单节点k8s安装

环境准备 本文的例子是基于Centos 7的Linux版本,为了让例子更简单, 本文省去了网络Fannel的安装与配置,只做基本通用的开发环境搭建,希望对大家有帮助. 本例子用于测试的服务器ip为:192.168.139.149 yum源 为了让国内下载etcd和kubernetes更流畅,我们先切换阿里云的yum源 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repoyum

OpenStack单节点一键安装

安装环境:centos 7.4.1708 x86_64 修改节点名称:controller 编辑系统名称:$ vi /etc/hostname controller 使用root用户 登录 cd /root #进入到根目录 touch install_pike.sh vi install_pike.sh 下面是 install_pike.sh 文件里面的代码 全部拷贝进去 #!/bin/sh # openstack pike 一键安装脚本 单机 # 环境 centos 7.4.1708 x86_

ActiveMQ 单节点的安装

下在地址:http://apache.fayea.com/activemq/5.13.3/apache-activemq-5.13.3-bin.tar.gz 1.配置环境变量jdk 1.1 解压JDK tar -zvxf jdk-7u79-linux-x64.tar.gz mv jdk1.7.0_79/ /usr/local/java/ 1.2 编辑环境变量文件 vim /etc/profile #文件最后部分加入 export JAVA_HOME=/usr/local/java export

k8s Kubernetes v1.10 单节点 kubeadm 快速安装

k8s Kubernetes v1.10 单节点 kubeadm 快速安装 # Master 单节点快速安装 # 傻瓜式安装,只为快速部署测试环境 #测试环境centos 7.4 #ubuntu环境应该也可以,没测验证过 #1 初始化环境 curl -s http://elven.vip/ks/k8s/oneinstall/0.set.sh |bash #2 下载镜像,安装kubeadm工具 curl http://elven.vip/ks/k8s/oneinstall/1.download.s

Reidis单节点安装配置

单节点配置安装安装redis 1. http://redis.io/  下载最新版本的软件包 2. 解压缩文件 tar -zxvf redis-3.2.5.tar.gz 3. 编译 cd redis-3.2.5 make make install 4. 修改配置 vim redis.conf 找到bind 127.0.0.1,修改为0.0.0.0,否则无法远程访问,保存退出,如果还是无法访问,关闭防火墙 即时关闭,重启后失效:service iptables stop 重启后生效:chkconf

OpenStack 部署总结之:通过本地yum源安装单节点openstack

通过外部网络的方式安装openstack可能会需要花费大量的事件在rpm包下载上,而且也有可能在某些客户现场不能访问外部网络环境,为了方便以及快速的安装,可以自己搭建一个yum源.本文从yum源的创建,到openstack单节点的安装,以及在安装的过程中出现的问题,做了一个完整的总结. 下载各安装源到本地 创建/root/centos目录,并进入该目录,执行以下命令 下载 CentOS 源 安装是在 CentOS发行版下进行,所以首先将 CentOS 最新版 6.5 版本的源拿到本地.定位到放置