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

建设工程自学网站网站需求分析有哪些内容

建设工程自学网站,网站需求分析有哪些内容,容桂微信网站建设,基础建设基金有哪些在 Kubernetes 中使用 Traefik 作为入口点并将流量路由到您的应用程序服务 您可以按照以下步骤操作#xff1a; 1. 确保您已经在 Kubernetes 集群中部署了 Traefik。 在Kubernetes集群中部署Traefik#xff0c;您可以按照以下步骤操作#xff1a; 1. 创建一个Traefik C…在 Kubernetes 中使用 Traefik 作为入口点并将流量路由到您的应用程序服务 您可以按照以下步骤操作   1. 确保您已经在 Kubernetes 集群中部署了 Traefik。 在Kubernetes集群中部署Traefik您可以按照以下步骤操作 1. 创建一个Traefik ConfigMap文件traefik-config.yaml apiVersion: v1 kind: ConfigMap metadata:name: traefik-config data:traefik.toml: |[global]checkNewVersion truesendAnonymousUsage false[entryPoints][entryPoints.http]address :80[entryPoints.http.redirect]entryPoint https[entryPoints.https]address :443[entryPoints.https.tls][[entryPoints.https.tls.certificates]]certFile /ssl/tls.crtkeyFile /ssl/tls.key[providers][providers.kubernetesIngress]namespace default[accessLog] 注 其中tls.crt和tls.key就是证书文件注意必须要改为这个文件名否则会报错 [entryPoints.http.redirect]  entryPoint https 的配置是把入口为http的访问强制转为https.  可以用其他方式实现将配置文件中的[entryPoints.http.redirect] entryPoint https 去掉在ingress的annotations中配置ingress.kubernetes.io/ssl-redirect: true 。就可以将入口为http的访问强制转为https。 私签证书 kubectl create secret generic traefik-cert --from-filersa_private_key.pem --from-fileca-cert.pem -n kube-system 注由于secret是不能跨命名空间的如果应用是部署在default命名空间那还需要在default命名空间创建一个该secret去掉上面最后面的-n kube-system即可 2. 创建一个Traefik服务traefik-service.yaml apiVersion: v1 kind: Service metadata:name: traefiklabels:app: traefik spec:type: LoadBalancerports:- name: httpport: 80targetPort: 80- name: httpsport: 443targetPort: 443selector:app: traefik 3. 创建一个Traefik Deploymenttraefik-deployment.yaml apiVersion: apps/v1 kind: Deployment metadata:name: traefiklabels:app: traefik spec:replicas: 1selector:matchLabels:app: traefiktemplate:metadata:labels:app: traefikspec:containers:- name: traefikimage: traefik:latestports:- containerPort: 80- containerPort: 443volumeMounts:- name: configmountPath: /etc/traefik/traefik.tomlsubPath: traefik.tomlvolumes:- name: configconfigMap:name: traefik-config 4. 应用配置 kubectl apply -f traefik-config.yaml kubectl apply -f traefik-service.yaml kubectl apply -f traefik-deployment.yaml 这样Traefik就被成功部署到Kubernetes集群中了。您可以通过访问http://traefik-service-ip或https://traefik-service-ip来测试Traefik是否正常工作。请注意实际部署时您可能需要根据您的具体需求对配置文件和Service进行相应的修改。 2. 创建一个应用程序服务。以下是一个示例 YAML 文件 example-service.yaml其中包含一个简单的应用程序服务 apiVersion: v1 kind: Service metadata:name: example-service spec:selector:app: example-app ports:- protocol: TCP port: 80 targetPort: 8080 3. 创建一个对应的 Deployment用于运行应用程序。以下是一个示例 YAML 文件 example-deployment.yaml apiVersion: apps/v1 kind: Deployment metadata:name: example-app spec:replicas: 1 selector:matchLabels:app: example-app template:metadata:labels:app: example-app spec:containers:- name: example-app image: your-image-repo/example-app:tagports:- containerPort: 8080 4. 将上述 YAML 文件应用于 Kubernetes 集群 kubectl apply -f example-service.yaml kubectl apply -f example-deployment.yaml 5. 创建一个 Ingress 资源以将流量从 Traefik 路由到您的应用程序服务。创建一个名为 example-ingress.yaml 的文件内容如下 apiVersion: networking.k8s.io/v1 kind: Ingress metadata:name: example-ingress annotations:kubernetes.io/ingress.class: traefik spec:rules:- host: example.com http:paths:- path: /pathType: Prefix backend:service:name: example-service port:name: http 6. 将 example-ingress.yaml 文件应用于 Kubernetes 集群 kubectl apply -f example-ingress.yaml 现在您应该可以访问您的应用程序服务流量将通过 Traefik 入口点进行路由。请注意您需要将 example.com 替换为您实际的域名或 IP 地址。 在 Kubernetes 中使用 Traefik 并通过 Nginx 进行代理 1. 部署 Traefik 到 Kubernetes 集群参考上一个回答中的步骤。确保您已经创建了 Traefik ConfigMap 和 Deployment。   2. 创建一个 Nginx 配置文件例如 nginx.conf并将其放置在可访问的位置。在此文件中定义 Nginx 的基本配置以及 Traefik 的代理设置  server {listen 8088;proxy_http_version 1.1;location / {proxy_set_header Host dd.de.com;proxy_pass http://k8s_traefik/;proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection upgrade;proxy_set_header Host $host;proxy_cache_bypass $http_upgrade;set $Interface ; #定义限制字段if ($ip ! a ) { # 判断不等于定义的IP 并且 匹配到以下接口为真时返回403set $Interface I;}if ($request_uri ~* (.*)/(.*/|)(env|beans|health|auditevents|conditions|configprops|flyway|httptrace|loggers|liquibase|metrics|mappings|scheduledtasks|sessions|shutdown|threaddump|heapdump|jolokia|logfile|prometheus|trace|refresh|dump|autoconfig|resume|eatures|restart|features.json|refresh.json|dump.json|heapdump.json|autoconfig.json|resume.json|configprops.json|restart.json)$) {set $Interface ${Interface}P;}if ( $Interface IP ) {return 403;}}location / {proxy_set_header Host $http_host;proxy_pass http://web/;}location /manager/ {proxy_set_header Host $http_host;proxy_pass http://web_manager/;}lua_need_request_body on;set $resp_body ;body_filter_by_lua local resp_body string.sub(ngx.arg[1], 1, 200000)ngx.ctx.buffered (ngx.ctx.buffered or ) .. resp_bodyif ngx.arg[2] thenngx.var.resp_body ngx.ctx.bufferedend;} 3. 创建一个 Nginx Docker 镜像将 nginx.conf 文件复制到镜像中的适当位置。您可以使用以下 Dockerfile FROM nginx:latest COPY nginx.conf /etc/nginx/nginx.conf 4. 构建并推送 Nginx Docker 镜像到您的私有或公共镜像仓库。   5. 创建一个 Nginx Deployment在其中使用您刚刚构建的 Nginx 镜像。创建一个名为 nginx-deployment.yaml 的文件内容如下 apiVersion: apps/v1  kind: Deployment  metadata:name: nginx  spec:replicas: 1 selector:matchLabels:app: nginx template:metadata:labels:app: nginx spec:containers:- name: nginx image: your-image-repo/nginx:tagports:- containerPort: 80  6. 应用 nginx-deployment.yaml 配置文件以在 Kubernetes 集群中创建 Nginx 服务 kubectl apply -f nginx-deployment.yaml  7. 确保 Traefik 和 Nginx 服务正在运行。您可以使用以下命令检查服务的状态 kubectl get pods  现在您应该有一个运行在 Kubernetes 集群中的 Nginx 服务它将把所有请求代理到 Traefik 服务。您可以配置 Ingress 资源以使用 Traefik 作为入口点并将流量路由到您的应用程序服务。   创建一个 Ingress 资源以将流量从 Traefik 路由到您的应用程序服务并实现路径重写 创建一个名为 example-ingress.yaml 的文件内容如下   apiVersion: networking.k8s.io/v1 kind: Ingress metadata:name: example-ingress annotations:kubernetes.io/ingress.class: traefiktraefik.ingress.kubernetes.io/rule-type: PathPrefix spec:rules:- host: example.com http:paths:- path: /rewritten-path pathType: Prefix backend:service:name: example-service port:name: http 将 example-ingress.yaml 文件应用于 Kubernetes 集群 kubectl apply -f example-ingress.yaml  现在当您访问 http://example.com/rewritten-path 时流量将被路由到您的应用程序服务。请注意您需要将 example.com 替换为您实际的域名或 IP 地址。 在 Kubernetes 中您可以使用自定义注解来配置 Traefik 以下是如何为 Traefik Ingress 资源添加自定义注解的示例 创建一个 Ingress 资源以将流量从 Traefik 路由到您的应用程序服务并添加自定义注解。创建一个名为 example-ingress.yaml 的文件内容如下 apiVersion: networking.k8s.io/v1 kind: Ingress metadata:name: example-ingress annotations:kubernetes.io/ingress.class: traefiktraefik.ingress.kubernetes.io/custom-annotation: custom-value spec:rules:- host: example.com http:paths:- path: /pathType: Prefix backend:service:name: example-service port:name: http 将 example-ingress.yaml 文件应用于 Kubernetes 集群 kubectl apply -f example-ingress.yaml  在这个示例中我们添加了一个名为 traefik.ingress.kubernetes.io/custom-annotation 的自定义注解并将其值设置为 custom-value。您可以根据您的需求添加更多自定义注解和相应的值。   请注意您需要将 example.com 替换为您实际的域名或 IP 地址。 在 Kubernetes 中部署多实例 Traefik 1. 安装 HelmHelm 3:curl -fsSL https://get.helm.sh/helm-v3.8.0-linux-amd64.tar.gz | tar xz sudo mv linux-amd64/helm /usr/local/bin/helm Helm 2:curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-2.sh | bash 2. 将 Traefik 图片添加到您的本地图片仓库helm repo add traefik https://helm.traefik.io/traefik 3. 创建一个 values.yaml 文件来自定义 Traefik 部署。在此示例中我们将部署两个 Traefik 实例replicas: 2 4. 使用 Helm 安装 Traefikhelm install my-traefik-traefik traefik/traefik --create-namespace -n my-namespace -f values.yaml 这将在 my-namespace 命名空间中创建一个名为 my-traefik-traefik 的 Traefik 部署其中包含两个 Traefik 实例。5. 验证 Traefik 部署kubectl get deployment -n my-namespace 您应该看到一个名为 my-traefik-traefik 的部署其中包含两个副本实例。现在您已经成功在 Kubernetes 中部署了多个 Traefik 实例。请注意您可能需要根据您的集群环境和需求进一步自定义 Traefik 配置。在 Kubernetes 中您可以使用 Traefik 作为 ingress controller实现多个服务之间的负载均衡 1. 创建多个应用程序服务。以下是一个示例 YAML 文件 example-service-1.yaml其中包含一个简单的应用程序服务 注example-service-1.yaml 和example-service.yaml相同修改app名字即可 创建另一个类似的 YAML 文件 example-service-2.yaml但将名称更改为 example-service-2并将 selector 和 port 名称相应地更改。 2. 创建相应的 Deployment用于运行应用程序。以下是一个示例 YAML 文件 example-deployment-1.yaml 注example-deployment-1.yaml 和example-deployment.yaml相同修改app名字即可 创建另一个类似的 YAML 文件 example-deployment-2.yaml但将名称更改为 example-app-2并将 selector 和 port 名称相应地更改。  4. 创建一个 Ingress 资源以将流量从 Traefik 路由到这些应用程序服务。创建一个名为 example-ingress.yaml 的文件内容如下 apiVersion: networking.k8s.io/v1 kind: Ingress metadata:name: example-ingress annotations:kubernetes.io/ingress.class: traefik spec:rules:- host: example.com http:paths:- path: /pathType: Prefix backend:service:name: example-service-1 port:name: http - path: /service-2 pathType: Prefix backend:service:name: example-service-2 port:name: http 在这个示例中我们创建了一个名为 example-ingress 的 Ingress 资源它将流量从 example.com 路径路由到名为 example-service-1 的服务将 /service-2 路径的流量路由到名为 example-service-2 的服务。确保将 example.com 替换为您实际的域名或 IP 地址。   现在Traefik 已经在多个服务之间实现了负载均衡。当您拥有更多服务时可以添加更多路径到 Ingress 资源将它们与 Traefik 集成。
http://www.pierceye.com/news/389952/

