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

s网站优化广州网络推广培训

s网站优化,广州网络推广培训,微信上开网店怎么开,怎么建设商品网站目录 K8s简介环境搭建和准备工作修改主机名#xff08;所有节点#xff09;配置静态IP#xff08;所有节点#xff09;关闭防火墙和seLinux#xff0c;清除iptables规则#xff08;所有节点#xff09;关闭交换分区#xff08;所有节点#xff09;修改/etc/hosts文件所有节点配置静态IP所有节点关闭防火墙和seLinux清除iptables规则所有节点关闭交换分区所有节点修改/etc/hosts文件所有节点配置ssh免密登录master节点加载模块br_netfilter所有节点修改内核参数以满足k8s的运行需求所有节点配置centos7镜像源所有节点 安装docker所有节点安装k8s所有节点master节点初始化master节点在node1和node2节点执行join使用kubectl管理集群master节点 安装CNI网络插件安装Calicomaster节点 K8s简介 Kubernetes简称 K8s是一个开源的容器编排平台。 起源与发展 K8s 最初由谷歌公司开发于 2014 年开源。它借鉴了谷歌内部大规模容器管理的经验和技术旨在为容器化应用提供一个高效、可靠、可扩展的管理平台。随着容器技术的快速发展和广泛应用K8s 迅速成为容器编排领域的事实标准被众多企业和组织广泛采用并且在不断地发展和完善中社区活跃度极高持续推动着 K8s 功能的丰富和性能的提升。 主要组件 Master 节点是 K8s 集群的控制中心负责管理和协调整个集群。包含 API Server、Scheduler、Controller Manager 等组件API Server 提供了 K8s 的 API 接口用于接收和处理用户请求Scheduler 负责将 Pod 调度到合适的 Node 节点上Controller Manager 负责管理和维护集群中各种资源的状态。Node 节点是 K8s 集群中的工作节点用于运行容器化应用。包含 kubelet、kube-proxy 等组件kubelet 负责与 Master 节点通信接收并执行 Master 节点下达的任务管理本节点上的容器kube-proxy 负责实现 Pod 的网络代理和负载均衡功能。 环境搭建和准备工作 使用三台一模一样的centos7虚拟机内存4G4核40G磁盘一台做master另外两台做node。 [rootlocalhost ~]# cat /etc/centos-release CentOS Linux release 7.9.2009 (Core) [rootlocalhost ~]# uname -a Linux localhost.localdomain 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux [rootlocalhost ~]#修改主机名所有节点 分别执行。 hostnamectl set-hostname master hostnamectl set-hostname node1 hostnamectl set-hostname node2配置静态IP所有节点 vim /etc/sysconfig/network-scripts/ifcfg-ens33 # 将BOOTPROTO从dhcp改为static或none BOOTPROTOstatic # 若没有ONBOOT添加 ONBOOTyes # 下面的都需要添加,如果在桥接模式下ip地址要和实体机相同网段网关要和实体机网关相同。如果是nat则和nat网段相同。 IPADDR192.168.3.147 PREFIX24 GATEWAY192.168.3.1 #DNS服务器可以只配置一个当然也可以配置两个 DNS1114.114.114.114 DNS28.8.8.8 配置完成后重启网络服务 systemctl restart network关闭防火墙和seLinux清除iptables规则所有节点 为了防止干扰k8s运行。 # 关闭防火墙并且设置开机不启动 systemctl stop firewalld systemctl disable firewalld # 关闭seLinuxgetenforce是获取seLinux的状态 # 没有设置过seLinux一般getenforce查询结果为Enforcing需设置为disable关闭 getenforce # 直接修改文件改为SELINUXdisabled重启之后生效 vim /etc/selinux/config # 清除iptables规则 iptables -F 关闭交换分区所有节点 高版本的k8s要求必须关闭分区。 # 临时关闭 swapoff -a # 修改/etc/fstab文件永久关闭将文件中/dev/mapper/centos-swap swap行注释即可也可以直接运行下面这条命令 sed -i /swap/ s/^\(.*\)$/#\1/g /etc/fstab 修改/etc/hosts文件所有节点 # 直接运行下面的命令记得将IP地址修改为自己机器的IP地址主机名字也换成自己的 cat /etc/hosts EOF 192.168.3.147 master 192.168.3.146 node1 192.168.3.145 node2 EOF 配置ssh免密登录master节点 先生成密钥 ssh-keygen再复制到所有节点 ssh-copy-id master ssh-copy-id node1 ssh-copy-id node2测试连接免密登录 ssh node1 # 登出 exit加载模块br_netfilter所有节点 # 临时加载 modprobe br_netfilter # 永久加载创建文件在文件中写入模块名字br_netfilter vim /etc/modules-load.d/k8s.confsystemctl restart systemd-modules-load.service修改内核参数以满足k8s的运行需求所有节点 cat EOF /etc/sysctl.conf net.bridge.bridge-nf-call-ip6tables 1 net.bridge.bridge-nf-call-iptables 1 net.ipv4.ip_nonlocal_bind 1 net.ipv4.ip_forward 1 vm.swappiness0 EOF# 重新加载系统参数配置让上面的修改生效 sysctl -p 配置centos7镜像源所有节点 报错 Could not retrieve mirrorlist http://mirrorlist.centos.org/?release7archx86_64repoosinfrastock error was CentOS 7 仓库已经被归档当前的镜像地址无法找到所需的文件。CentOS 7 的官方支持已经结束部分仓库已被移至归档库。导致 yum 命令无法找到所需的元数据文件。 cd /etc/yum.repos.d mv CentOS-Base.repo CentOS-Base.repo.backup vim CentOS-Base.repo添加如下内容 # CentOS-Base.repo # # The mirror system uses the connecting IP address of the client and the # update status of each mirror to pick mirrors that are updated to and # geographically close to the client. You should use this for CentOS updates # unless you are manually picking other mirrors. # # If the mirrorlist does not work for you, as a fall back you can try the # remarked out baseurl line instead. # #[base] nameCentOS-$releasever - Base #mirrorlisthttp://mirrorlist.centos.org/?release$releaseverarch$basearchrepoosinfra$infra #baseurlhttp://mirror.centos.org/centos/$releasever/os/$basearch/ #baseurlhttp://vault.centos.org/7.9.2009/x86_64/os/ baseurlhttp://vault.centos.org/7.9.2009/os/$basearch/ gpgcheck1 gpgkeyfile:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7#released updates [updates] nameCentOS-$releasever - Updates #mirrorlisthttp://mirrorlist.centos.org/?release$releaseverarch$basearchrepoupdatesinfra$infra #baseurlhttp://mirror.centos.org/centos/$releasever/updates/$basearch/ #baseurlhttp://vault.centos.org/7.9.2009/x86_64/os/ baseurlhttp://vault.centos.org/7.9.2009/updates/$basearch/ gpgcheck1 gpgkeyfile:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7#additional packages that may be useful [extras] nameCentOS-$releasever - Extras #mirrorlisthttp://mirrorlist.centos.org/?release$releaseverarch$basearchrepoextrasinfra$infra #$baseurlhttp://mirror.centos.org/centos/$releasever/extras/$basearch/ #baseurlhttp://vault.centos.org/7.9.2009/x86_64/os/ baseurlhttp://vault.centos.org/7.9.2009/extras/$basearch/ gpgcheck1 gpgkeyfile:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7#additional packages that extend functionality of existing packages [centosplus] nameCentOS-$releasever - Plus #mirrorlisthttp://mirrorlist.centos.org/?release$releaseverarch$basearchrepocentosplusinfra$infra #baseurlhttp://mirror.centos.org/centos/$releasever/centosplus/$basearch/ #baseurlhttp://vault.centos.org/7.9.2009/x86_64/os/ baseurlhttp://vault.centos.org/7.9.2009/centosplus/$basearch/ gpgcheck1 enabled0 gpgkeyfile:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7再添加阿里镜像源。 wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo执行生效。 um clean all um makecache安装docker所有节点 #安装工具包 yum install -y yum-utils # 使用工具包自动下载docker这是官方的源太卡 #yum-config-manager \ # --add-repo \ # https://download.docker.com/linux/centos/docker-ce.repo#建议使用阿里云镜像替换官方源 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo# 指定版本安装docker yum install -y docker-ce-20.10.0 docker-ce-cli-20.10.0 containerd.io# 开启docker服务 systemctl start docker # 设置开机启动 systemctl enable docker配置Docker使用systemd作为默认Cgroup驱动。配置docker镜像源。 vim /etc/docker/daemon.json {registry-mirrors: [https://71v143bd.mirror.aliyuncs.com,https://docker.m.daocloud.io],exec-opts: [native.cgroupdriversystemd] }#重启docker systemctl daemon-reload systemctl restart docker安装k8s所有节点 添加k8s yum源 cat EOF /etc/yum.repos.d/kubernetes.repo [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 安装kubeadmkubeletkubectl指定版本 yum install -y kubelet-1.23.6 kubeadm-1.23.6 kubectl-1.23.6 设置kubelet开机自启动 systemctl enable kubelet 安装CoreDNS容器k8s集群运行时需要CoreDNS提供DNS解析服务 docker pull registry.aliyuncs.com/google_containers/coredns:v1.8.4master节点初始化master节点 使用kubeadm init命令进行初始化。 apiserver-advertise-address修改为master主机IP地址。–pod-network-cidr有两个值打算使用calico网络插件时最好使用192.168.0.0/16打算使用flannel网络插件时最好使用10.244.0.0/16这两个都是相应网络插件的默认IP否则需要修改对应配置文件。 kubeadm init \ --apiserver-advertise-address192.168.3.147 \ --image-repository registry.aliyuncs.com/google_containers \ --service-cidr10.1.0.0/16 \ #--pod-network-cidr10.244.0.0/16 --pod-network-cidr192.168.0.0/16 --kubernetes-versionv1.23.6 等待几分钟看到下面的内容说明成功了。 注意红圈中的命令在节点机器运行kubeadm join部分的命令加入节点。 在node1和node2节点执行join kubeadm join 192.168.3.147:6443 --token v2q814.ab6aywry0350o52v \--discovery-token-ca-cert-hash sha256:4fe3d2cebdcb34b198e43bfd1453d15bbad5cac7b98c902776a7795bd26214ec执行成功输出 使用kubectl管理集群master节点 初始化kubectl mkdir -p $HOME/.kube cp -i /etc/kubernetes/admin.conf $HOME/.kube/config chown $(id -u):$(id -g) $HOME/.kube/config 查看节点状态 kubectl get node到这里发现所有节点为NotReady状态这是因为完成互通还需要安装CNIContainer Networking Interface网络插件。 安装CNI网络插件 CNI 全称是“Container Networking Interface”即容器网络接口它提供了一种标准的插件机制用于连接容器到底层网络中。CNI 插件是一种可执行程序它将实现容器网络连接的一些逻辑打包在一起允许容器使用不同的网络模型并提供了一组网络抽象接口。在 Kubernetes 等容器编排平台中CNI 插件被广泛使用来实现容器网络。 CNI 插件可以由第三方厂商开发和维护因此可以选择最适合自己的插件。CNI 插件通常运行在主机上并由容器运行时调用例如 Docker、rkt 等。当容器需要连接到主机网络时CNI 插件将会为其创建必要的网络接口和路由规则。 一些常用的 CNI 插件包括 Flannel一个简单易用的网络解决方案支持多种部署模式。Calico一个高度可扩展的容器网络方案旨在为大规模生产环境提供网络和安全性。Weave Net一个分布式的容器网络方案具有良好的可扩展性和高度自动化的管理。Cilium一个基于 eBPF 的容器网络和安全解决方案提供强大的流量控制和安全性。 安装Calicomaster节点 先创建个文件夹用于存放配置文件 mkdir -p /work/devops/k8s/config cd /work/devops/k8s/config下载calico配置文件 wget https://docs.tigera.io/archive/v3.25/manifests/calico.yaml修改calico配置文件 vim calico.yaml 原来的配置 # - name: CALICO_IPV4POOL_CIDR # value: 192.168.0.0/16修改后的配置注意value与上边kubeadm init的–pod-network-cidr参数保持一致 特别注意修改的两行一定要注意缩进和上面的内容保持一致否则会报奇奇怪怪的错误。 启用calico kubectl apply -f ./calico.yaml查看pod状态 kubectl get pods -ACalico的状态错误Init:ImagePullBackOff或Init:ErrImagePull镜像没有拉取成功。 可以删除失败pod重新拉取但通常还是失败calico-node-bvvhc替换成实际镜像名称。 kubectl get pods -n kube-system | grep calico-node-bvvhc | awk {print$1}| xargs kubectl delete -n kube-system pods可以手动拉取calico注意这一步所有节点都要执行。 docker pull calico/cni:v3.25.0上一步完成后再次查询pod状态镜像已经在拉取了。 kubectl get pods -A查询节点状态都是Ready。
http://www.hkea.cn/news/14491174/

