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

东凤镇做网站公司wordpress网站在哪

东凤镇做网站公司,wordpress网站在哪,做网站为什么需要服务器,怎么做区块链网站引言 最近在自己电脑上搭建一个小型k8s环境#xff0c;以学习云原生相关内容。这里我主要分为三部分记录#xff1a; 容器及容器编排理论环境安装相关rpcx服务实战 还在调试中#xff0c;先总结整理下#xff0c;这里后续补充上我的github工程链接。 一、容器及容器编排理…引言 最近在自己电脑上搭建一个小型k8s环境以学习云原生相关内容。这里我主要分为三部分记录 容器及容器编排理论环境安装相关rpcx服务实战 还在调试中先总结整理下这里后续补充上我的github工程链接。 一、容器及容器编排理论 容器技术中有三个核心概念容器Container、镜像Image以及镜像仓库Registry 如何通过Docker File构建镜像 首先编写Docker File文件, Docker build 命令构建镜像 ,Docker run 依照新编写好的镜像运行容器实例。 操作容器的常用命令有 docker ps、docker run、docker exec、docker stop 等操作镜像的常用命令有 docker images、docker rmi、docker build、docker tag 等操作镜像仓库的常用命令有 docker pull、docker push 等。 Kubernetes 就是一个生产级别的容器编排平台和集群管理系统不仅能够创建、调度容器还能够监控、管理服务器。 快速搭建 Kubernetes 环境的工具选择minikube 最大特点就是“小而美”可执行文件仅有不到 100MB运行镜像也不过 1GB但就在这么小的空间里却集成了 Kubernetes 的绝大多数功能特性不仅有核心的容器编排功能还有丰富的插件例如 Dashboard、GPU、Ingress、Istio、Kong、Registry 等等综合来看非常完善。 总结差异 容器技术只解决了应用的打包、安装问题面对复杂的生产环境就束手无策了解决之道就是容器编排它能够组织管理各个应用容器之间的关系让它们顺利地协同运行。 Kubernetes 源自 Google 内部的 Borg 系统也是当前容器编排领域的事实标准。minikube 可以在本机搭建 Kubernetes 环境功能很完善适合学习研究。操作 Kubernetes 需要使用命令行工具 kubectl只有通过它才能与 Kubernetes 集群交互。kubectl 的用法与 docker 类似也可以拉取镜像运行但操作的不是简单的容器。 docker和k8s之间的区别一个是容器技术一个是容器编排技术两者思考的维度是不一样的就容器而言容器解决的问题是隔离是一次打包到处运行的问题最大的价值就在于镜像的迁移。编排技术则是关注的是整个系统的问题如果你只关注一个服务迁移一个服务那docker就够但要迁移整个系统以及运维那就需要编排包括网络关系负载均衡回滚监控扩缩容问题则需要容器编排技术。 二、环境安装相关 我的电脑是mac m2因此需要安装一些arm架构的软件。首先安装docker主要使用的命令记录 因为安装的是docker 桌面版本,终端可能找不到docker命令因此添加环境变量: export PATH$PATH:/Applications/Docker.app/Contents/Resources/bin/验证: docker --version 之后安装minikube这里使用命令行安装arm架构版本: curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-darwin-arm64 sudo install minikube-darwin-arm64 /usr/local/bin/minikube验证 minikube version不过 minikube 只能够搭建 Kubernetes 环境要操作 Kubernetes还需要另一个专门的客户端工具“kubectl”。kubectl 的作用有点类似之前我们学习容器技术时候的工具“docker”它也是一个命令行工具作用也比较类似同样是与 Kubernetes 后台服务通信把我们的命令转发给 Kubernetes实现容器和集群的管理功能。 minikube kubectlminikube dashboard此时可以界面化查看: http://127.0.0.1:52337/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/#/pod?namespacedefault➜ k8s minikube version minikube version: v1.32.0 commit: 8220a6eb95f0a4d75f7f2d7b14cef975f050512d ➜ k8s minikube kubectl – version Client Version: v1.28.3 Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3 Server Version: v1.28.3 三、rpcx服务实战 RPCX是一个分布式的Go语言的 RPC 框架支持Zookepper、etcd、consul多种服务发现方式多种服务路由方式这里首先基于该框架在本机测试代码之后开始考虑生成镜像并本地部署。 3.1 本地运行及测试服务代码 服务端rpcx_server.go代码: package mainimport (contextflaglogtimeexample github.com/rpcxio/rpcx-examplesgithub.com/smallnest/rpcx/client )var (addr flag.String(addr, localhost:8972, server address) )func main() {flag.Parse()d, _ : client.NewPeer2PeerDiscovery(tcp*addr, )xclient : client.NewXClient(Arith, client.Failtry, client.RandomSelect, d, client.DefaultOption)defer xclient.Close()args : example.Args{A: 10,B: 20,}for {reply : example.Reply{}err : xclient.Call(context.Background(), Mul, args, reply)if err ! nil {log.Fatalf(failed to call: %v, err)}log.Printf(%d * %d %d, args.A, args.B, reply.C)time.Sleep(1e9)} } 客户端rpcx_client.go代码: package mainimport (flagexample github.com/rpcxio/rpcx-examplesgithub.com/smallnest/rpcx/server )var addr flag.String(addr, localhost:8972, server address)func main() {flag.Parse()s : server.NewServer()// s.RegisterName(Arith, new(example.Arith), )s.Register(new(example.Arith), )s.Serve(tcp, *addr) } 本地通过go run测试验证成功。 3.2 编写dockfile生成镜像 服务端 FROM golang:1.19-alpine as builder WORKDIR /usr/src/app ENV GOPROXYhttps://goproxy.cn RUN sed -i s/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g /etc/apk/repositories \apk add --no-cache ca-certificates tzdata COPY ./go.mod ./ COPY ./go.sum ./ RUN go mod download COPY . . RUN CGO_ENABLED0 go build -ldflags -s -w -o rpcx_serverFROM scratch as runner COPY --frombuilder /usr/share/zoneinfo/Asia/Shanghai /etc/localtime COPY --frombuilder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ COPY --frombuilder /usr/src/app/rpcx_server /opt/app/EXPOSE 8972CMD [/opt/app/rpcx_server]客户端: FROM golang:1.19-alpine as builder WORKDIR /usr/src/app ENV GOPROXYhttps://goproxy.cn RUN sed -i s/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g /etc/apk/repositories \apk add --no-cache ca-certificates tzdata COPY ./go.mod ./ COPY ./go.sum ./ RUN go mod download COPY . . RUN CGO_ENABLED0 go build -ldflags -s -w -o rpcx_client FROM busybox as runner COPY --frombuilder /usr/share/zoneinfo/Asia/Shanghai /etc/localtime COPY --frombuilder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ COPY --frombuilder /usr/src/app/rpcx_client /opt/app/CMD [/opt/app/rpcx_client]分别指向以下命令进行生成及验证: docker build . -t rpcx-server-demo:0.1.0 docker build . -t rpcx-client-demo:0.1.0之后通过docker images查看: docker images REPOSITORY TAG IMAGE ID CREATED SIZE rpcx-server-demo 0.1.0 a13acd11fc0e 19 hours ago 10.7MB3.3 通过yaml部署发布 服务端 kubectl apply -f rpcx-server-demo.yaml kubectl apply -f rpcx-server-demo-service.yamlKubernetes 中的服务Service和部署Deployment是两个不同的资源对象需要分别定义和创建。 rpcx-server-demo.yaml 文件用于创建 RPCX 服务器的部署。这个文件定义了部署所需的配置如容器镜像、副本数、资源限制等。通过执行 kubectl apply -f rpcx-server-demo.yaml 命令您将创建一个部署对象该对象将负责管理和运行 RPCX 服务器的实例。rpcx-server-demo-service.yaml 文件用于创建 RPCX 服务器的服务。服务是 Kubernetes 中的一种资源对象用于公开应用程序的网络访问。通过执行 kubectl apply -f rpcx-server-demo-service.yaml 命令您将创建一个服务对象该对象将为 RPCX 服务器提供一个稳定的网络地址以便其他应用程序可以通过该地址与服务器进行通信。 通过将这两个 YAML 文件分开您可以更好地组织和管理应用程序的部署和服务。部署文件负责定义和管理应用程序的实例而服务文件负责定义和管理应用程序的网络访问。这种分离可以提高可维护性和灵活性并使您能够更好地管理应用程序的不同方面。 客户端 kubectl apply -f rpcx-client-demo.yaml客户端通常不需要像服务端那样暴露网络服务所以不需要创建服务对象。 在这种情况下只需使用 kubectl apply -f rpcx-client-demo.yaml 命令来创建客户端的部署对象即可。该部署对象将负责管理和运行 RPCX 客户端的实例。 客户端通常是作为一个独立的应用程序运行它会连接到服务端提供的网络地址进行通信。因此不需要为客户端创建服务对象因为客户端不需要公开网络访问。 参考 极客时间部分教程 想学习k8s但没有环境使用minikube轻松搭建一个 https://mp.weixin.qq.com/s/aExQHKHsqsOChDrT4Lz0vw 构建 Golang 应用最小 Docker 镜像 https://www.cnblogs.com/hahaha111122222/p/17878985.html
http://www.sadfv.cn/news/131964/