相关文章:

  • 企业品牌建设方案范文roseonly企业网站优化
  • 电影资源采集网站咋做在百度上怎么建立网站吗
  • 好的企业网站设计方案中小企业网站建设 论文
  • 毕设网站建设论文网站开发合同履约
  • 织梦贷款网站源码备案过的网站换域名
  • 南宁网站seo顾问广州正规的免费建站
  • 温州教育网站建设建网站 陕西牛人网络科技
  • 青岛网站建设eoe世界杯现场直播
  • com网站建设中社交app定制开发
  • 阅读网站建设简易做海报网站
  • 上海企业网站建设推荐wordpress登录插件
  • 做网站的人联系电话可做产品预售的网站
  • 内部网络网站怎么做微信公众号推文制作软件
  • 什么网站做adsense好酒店官方网站建设书
  • 国家城乡与住房建设部网站做海报有什么参考的网站
  • 建德营销型网站建设企业邮箱地址怎么填写
  • 网站建设规划书总结怎么写wordpress 菜单链接
  • 网站目录程序重庆市建筑工程造价信息网官网
  • WordPress上传后找不到seo优化工程师
  • wordpress登录界面插件如何优化培训方式
  • 贵州建网站网站怎么优化自己免费
  • 个人网站介绍源码网站制作昆山
  • 网站开发属于知识产权吗如何制作软件程序
  • 外贸网站模板源码网络架构如何写
  • 网站建设美工的职位要求建材做哪些网站好
  • 淘宝客自建网站wap免费空间
  • python快速搭建网站如何制作一个微信刷题小程序
  • 域名备案与网站备案网站漏洞解决
  • 公明做网站多少钱高端网站设计怎么样
  • 重庆网站建设 熊掌号wordpress 被发文章