Kubernetes环境部署
简介
Kubernetes 是一个开源系统,用于容器化应用的自动部署、扩缩和管理。它将构成应用的容器按逻辑单位进行分组以便于管理和发现。
配置镜像源
Debian / Ubuntu
apt-get update && apt-get install -y apt-transport-https curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add - cat <<EOF >/etc/apt/sources.list.d/kubernetes.list deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main EOF apt-get update
CentOS / RHEL / Fedora
cat <<EOF > /etc/yum.repos.d/kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/ enabled=1 gpgcheck=1 repo_gpgcheck=1 gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg EOF setenforce 0
以centos为例搭建环境
1.安装:按照顺序
yum install kubelet-1.13.12-0 yum install kubectl-1.13.12-0 yum install kubeadm-1.13.12-0
2.安装后执行如下命令,先查看需要的镜像文件:
kubeadm config images list ----------------------------- k8s.gcr.io/kube-apiserver:v1.13.12 k8s.gcr.io/kube-controller-manager:v1.13.12 k8s.gcr.io/kube-scheduler:v1.13.12 k8s.gcr.io/kube-proxy:v1.13.12 k8s.gcr.io/pause:3.1 k8s.gcr.io/etcd:3.2.24 k8s.gcr.io/coredns:1.2.6
3.导入并配置对应的镜像文件
docker load -i registry.aliyuncs.com.google_containers.kube-apiserver.tar docker image ls tag f07fae2c3e6a k8s.gcr.io/kube-apiserver:v1.13.12 docker load -i registry.aliyuncs.com.google_containers.kube-controller-manager.tar docker image ls docker tag 90fd4a237264 k8s.gcr.io/kube-controller-manager:v1.13.12 docker load -i registry.aliyuncs.com.google_containers.kube-scheduler.tar docker image ls docker tag 54f3185a42a5 k8s.gcr.io/kube-scheduler:v1.13.12 docker load -i registry.aliyuncs.com.google_containers.kube-proxy.tar docker image ls docker tag 4022daa30d3e k8s.gcr.io/kube-proxy:v1.13.12 docker load -i registry.aliyuncs.com.google_containers.pause.tar docker image ls docker tag da86e6ba6ca1 k8s.gcr.io/pause:3.1 docker load -i registry.aliyuncs.com.google_containers.etcd.tar docker image ls docker tag 3cab8e1b9802 k8s.gcr.io/etcd:3.2.24 docker load -i registry.aliyuncs.com.google_containers.coredns.tar docker image ls docker tag f59dcacceff4 k8s.gcr.io/coredns:1.2.6
4.导入并修改好镜像名后执行
kubeadm init --pod-network-cidr=10.244.0.0/16
5.若出现报错
6.执行如下命令
kubeadm init --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=swap
7.执行后若出现报错:
8.需要查看日志:
journalctl --no-page -xeu kubelet
--或者 journalctl --no-page -xeu kubelet|grep swap
9.查看配置文件:
cd /usr/lib/systemd/system/kubelet.service.d [root@localhost kubelet.service.d]# ls 10-kubeadm.conf
10.找出配置文件中环境配置文件路径
EnvironmentFile=-/etc/sysconfig/kubelet
11.修改环境配置文件:
KUBELET_EXTRA_ARGS="--fail-swap-on=false"
12.重启kubeadm
kubeadm reset
13.再次执行
kubeadm init --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=swap
14.环境搭建成功
Your Kubernetes master has initialized successfully! To start using your cluster, you need to run the following as a regular user: mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config You should now deploy a pod network to the cluster. Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at: https://kubernetes.io/docs/concepts/cluster-administration/addons/ You can now join any number of machines by running the following on each node as root: kubeadm join 192.168.4.131:6443 --token ft7m0e.i9z5x43zbaa1yk55 --discovery-token-ca-cert-hash sha256:4b3a2b2a4a164ca270d4173169eda4ec707ad16653387e6960185dcb76832837
但行好事,莫问前程
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了