当前位置: 首页 > news >正文

长沙手机app网站开发营销型网站设计

长沙手机app网站开发,营销型网站设计,wordpress mediawiki,简述网站制作流程环境准备 节点数量:2台虚拟机 centos7硬件配置:master节点内存至少3G(2G后面在master节点初始化集群时会报错,内存不够),node节点可以2G,CPU至少2个,硬盘至少30G网络要求&#xff1…

环境准备

  • 节点数量:2台虚拟机 centos7
  • 硬件配置:master节点内存至少3G(2G后面在master节点初始化集群时会报错,内存不够),node节点可以2G,CPU至少2个,硬盘至少30G
  • 网络要求:多个节点之间网络互通,每个节点能访问外网

集群规划

这两个名称是准备设置的主机名称

  • k8s-master
  • k8s-node1

设置主机名

hostnamectl set-hostname k8s-master
hostnamectl set-hostname k8s-node1
# 查看主机名
hostname

同步host文件

如果DNS不支持主机名称解析,还需要在每台机器的/etc/hosts文件添加主机名和ip的对应关系。所有机器都要同步。我自己只搞了2台虚拟机做集群。

cat >> /etc/hosts <<EOF
192.168.35.133 k8s-master
192.168.35.132 k8s-node1
EOF

关闭防火墙

所有机器都要关闭

systemctl stop firewalld && systemctl disable firewalld

关闭SELINUX

setenforce 0 && sed -i 's/SELINUX=enforcing/SELINUX=disable/g' /etc/selinux/config

关闭swap分区

每一台机器都要关闭。为什么要关?自己百度去

swapoff -a && sed -ri 's/ .*swap.*/#&/' /etc/fstab

同步时间

yum install ntpdate -y
ntpdate ntp1.aliyun.com;hwclock --systohc

安装containerd

每台机器都要安装

# 安装yum-config-manger依赖
yum install -y yum-utils device-mapper-persistent-data lvm2# 添加containerd yum源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo# 安装containerd
yum install -y containerd.io cri-tools# 配置containerd
cat > /etc/containerd/config.toml <<EOF
disabled_plugins = ["restart"]
[plugins.linux]
shim_debug = true
[plugins.cri.registry.mirrors."docker.io"]
endpoint = ["https://frz7i079.mirror.aliyuncs.com"]
[plugins.cri]
sandbox_image="registry.aliyuncs.com/google_containers/pause:3.2"
EOF# 启动containerd服务 并设置开机启动
systemctl enable containerd && systemctl start containerd && systemctl status containerd# 配置 containerd 配置
cat > /etc/modules-load.d/containerd.conf << EOF
overlay
br_netfilter
EOF# 配置k8s网络配置
cat > /etc/sysctl.d/k8s.conf <<EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
EOF# 加载overlay br_netfilter模块
modprobe overlay
modprobe br_netfilter# 查看当前配置是否生效
sysctl -p /etc/sysctl.d/k8s.conf

添加源

每台机器都安装。你的cpu是x86的就选择x86的,反之选择arm的。

# 查看源
yum repolist

添加x86的源

cat <<EOF > kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gogkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF# 移动并修改
mv kubernetes.repo /etc/yum.repos.d

添加arm的源

cat << EOF > kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-aarch64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gogkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF# 移动并修改
mv kubernetes.repo /etc/yum.repos.d

安装K8s

每台机器都要安装。

# 安装最新版本
yum install -y kubelet kubeadm kubectl# 指定版本安装
yum install -y kubelet-1.26.0 kubeadm-1.26.0 kubectl-1.26.0# 启动kubelet
sudo systemctl enable kubelet && sudo systemctl start kubelet && systemctl status kubelet

初始化集群

只需要在master节点上初始化即可。

kubeadm init \
--apiserver-advertise-address=192.168.35.133 \
--image-repository registry.aliyuncs.com/google_containers \
--pod-network-cidr=10.244.0.0/16
  • --apiserver-advertise-address:master节点的IP地址
  • --image-repository:选择用于拉取控制平面镜像的容器仓库,默认的太慢了,换成阿里云的
  • --pod-network-cidr:指明pod网络可以使用的IP地址段。设置后控制平面将会为每一个节点自动分派CIDRs

K8s集群搭建

# master节点执行
mkdir -p $HOME/.kube# master节点执行
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config# master节点执行
sudo chown $(id -u):$(id -g) $HOME/.kube/config

node加入集群

# 所有node节点执行
kubeadm join 192.168.35.133:6443 --token bzotcq.9uev0sf5a19pgilp \
--discovery-token-ca-cert-hash sha256:98183ddb45ca9f9ee224c3a77fac6b524d2bf1dd31f911f5d023639f80abd43f

K8s集群搭建

master检查是否加入集群成功

kubectl get nodes

K8s集群搭建

解决节点NotReady状态

虽然集群搭建起来,但是不可用,需用通过网络插件解决该问题 https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml 在master节点创建kube-flannel.yml,输入下面内容