相关文章:

  • 湘潭网站建设厦门网站制作网页设计与制作教程这本书
  • 小程序就是做网站林云seo博客
  • 北京网站建设制作哪家公司好什么网站百度收录好
  • net网站建设多少前班级网站模板
  • 做网站 seogoogle网站增加关键词
  • 网站301在哪做东莞松山湖学校
  • 德阳建设局网站首页行业网站做不下去
  • 扁平风格网站 模板有没有专门的网站做品牌授权的
  • 厂西建设厅网站wordpress中文团队
  • 酒泉建设局造价官网站西安昆奇网站建设
  • 服务器做两个网站昆明做网站seo
  • wordpress mip 插件网络seo优化服务
  • 做网站用什么代码计算机培训班出来好找工作吗
  • 什么网站做的好看的做网站的有哪些
  • 优化网站及商品排名怎么做app设计开发要多少钱
  • 网站建设 工作方案高端网站开发平台
  • 泰安企业建站公司企业网站开发公司有哪些
  • 怎样登入网站后台网站建设与维护专业实训室
  • 爱站网关键词搜索企业天眼查
  • cms那个做网站最好wordpress主题文档
  • 浙江舟山建设厅网站门户网站推广方式
  • 徐州建站费用wordpress怎么进入论坛
  • 天津住房城乡建设网站普陀微信网站建设
  • 安徽做网站公司哪家好一点网站建设英语翻译
  • 铁路建设监理协会网站优化网站 优帮云
  • wap网站 全屏一般给公司做网站用什么软件
  • 设计师在线网站网站建设怎么添加评论
  • 企业网站优化要多少钱wordpress wp_cumulus_insert(
  • 南宁网站网站建设合肥做兼职网站
  • 宣传型网站建设申请网站建设费