您的位置:首页 > 房产 > 建筑 > 青岛网站推广招商_亚马逊跨境电商下载_网络营销与直播电商好就业吗_福州网站优化

青岛网站推广招商_亚马逊跨境电商下载_网络营销与直播电商好就业吗_福州网站优化

2025/3/6 23:57:02 来源:https://blog.csdn.net/m0_73950916/article/details/143845845  浏览:    关键词:青岛网站推广招商_亚马逊跨境电商下载_网络营销与直播电商好就业吗_福州网站优化
青岛网站推广招商_亚马逊跨境电商下载_网络营销与直播电商好就业吗_福州网站优化

文章目录

    • 1、前期准备
      • 1、修改内核参数
      • 2、配置k8s源
      • 3、安装containerd
      • 4、设置容器运行时
    • 2、k8s安装
      • 1、安装k8s包
      • 2、通过配置文件进行初始化
      • 3、安装网络插件
      • 4、测试
      • 5、docker

1、前期准备

  • 关闭防火墙和selinux和交换分区

  • 修改主机名和免密登录

  • 上面的这些不会做的话,趁早别学k8s了,学不明白的

1、修改内核参数

[root@master yum.repos.d]# cat /etc/sysctl.d/k8s.conf 
net.bridge.bridge-nf-call-ip6tables = 1  # 启用对ipv6流量的桥接网络数据包的iptables的过滤功能,走iptables的规则
net.bridge.bridge-nf-call-iptables = 1  # 对ipv4的iptables的过滤功能
net.ipv4.ip_forward = 1    # 启动对ipv4数据包的转发功能;pod想要访问外网或者访问另外一个Pod,这个功能必须打开,否则系统只会管自己,不会帮别人转发数据包,就是只会管理发给自己的数据包的请求,不是自己的请求不会管modprobe br_netfilter  # 加载linux内核模块[root@master yum.repos.d]# sysctl -p /etc/sysctl.d/k8s.conf   # 加载指定配置文件的参数值,立即生效
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1# 加载这些内核模块
[root@master ~]# cat /etc/sysconfig/modules/ipvs.modules 
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4bash /etc/sysconfig/modules/ipvs.modules # 查看内核
lsmod | grep  -e ip_vs -e nf_conntrack_ipv4

2、配置k8s源

[root@master /]# cat > /etc/yum.repos.d/kubernetes.repo << EOF
> [kubernetes]
> name=Kubernetes
> baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
> enabled=1
> gpgcheck=0
> repo_gpgcheck=0
> gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
> EOF

3、安装containerd

yum -y install  yum-utilsyum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repoyum -y install docker-ce# 修改配置文件
containerd config default > /etc/containerd/config.toml
SystemdCgroup = true   # 驱动设置为systemd,与kubelet保持一致
sandbox_image = "registry.aliyuncs.com/google_containers/pause:3.9" # 使用的沙盒镜像是这个,国内可以进行访问到# 设置containerd镜像仓库地址[plugins."io.containerd.grpc.v1.cri".registry.mirrors][plugins."io.containerd.grpc.v1.cri".registry.mirrors."registry.k8s.io"]  # 请求的是registry.k8s.io的地址都重定向到下面的地址,之前用的是阿里云的仓库地址,一直拉取不到镜像endpoint = ["https://registry-k8s-io.mirrors.sjtug.sjtu.edu.cn"][plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]endpoint = [仓库地址]systemctl enable containerd --now

4、设置容器运行时

  • ctr是containerd的默认的工具

  • crictl是用于支持k8s容器运行时的接口,用于运行containerd中的容器和pod

  • 也就是说crictl与指定的容器运行时containerd和镜像服务端点通信,交互操作

# 指容器运行时的终端接口,连接到哪个容器运行时的unix socket
crictl config runtime-endpoint unix:///var/run/containerd/containerd.sock   # 告诉crictl对镜像做操作时使用的哪个接口
crictl config image-endpoint unix:///var/run/containerd/containerd.sock

2、k8s安装

1、安装k8s包

yum -y install kubelet-1.26.0 kubectl-1.26.0 kubeadm-1.26.0systemctl enable kubelet

2、通过配置文件进行初始化

kubeadm config print init-defaults > kubeadm.yaml[root@master ~]# cat kubeadm.yaml 
apiVersion: kubeadm.k8s.io/v1beta3
bootstrapTokens:
- groups:- system:bootstrappers:kubeadm:default-node-tokentoken: abcdef.0123456789abcdefttl: 24h0m0susages:- signing- authentication
kind: InitConfiguration
localAPIEndpoint:advertiseAddress: 10.104.43.133   # master ip地址bindPort: 6443
nodeRegistration:criSocket: unix:///run/containerd/containerd.sock  # 容器运行时的接口 imagePullPolicy: IfNotPresentname: master   # 主机名 taints: null
---
apiServer:timeoutForControlPlane: 4m0s
apiVersion: kubeadm.k8s.io/v1beta3
certificatesDir: /etc/kubernetes/pki
clusterName: kubernetes
controllerManager: {}
dns: {}
etcd:local:dataDir: /var/lib/etcd
imageRepository: registry.aliyuncs.com/google_containers   # 在初始化的时候设置的镜像仓库地址
kind: ClusterConfiguration
kubernetesVersion: 1.26.0
networking:dnsDomain: cluster.localserviceSubnet: 10.96.0.0/12podSubnet: 10.244.0.0/16  # pod的网段
scheduler: {}
---
apiVersion: kubeproxy.config.k8s.io/v1alpha1
kind: KubeProxyConfiguration   
mode: ipvs  # 设置ipvs
---
apiVersion: kubelet.config.k8s.io/v1beta1
kind: KubeletConfiguration
cgroupDriver: systemd   # 设置kubelet驱动为systemd# 初始化
kubeadm init --config=kubeadm.yaml --ignore-preflight-errors=SystemVerification

3、安装网络插件

kubectl apply -f calico.yaml

4、测试

[root@master ~]# kubectl get node
NAME     STATUS   ROLES           AGE   VERSION
master   Ready    control-plane   49m   v1.26.0
node1    Ready    <none>          32m   v1.26.0
[root@master ~]# kubectl get pod -A
NAMESPACE     NAME                                      READY   STATUS    RESTARTS   AGE
default       nginx                                     1/1     Running   0          20m
kube-system   calico-kube-controllers-57b57c56f-sfc4w   1/1     Running   0          29m
kube-system   calico-node-9hwf6                         1/1     Running   0          29m
kube-system   calico-node-bnb2s                         1/1     Running   0          29m
kube-system   coredns-5bbd96d687-8w5wg                  1/1     Running   0          49m
kube-system   coredns-5bbd96d687-fxzj9                  1/1     Running   0          49m
kube-system   etcd-master                               1/1     Running   1          49m
kube-system   kube-apiserver-master                     1/1     Running   0          50m
kube-system   kube-controller-manager-master            1/1     Running   0          49m
kube-system   kube-proxy-rcmrz                          1/1     Running   0          32m
kube-system   kube-proxy-v6wvt                          1/1     Running   0          49m
kube-system   kube-scheduler-master                     1/1     Running   1          49m# 创建一个pod,进行访问

5、docker

  • 虽然弃用了docker,但是还是可以进行安装的,并且docker构建镜像比较方便的

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com