K8s Fedora单机版

文章目录

禁用防火墙

shell 复制代码
systemctl stop firewalld.service & systemctl disable firewalld.service

禁用交换分区

shell 复制代码
sysctl vm.swappiness=0 & sysctl -p
systemctl stop swap-create@zram0
yum remove -y zram-generator-defaults

禁用 SELinux

shell 复制代码
sudo setenforce 0 & sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config

安装 iptables

shell 复制代码
yum install -y iptables iproute-tc

允许 iptables 检查桥接流量

shell 复制代码
cat <<EOF | tee /etc/modules-load.d/k8s.conf
br_netfilter
EOF

cat <<EOF | tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF

sysctl --system

添加镜像源

shell 复制代码
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://pkgs.k8s.io/core:/stable:/v1.31/rpm/
enabled=1
gpgcheck=1
gpgkey=https://pkgs.k8s.io/core:/stable:/v1.31/rpm/repodata/repomd.xml.key
exclude=kubelet kubeadm kubectl cri-tools kubernetes-cni
EOF

安装 crio kubelet kubeadm kubectl

建议用crio作为容器运行时,containerd网络问题太麻烦

shell 复制代码
yum install -y crio kubelet kubeadm kubectl --disableexcludes=kubernetes
systemctl enable --now crio & systemctl enable --now kubelet & yum clean all

重载沙箱(pause)镜像

shell 复制代码
sed -i "s/# pause_image = .*/pause_image = \"registry.aliyuncs.com\/google_containers\/pause:3.10\"/g" /etc/crio/crio.conf

配置国内镜像地址

shell 复制代码
vi /etc/containers/registries.conf
conf 复制代码
unqualified-search-registries = ["docker.m.daocloud.io", "docker.io", "k8s.gcr.io", "registry.k8s.io", "registry.fedoraproject.org", "registry.access.redhat.com", "registry.centos.org"]

[[registry]]
prefix = "docker.io"
location = "docker.m.daocloud.io"

[[registry]]
prefix = "*registry.k8s.io"
location = "registry.aliyuncs.com/google_containers"

[[registry]]
prefix = "*.gcr.io"
location = "docker.m.daocloud.io"

[[registry]]
prefix = "registry.centos.org"
location = "docker.m.daocloud.io"

初始化集群

shell 复制代码
kubeadm init --pod-network-cidr=192.168.56.101/24 --apiserver-advertise-address=192.168.56.101 --apiserver-cert-extra-sans=192.168.56.101 --cri-socket=unix:///var/run/crio/crio.sock --image-repository=registry.aliyuncs.com/google_containers

复制配置文件使kubectl可用

非root用户

shell 复制代码
mkdir -p $HOME/.kube & sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config & sudo chown $(id -u):$(id -g) $HOME/.kube/config

root用户

shell 复制代码
echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >> ~/.bash_profile & source ~/.bash_profile

查看节点状态

shell 复制代码
kubectl describe node

设置节点可以调度

单节点master默认不可被调度

shell 复制代码
kubectl taint nodes <node-name> node-role.kubernetes.io/control-plane:NoSchedule-
相关推荐
可观测性用观测云8 小时前
云原生网关 Ingress-Nginx 链路追踪实战:OpenTelemetry 采集与观测云集成方案
nginx·kubernetes
哈里谢顿1 天前
Kubernetes Operator核心概念、实现原理和实战开发
云原生
阿里云云原生1 天前
你的 OpenClaw 真的在受控运行吗?
云原生
阿里云云原生1 天前
5 分钟零代码改造,让 Go 应用自动获得全链路可观测能力
云原生·go
Shanyoufusu121 天前
RKE2 单节点集群安装 Rancher+ 私有镜像仓库搭建 完整教程
云原生
阿里云云原生1 天前
Dify 官方上架 Higress 插件,轻松接入 AI 网关访问模型服务
云原生
AI攻城狮1 天前
OpenClaw Session 管理完全指南:Context 压缩、重置与持久化
人工智能·云原生·aigc
蝎子莱莱爱打怪2 天前
GitLab CI/CD + Docker Registry + K8s 部署完整实战指南
后端·docker·kubernetes
阿里云云原生5 天前
阿里云获评 Agentic AI 开发平台领导者,函数计算 AgentRun 赢下关键分!
云原生
蝎子莱莱爱打怪6 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes