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

网络销售网站推广做网站的开源代码

网络销售网站推广,做网站的开源代码,中国机械设备采购网,关于小城镇建设的网站软硬件环境清单 架构#xff1a;使用kubeadm实现k8sdockercri-dockerd实现集群部署 使用三台虚拟机实现 主机名IP地址硬件软件k8s-master192.168.12.203/24 cpu:2颗2核 内 存#xff1a;4GB HDD#xff1a;20GB 网 络#xff1a;NAT VmWare17.6 Centos7.9 docker26.1.4…软硬件环境清单 架构使用kubeadm实现k8sdockercri-dockerd实现集群部署 使用三台虚拟机实现 主机名IP地址硬件软件k8s-master192.168.12.203/24 cpu:2颗2核 内 存4GB HDD20GB 网 络NAT VmWare17.6 Centos7.9 docker26.1.4 kubelet1.28.0 kubeadm1.28.0 kubectl1.28.0 cri-dockerd0.3.2 calico3.25 kuboard v3 k8s-node1192.168.12.204/24 cpu:1颗2核 内 存4GB HDD20GB 网 络NAT VmWare17.6 Centos7.9 docker26.1.4 kubelet1.28.0 kubeadm1.28.0 kubectl1.28.0 cri-dockerd0.3.2-3 k8s-node2192.168.12.205/24 cpu:1颗2核 内 存4GB HDD20GB 网 络NAT VmWare17.6 Centos7.9 docker26.1.4 kubelet1.28.0 kubeadm1.28.0 kubectl1.28.0 cri-dockerd0.3.2-3 替换yum源 配置静态 vi /etc/sysconfig/network-scripts/ifcfg-ens32 例如 # Generated by dracut initrd NAMEens32 DEVICEens32 ONBOOTyes NETBOOTyes UUID7e65296d-c761-4002-80ab-0543cee4f60d IPV6INITyes BOOTPROTOnone IPADDR192.168.88.200 NETMASK255.255.255.0 GATEWAY192.168.88.2 DNS1114.114.114.114 TYPEEthernet 重启服务 systemctl restart network 关闭安全软件 systemctl stop firewalld systemctl disable firewalld vi /etc/selinux/config 关闭swap空间 swapoff -a sed -i /swap/ s/^/#/ /etc/fstab 重启 reboot 域名映射 vim /etc/hostcat EOF /etc/hosts 192.168.12.203 k8s-master 192.168.12.204 k8s-node1 192.168.12.205 k8s-node2 EOF 下载升级软件 [rootlocalhost ~]# yum install chrony vim tree net-tools wget -y [rootlocalhost ~]# yum update -y 使用xftp上传新内核kernelkernel-ml-5.10.48 [rootlocalhost ~]# yum install kernel-ml-5.10.48-1.el7.x86_64.rpm -y 设置grub2默认引导为0 [rootocalhost ~]# grub2-set-default 0 重新生成grub2引导文件 [rootocalhost ~]# grub2-mkconfig -o /boot/grub2/grub.cfg 重启 reboot 查看内核是否修改成功 uname -r 设置主机名 [没有设置的进行设置] [rootlocalhost ~]# hostnamectl set-hostname k8s-master [rootlocalhost ~]# hostnamectl set-hostname k8s-node1 [rootlocalhost ~]# hostnamectl set-hostname k8s-node2[rootlocalhost ~]# reboot 修改linux的内核参数添加网桥过滤和地址转发功能 vim /etc/sysctl.d/k8s.conf 编辑/etc/sysctl.d/k8s.conf文件添加如下配置: net.bridge.bridge-nf-call-ip6tables 1 net.bridge.bridge-nf-call-iptables 1 net.ipv4.ip_forward 1 vm.swappiness0 重新加载配置 sysctl -p /etc/sysctl.d/k8s.conf 确认网桥转发已经是1【查看是否生效】 sysctl net.bridge.bridge-nf-call-iptables 【注意 配置ipvs功能在kubernetes中service有两种代理模型一种是基于iptables的一种是基于ipvs的两者比较的话ipvs的性能明显要高一些但是如果要使用它需要手动载入ipvs模块 】 1 安装ipset和ipvsadm yum install ipset ipvsadm -y 【注意 如果没有下载成功出现以下状况 请按照以下方式逐一排查 1.查看网络是否通畅: ping www.baidu.com 2.注意这句话查看一下yum源 cd /etc/yum.repos.d/ yum源文件中突然出现好多文件请按照下面的方式进行处理 重新拉入yum源 下载 yum install ipset ipvsadm -y 下载完成问题成功解决 】 2 添加需要加载的模块写入脚本文件 cat EOF /etc/sysconfig/modules/ipvs.modules #!/bin/bash modprobe -- ip_vs modprobe -- ip_vs_rr modprobe -- ip_vs_wrr modprobe -- ip_vs_sh modprobe -- nf_conntrack EOF 3 为脚本文件添加执行权限 chmod x /etc/sysconfig/modules/ipvs.modules 4 执行脚本文件 /bin/bash /etc/sysconfig/modules/ipvs.modules 5 查看对应的模块是否加载成功 lsmod | grep -e ip_vs -e nf_conntrack_ipv4 设置时间同步 修改配置文件 vim /etc/chrony.conf 启动chronyd服务 systemctl enable --now chronyd date k8s环境准备 安装docker 三台主机都需要安装 配置docker源 curl -o /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 查看yum源库是否有增加 安装docker yum install docker-ce -y 配置镜像加速器及Cgroup Driver 【 配置镜像加速器的方法设置镜像加速器_镜像管理_用户指南共享版_容器镜像服务 SWR-华为云 华为云---控制台---登录[注册]---登录容器镜像服务控制台---在左侧导航栏选择“镜像资源 镜像中心”---镜像加速器容器镜像服务-控制台 】 vim /etc/docker/daemon.json {exec-opts: [native.cgroupdriversystemd],registry-mirrors: [ https://8cdf32a387b744b2940801aa00322980.mirror.swr.myhuaweicloud.com ,https://docker.1ms.run,https://docker.1panel.live/ ]}启动并开机启动 systemctl enable --now docker 查看镜像加速器是否添加成功 docker info 驱动已更改 安装cri-dockerd 三台主机都需安装 【 作用Docker与Kubernetes通信的中间程序 】 【 K8s的1.24版本以后移除了docker-shim而Docker Engine默认又不支持CRI规范因而二者将无法直接完成整合为此Mirantis和Docker联合创建了cri-dockerd项目用于为Docker Engine提供一个能够支持到CRI的规范从而能够让Kubernetes基于CRI控制Docker 所以想在K8s的1.24版本及以后的版本中使用docker需要安装cri-dockerd然后K8s集群通过cri-dockerd联系到docker注意每个节点都要安装 】 项目地址https://github.com/Mirantis/cri-dockerd/releases 下载【下不下来用迅雷下然后传到虚拟机】 wget https://github.com/Mirantis/cri-dockerd/releases/download/v0.3.2/cri-dockerd-0.3.2-3.el7.x86_64.rpm 用rpm红帽管理器安装 rpm -ivh cri-dockerd-0.3.2-3.el7.x86_64.rpm 配置服务并启动; 修改启动文件 /usr/lib/systemd/system/cri-docker.service: vim /usr/lib/systemd/system/cri-docker.service 注意修改修改ExecStart改行值 改前 改后 内容 ExecStart/usr/bin/cri-dockerd --container-runtime-endpoint fd:// --pod-infra-container-imageregistry.aliyuncs.com/google_containers/pause:3.9 --network-plugincni --cni-bin-dir/opt/cni/bin --cni-cache-dir/var/lib/cni/cache --cni-conf-dir/etc/cni/net.d 启动cri-docker systemctl daemon-reload systemctl enable --now cri-docker systemctl status cri-docker docker的状态 systemctl status docker 安装k8s 三台主机都需安装 配置阿里源 cat /etc/yum.repos.d/kubernetes.repo EOF [kubernetes] nameKubernetes baseurlhttps://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/ enabled1 gpgcheck1 repo_gpgcheck1 gpgkeyhttps://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg EOF 查看yum源仓库有没有增加 ls /etc/yum.repos.d/【 安装k8s工具 kubeadm用于初始化集群并配置集群所需的组件并生成对应的安全证书和令牌 kubelet负责与 Master 节点通信并根据 Master 节点的调度决策来创建、更新和删除 Pod同时维护 Node 节点上的容器状态 kubectl用于管理k8集群的一个命令行工具 】 yum install kubelet-1.28.0 kubeadm-1.28.0 kubectl-1.28.0 -y 【 注意版本兼容性要求严格下载好不要随便升级 】 设置kubelet开机启动【注意不需要直启动初始化过程会启动】 systemctl enable kubelet 拍摄快照 关闭虚拟机同时克隆两台机子 如上克隆两台并设置虚拟机名字为k8s-node1k8s-node2。 修改k8s-node1k8s-node2的IP地址 nmtui 删除再激活一下 【右上角按两次一次删除一次激活】 修改虚拟机名字 同上设置两台克隆好的机子。 由于所有虚拟机已经重启所有我们需要看一个每一台虚拟机的各个服务有没有全部启动 查看一下所有虚拟机网络是否通 ping www.qq.com 查看内核是否有问题 uname -r 网桥转发有没有开 sysctl net.bridge.bridge-nf-call-iptables 查看模块是否加载 lsmod | grep -e ip_vs -e nf_conntrack_ipv4 查看时间是否同步 date 查看docker是否启动 systemctl status docker 查看cri是否启动 systemctl status cri-docker 查看k8s是否启动 systemctl enable kubelet【 注意 截止目前k8s的初始化已经完成三台虚拟机检查完毕 】 集群搭建 k8s-master节点初始化 kubeadm init --kubernetes-versionv1.28.0 --pod-network-cidr10.224.0.0/16 --apiserver-advertise-address192.168.12.203 --cri-socket unix:///var/run/cri-dockerd.sock --image-repository registry.aliyuncs.com/google_containers 节点初始化成功后-截图内容解释 [init] Using Kubernetes version: v1.28.0 [preflight] Running pre-flight checks [preflight] Pulling images required for setting up a Kubernetes cluster [preflight] This might take a minute or two, depending on the speed of your internet connection [preflight] You can also perform this action in beforehand using kubeadm config images pull [certs] Using certificateDir folder /etc/kubernetes/pki [certs] Generating ca certificate and key [certs] Generating apiserver certificate and key [certs] apiserver serving cert is signed for DNS names [k8s-master kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] and IPs [10.96.0.1 192.168.88.200] [certs] Generating apiserver-kubelet-client certificate and key [certs] Generating front-proxy-ca certificate and key [certs] Generating front-proxy-client certificate and key [certs] Generating etcd/ca certificate and key [certs] Generating etcd/server certificate and key [certs] etcd/server serving cert is signed for DNS names [k8s-master localhost] and IPs [192.168.88.200 127.0.0.1 ::1] [certs] Generating etcd/peer certificate and key [certs] etcd/peer serving cert is signed for DNS names [k8s-master localhost] and IPs [192.168.88.200 127.0.0.1 ::1] [certs] Generating etcd/healthcheck-client certificate and key [certs] Generating apiserver-etcd-client certificate and key [certs] Generating sa key and public key [kubeconfig] Using kubeconfig folder /etc/kubernetes [kubeconfig] Writing admin.conf kubeconfig file [kubeconfig] Writing kubelet.conf kubeconfig file [kubeconfig] Writing controller-manager.conf kubeconfig file [kubeconfig] Writing scheduler.conf kubeconfig file [etcd] Creating static Pod manifest for local etcd in /etc/kubernetes/manifests [control-plane] Using manifest folder /etc/kubernetes/manifests [control-plane] Creating static Pod manifest for kube-apiserver [control-plane] Creating static Pod manifest for kube-controller-manager [control-plane] Creating static Pod manifest for kube-scheduler [kubelet-start] Writing kubelet environment file with flags to file /var/lib/kubelet/kubeadm-flags.env [kubelet-start] Writing kubelet configuration to file /var/lib/kubelet/config.yaml [kubelet-start] Starting the kubelet [wait-control-plane] Waiting for the kubelet to boot up the control plane as static Pods from directory /etc/kubernetes/manifests. This can take up to 4m0s [apiclient] All control plane components are healthy after 3.504069 seconds [upload-config] Storing the configuration used in ConfigMap kubeadm-config in the kube-system Namespace [kubelet] Creating a ConfigMap kubelet-config in namespace kube-system with the configuration for the kubelets in the cluster [upload-certs] Skipping phase. Please see --upload-certs [mark-control-plane] Marking the node k8s-master as control-plane by adding the labels: [node-role.kubernetes.io/control-plane node.kubernetes.io/exclude-from-external-load-balancers] [mark-control-plane] Marking the node k8s-master as control-plane by adding the taints [node-role.kubernetes.io/control-plane:NoSchedule] [bootstrap-token] Using token: r57wjp.3eow3y22q1rc22b7 [bootstrap-token] Configuring bootstrap tokens, cluster-info ConfigMap, RBAC Roles [bootstrap-token] Configured RBAC rules to allow Node Bootstrap tokens to get nodes [bootstrap-token] Configured RBAC rules to allow Node Bootstrap tokens to post CSRs in order for nodes to get long term certificate credentials [bootstrap-token] Configured RBAC rules to allow the csrapprover controller automatically approve CSRs from a Node Bootstrap Token [bootstrap-token] Configured RBAC rules to allow certificate rotation for all node client certificates in the cluster [bootstrap-token] Creating the cluster-info ConfigMap in the kube-public namespace [kubelet-finalize] Updating /etc/kubernetes/kubelet.conf to point to a rotatable kubelet client certificate and key [addons] Applied essential addon: CoreDNS [addons] Applied essential addon: kube-proxyYour Kubernetes control-plane has initialized successfully! # 成功To start using your cluster, you need to run the following as a regular user: # 普通账户执行mkdir -p $HOME/.kubesudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/configsudo chown $(id -u):$(id -g) $HOME/.kube/configAlternatively, if you are the root user, you can run:# root账户执行export KUBECONFIG/etc/kubernetes/admin.conf # 认证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/Then you can join any number of worker nodes by running the following on each as root:# 节点加入命令 kubeadm join 192.168.88.200:6443 --token r57wjp.3eow3y22q1rc22b7 \--discovery-token-ca-cert-hash sha256:8310ae1d4cb3cd90a5a5e394c86aa8ee111fd61af88068da36bc7607c93c4a43 【 注意 如果master的节点初始化错误请按照以下步骤执行 说明 1加入指令可以通过如下命令重复获取 kubeadm token create --print-join-command 说明 2初始化失败可以用 reset 指令重置解决问题后重新初始化 kubeadm reset --cri-socket unix:///var/run/cri-dockerd.sock 说明 3查看日志 journalctl -f -u kubelet 说明 4token 失效处理 # 重新生成token kubeadm token create abcdef.0123456789abcdef # 获取ca证书sha256编码hash值 openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2/dev/null | openssl dgst -sha256 -hex | sed s/^.* // b615fccddcd4e80fc6f9c5e477bfc7a053b017660b73fdeccf89c559739664d7# 将新的node节点加入到k8s集群中 kubeadm join node主机ip地址:6443 --token abcdef.0123456789abcdef \--discovery-token-ca-cert-hash sha256:b615fccddcd4e80fc6f9c5e477bfc7a053b017660b7 】 k8s-master节点配置认证文件 根据初始化的提示完成认证 若当前为root账户则使用下列命令配置认证 vim /etc/profile 在底部更新环境变量 export KUBECONFIG/etc/kubernetes/admin.conf 让环境变量生效 source /etc/profile 【 注意 若当前为普通账户则使用下列命令配置认证 mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config 】 node节点加入集群 根据初始化的信息提示使用下面命令加入集群 在master查看令牌 复制令牌到node1,node2: kubeadm join 192.168.12.203:6443 --token d3lh75.7vk8icnd2ou1xj5g \--discovery-token-ca-cert-hash sha256:6df220fc63a5b97c8c81752081be849785d72d972c5727310eff89e043819636 --cri-socket unix:///var/run/cri-dockerd.sock 【 注意 如果出现错误显示cri-docker未开启 kubeadm join 192.168.12.203:6443 --token d3lh75.7vk8icnd2ou1xj5g \--discovery-token-ca-cert-hash sha256:6df220fc63a5b97c8c81752081be849785d72d972c5727310eff89e043819636 按照以下方式解决 查看cri-docket的状态 systemctl status cri-docker查看docker的状态 systemctl status docker找到问题需要增加一条关于cri的路径记录 kubeadm join 192.168.12.203:6443 --token d3lh75.7vk8icnd2ou1xj5g \--discovery-token-ca-cert-hash sha256:6df220fc63a5b97c8c81752081be849785d72d972c5727310eff89e043819636 --cri-socket unix:///var/run/cri-dockerd.sock 问题成功解决 】 使用kubectl工具查看节点状态 master端进行 kubectl get nodes 【注由于网络插件还没有部署节点会处于NotReady状态】 修改2个woker节点的标签名 kubectl label node k8s-node1 node-role.kubernetes.io/workerworker kubectl label node k8s-node2 node-role.kubernetes.io/workerworker 修改后角色方面由none变为worker 配置calico网络插件 master端执行 wget https://docs.projectcalico.org/manifests/calico.yaml 修改配置 vim calico.yaml 【小知识 给文档每一行加上序号 set nu 过滤 / 语句 】 去掉框内文字的注释并修改 处理前 处理后【修改的网段要求和初始化设置的网段完全一样】 【注意格式必须严格要求稍有不同意就会出错】 在框住的下面增加两行内容【注意添加的网卡是自己的网卡例如我的网卡是ens33不知道就ip a查看网卡】 - name: IP_AUTODETECTION_METHOD value: interfaceens33 修改value的为never 修改后 【注意使用空格作为间隔符不要用tab键】保存并退出。 应用配置 kubectl apply -f calico.yaml 查看node状态【注意若出现NotReady需要等待片刻在重新查看1分钟左右】 kubectl get node【说明三个节点masternode1node2的网卡已全部通信】 查看网卡 ip a 【增加了很多网卡】 查看详细的node节点信息 kubectl get node -o wide 查看系统管理配件pods的所有状态【注意 READY列都是1 表示以启动】 kubectl get pods -n kube-system 设置kubectl命令自动补全 【想设置就设置不想设置就不设置看心情目前位置集群已经设置完毕】 [rootk8s-master ~]# yum install bash-completion -y [rootk8s-master ~]# source /usr/share/bash-completion/bash_completion [rootk8s-master ~]# source (kubectl completion bash) [rootk8s-master ~]# echo source (kubectl completion bash) ~/.bashrc 安装可视化平台 使用该软件据说比较好用网址Kuboard_Kubernetes教程_K8S安装_管理界面 【有两种安装方式官网有详细介绍建议用docker安装】 使用docker安装 在master端上执行 拉去可视化平台 docker run -d --restartunless-stopped --namekuboard -p 2728:80/tcp -p 10081:10081/tcp -e KUBOARD_ENDPOINThttp://192.168.12.203:2728 -e KUBOARD_AGENT_SERVER_TCP_PORT10081 -v /root/kuboard-data:/data eipwork/kuboard:v3【 注意 # 注意 # -p 2728:80/tcp \                 # 宿主机端口可以修改为任意未使用端口 # -e KUBOARD_ENDPOINThttp://192.168.12.203:2728 \  # 改为k8s-master的ip 原因80端口的太多了怕撞了。所以我自定义改为2728 】 查看一下拉好的 docker ps 浏览器访问并配置 打开浏览器输入http://192.168.12.203:2728 登录 账户admin 密码Kuboard123 进入界面 添加集群 输入名称k8s-test 不能有中文 描述自定 点击复制按钮将脚本内容粘贴到k8s-master端后复制红色字段内容在粘贴回浏览器页面的            Token对话框中 Apiserver 地址https://192.168.88.200:6443 (替换为你的k8s-master的ip) 点击确定 复制内容 cat EOF kuboard-create-token.yaml --- apiVersion: v1 kind: Namespace metadata:name: kuboard--- apiVersion: v1 kind: ServiceAccount metadata:name: kuboard-adminnamespace: kuboard--- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata:name: kuboard-admin-crb roleRef:apiGroup: rbac.authorization.k8s.iokind: ClusterRolename: cluster-admin subjects: - kind: ServiceAccountname: kuboard-adminnamespace: kuboard--- apiVersion: v1 kind: Secret type: kubernetes.io/service-account-token metadata:annotations:kubernetes.io/service-account.name: kuboard-adminname: kuboard-admin-tokennamespace: kuboard EOFkubectl apply -f kuboard-create-token.yaml echo -e \033[1;34m将下面这一行红色输出结果填入到 kuboard 界面的 Token 字段\033[0m echo -e \033[31m$(kubectl -n kuboard get secret $(kubectl -n kuboard get secret kuboard-admin-token | grep kuboard-admin-token | awk {print $1}) -o go-template{{.data.token}} | base64 -d)\033[0m填写表单 集群概要 各个节点展示 服务部署 部署nginx服务 master端执行下列命令 kubectl create deployment nginx --imagenginx:latest kubectl expose deployment nginx --port80 --typeNodePort 查看服务是否存在【注意nginx映射端口】 kubectl get service 查看部署在哪里【部署在node2上了】 kubectl get pods -o wide 查看当前端口号的映射 kubectl get service 访问网址http://192.168.12.203:31931 到监控软件中查看 安装监控套件 点击安装metrics-server Metrics Server 是集群级别的资源利用率数据的聚合器。从 Kubelets收集资源指标并通过         Metrics API 在 Kubernetes apiserver 中公开它们以供 Horizontal Pod Autoscaler 和Vertical         Pod Autoscaler 使用 点击确定按钮 测试可以刷新一下网页 kubectl top nodes 安装pod监控曲线面板 以nginx的pod为例点击安装metrics-scraper按钮 采集完成
http://www.hkea.cn/news/14468276/