相关文章:

  • 做医疗器械网站怎么找高清大图天津网站排名优化费用
  • 省建设厅网站查询电商运营适合女生吗
  • 网站设计与制作说明书国外网站界面
  • 网站建设 搞笑笑话怎么查询网站的设计公司
  • 网站建设公司网站源码政务网站开发理念
  • 沈阳网站建设设计wordpress插件下载失败
  • 网站建设客户怎么找网站页面设计需求
  • 导航网站建站系统建设部网站公示
  • 毕业设计网站源码嵌入式累还是程序员累
  • 网站开发公司找哪家建立文档
  • 代做网站公司有哪些wordpress pre标签
  • 做网站要自己租服务器仿朋友圈网站建设
  • 四川中成煤炭建设集团网站怎么在手机上制作软件
  • asp网站制作软件秦皇岛市属于哪个省
  • 网站付费推广竞价2021qq网页游戏大全
  • 做全景网站深圳知名网站
  • 购物网站多少钱百度收录网站入口
  • 美食网站开发的目的和意义广州牌具做网站的公司
  • 南京代做网站网站怎么管理
  • 怎么用网站做word文件厦网站建设培训学校
  • 电子商务网站开发策划案合肥设网站
  • wordpress 论坛系统网站 优化
  • wordpress站内查找上海网用软件有限公司
  • 微信制作企业网站企业的网站建设怎么记科目
  • 朝阳做网站哪家公司好不参与网站建设的弊端
  • 织梦网站安装做多语言网站多少钱
  • 淘宝美工做倒计时图片网站技术支持 随州网站建设
  • 马鞍山建设机械网站阿里网站
  • html代码跟网站运营的关系北京网站设计联系方式
  • 济南做网站需要多少钱做网站策划薪酬