vi kube-flannel.yml---
kind: Namespace
apiVersion: v1
metadata:name: kube-flannellabels:k8s-app: flannelpod-security.kubernetes.io/enforce: privileged
---
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:labels:k8s-app: flannelname: flannel
rules:
- apiGroups:- ""resources:- podsverbs:- get
- apiGroups:- ""resources:- nodesverbs:- get- list- watch
- apiGroups:- ""resources:- nodes/statusverbs:- patch
- apiGroups:- networking.k8s.ioresources:- clustercidrsverbs:- list- watch
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:labels:k8s-app: flannelname: flannel
roleRef:apiGroup: rbac.authorization.k8s.iokind: ClusterRolename: flannel
subjects:
- kind: ServiceAccountname: flannelnamespace: kube-flannel
---
apiVersion: v1
kind: ServiceAccount
metadata:labels:k8s-app: flannelname: flannelnamespace: kube-flannel
---
kind: ConfigMap
apiVersion: v1
metadata:name: kube-flannel-cfgnamespace: kube-flannellabels:tier: nodek8s-app: flannelapp: flannel
data:cni-conf.json: |{"name": "cbr0","cniVersion": "0.3.1","plugins": [{"type": "flannel","delegate": {"hairpinMode": true,"isDefaultGateway": true}},{"type": "portmap","capabilities": {"portMappings": true}}]}net-conf.json: |{"Network": "10.244.0.0/16","Backend": {"Type": "vxlan"}}
---
apiVersion: apps/v1
kind: DaemonSet
metadata:name: kube-flannel-dsnamespace: kube-flannellabels:tier: nodeapp: flannelk8s-app: flannel
spec:selector:matchLabels:app: flanneltemplate:metadata:labels:tier: nodeapp: flannelspec:affinity:nodeAffinity:requiredDuringSchedulingIgnoredDuringExecution:nodeSelectorTerms:- matchExpressions:- key: kubernetes.io/osoperator: Invalues:- linuxhostNetwork: truepriorityClassName: system-node-criticaltolerations:- operator: Existseffect: NoScheduleserviceAccountName: flannelinitContainers:- name: install-cni-pluginimage: docker.io/flannel/flannel-cni-plugin:v1.1.2#image: docker.io/rancher/mirrored-flannelcni-flannel-cni-plugin:v1.1.2command:- cpargs:- -f- /flannel- /opt/cni/bin/flannelvolumeMounts:- name: cni-pluginmountPath: /opt/cni/bin- name: install-cniimage: docker.io/flannel/flannel:v0.22.0#image: docker.io/rancher/mirrored-flannelcni-flannel:v0.22.0command:- cpargs:- -f- /etc/kube-flannel/cni-conf.json- /etc/cni/net.d/10-flannel.conflistvolumeMounts:- name: cnimountPath: /etc/cni/net.d- name: flannel-cfgmountPath: /etc/kube-flannel/containers:- name: kube-flannelimage: docker.io/flannel/flannel:v0.22.0#image: docker.io/rancher/mirrored-flannelcni-flannel:v0.22.0command:- /opt/bin/flanneldargs:- --ip-masq- --kube-subnet-mgrresources:requests:cpu: "100m"memory: "50Mi"securityContext:privileged: falsecapabilities:add: ["NET_ADMIN", "NET_RAW"]env:- name: POD_NAMEvalueFrom:fieldRef:fieldPath: metadata.name- name: POD_NAMESPACEvalueFrom:fieldRef:fieldPath: metadata.namespace- name: EVENT_QUEUE_DEPTHvalue: "5000"volumeMounts:- name: runmountPath: /run/flannel- name: flannel-cfgmountPath: /etc/kube-flannel/- name: xtables-lockmountPath: /run/xtables.lockvolumes:- name: runhostPath:path: /run/flannel- name: cni-pluginhostPath:path: /opt/cni/bin- name: cnihostPath:path: /etc/cni/net.d- name: flannel-cfgconfigMap:name: kube-flannel-cfg- name: xtables-lockhostPath:path: /run/xtables.locktype: FileOrCreate
kubectl apply -f kube-flannel.yml
 

K8s集群搭建

如果node节点还是NotReady状态,可尝试重启服务,等待几分钟再次查询

# 重启kubelet
sudo systemctl restart kubelet

K8s集群搭建

http://www.hengruixuexiao.com/news/45444.html

相关文章:

  • 淘宝便宜的团购网站建设上海seo公司排名榜
  • 网站结构优化百度推广账户登录首页
  • 织梦网站去除技术支持网站站长seo推广
  • 杏坛网站设计引流推广神器
  • 做招聘网站需要什么搜索引擎优化是免费的吗
  • 国内网站建设联系电话seo视频教程百度网盘
  • 网站主体域名合肥网络营销公司
  • 做外贸是在什么网站建网站的公司
  • 宁波网站开发建设我想做电商
  • 临沂免费做网站百度一下你就知道官网百度
  • 网站开发公司erp网页设计怎么做
  • window主机用wordpress做seo要投入什么
  • wordpress好难seo排名点击手机
  • 做数学的网站指数分布的期望和方差
  • 中小型网站建设 教案杭州百度推广优化排名
  • 关键词堆砌的作弊网站百度关键词多少钱一个月
  • 做网站app的工资高吗百度联盟广告
  • 哪家企业做网站好网络seo优化平台
  • 网站建设类发票税率多少北京企业网站推广哪家公司好
  • 福州网站建设公司哪家好收录批量查询工具
  • 个人公司网站怎么做企业官网首页设计
  • 网站模板免费吗手机免费建站app
  • 温州云优化seoseo整站优化
  • 网站开发需求收集百度人工投诉电话是多少
  • 自己做网站犯法吗湖南网站建设效果
  • 制作销售网站看广告得收益的app
  • 山西省建设监理协会网-官方网站seo收费标准多少
  • 合肥网站制作QQ成都网站建设技术外包
  • 做简单网站后端需要学什么有什么好的推广平台
  • 网站的做网站的公司网络推广文案怎么写