相关文章:

  • php网站开发案例详解做网站需要会写代码
  • 运城网站建设求职简历石家庄网站建设全包
  • 做彩票网站犯法不长丰县重点工程建设管理局网站
  • 网站后台改版面单页网站欣赏
  • 网站建设-部署与发布的题目建网站优势
  • 广州知名网站建设店面建设网站的必要性
  • 珠海网站建设服务做网站应该掌握的技术
  • 彩票黑网站是怎么做的wordpress更新服务器
  • 南阳提高网站排名企业老板培训课程
  • 010-58813333 可信网站网约车app开发
  • 网站做游戏活动策划方案推销网站建设具备哪些知识
  • 网站建设优化服务公司搭建电商平台网站
  • 武冈做网站科技传承
  • 烟台做网站的公司杭州利兴建设官方网站
  • 景点购票网站开发做一个和淘宝一样的网站要多少钱
  • 美食网站html代码专门做装修的网站
  • 中国建设银行吉林省分行官网站网站的外链接数
  • 攻略做的比较好的网站网站建设核心
  • 网站采用哪种开发语言龙岩网站设计理念
  • 网站域名所有权查询全网推广的方式有哪些
  • 游戏网站开发设计报告临淄房产信息网
  • 一个网站建设的目标平面设计基础知识
  • 网站怎么在成都备案个人网站的制作方法
  • 一级域名免费网站怎么申请专业搜索服务网络公司
  • 网站整合营销等服务工作压力大怎样缓解焦虑情绪
  • 电子商务网站建设的步骤过程wap小说网站源码
  • 怀集县住房和城乡规划建设网站代理网关app未运行怎么办
  • 网站建设保密唐山地区网站开发公司
  • 网站图片大小多少合适专业企业建站系统
  • 建站比较好的公司亿源科技网站建设