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

php网站免费模板市场营销数字营销

php网站免费模板,市场营销数字营销,加快公司网站建设,wordpress 固定 拼音网址理论#xff1a; 什么是 He lm 在没使用 helm 之前#xff0c;向 kubernetes 部署应用#xff0c;我们要依次部署 deployment、svc 等#xff0c;步骤较繁琐。 况且随着很多项目微服务化#xff0c;复杂的应用在容器中部署以及管理显得较为复杂#xff0c;helm 通过打包…理论 什么是 He lm 在没使用 helm 之前向 kubernetes 部署应用我们要依次部署 deployment、svc 等步骤较繁琐。 况且随着很多项目微服务化复杂的应用在容器中部署以及管理显得较为复杂helm 通过打包的方式支持发布的版本管理和控制 很大程度上简化了 Kubernetes 应用的部署和管理。 Helm 本质就是让 K8s 的应用管理Deployment、Service 等可配置可以通过类似于传递环境变量的方式能动态生成。通过动态生成 K8s 资源清单文件deployment.yaml、service.yaml。然后调用 Kubectl 自动执行 K8s 资源部署。   Helm 是官方提供的类似于 YUM 的包管理器是部署环境的流程封装。 Helm 有三个重要的概念Chart 、Repository 和 Release 1、Repository仓库 Helm 的软件仓库Repository 本质上是一个 Web 服务器该服务器保存了一系列的 Chart 软件包以供用户下载并且提供了一个该 Repository 的 Chart 包的清单文件以供查询。Helm 可以同时管理多个不同的 Repository。 2、Chart Helm 的软件包采用 TAR 格式。类似于 APT 的 DEB 包或者 YUM 的 RPM 包其包含了一组定义 Kubernetes 资源相关的 YAML 文件。   3、●Release 使用 helm install 命令在 Kubernetes 集群中部署的 Chart 称为 Release。可以理解为 Helm 使用 Chart 包部署的一个应用实例。一个 chart 通常可以在同一个集群中安装多次。每一次安装都会创建一个新的 release。 以 MySQL chart 为例如果你想在你的集群中运行两个数据库你可以安装该 chart 两次。每一个数据库都会拥有它自己的 release 和 release name。可以将 release 想象成应用程序发布的版本号。   总结Helm 安装 charts 到 Kubernetes 集群中每次安装都会创建一个新的 release。你可以在 Helm 的 chart repositories 中寻找新的 chart。   Helm3 与 Helm2 的区别 Helm2 是 C/S 架构主要分为客户端 helm 和服务端 Tiller。在 Helm 2 中Tiller 是作为一个 Deployment 部署在 kube-system 命名空间中很多情况下我们会为 Tiller 准备一个 ServiceAccount 这个 ServiceAccount 通常拥有集群的所有权限。 用户可以使用本地 Helm 命令自由地连接到 Tiller 中并通过 Tiller 创建、修改、删除任意命名空间下的任意资源。   在 Helm 3 中 Tiller 被移除了。新的 Helm 客户端会像 kubectl 命令一样读取本地的 kubeconfig 文件使用我们在 kubeconfig 中预先定义好的权限来进行一系列操作。   Helm 的官方网站 https://helm.sh/ 实例 1、安装 helm 下载二进制 Helm client 安装包 https://github.com/helm/helm/tags tar -zxvf helm-v3.6.0-linux-amd64.tar.gz mv linux-amd64/helm /usr/local/bin/helm helm version命令补全 source (helm completion bash)2、使用 helm 安装 Chart 添加常用的 chart 仓库 helm repo add bitnami https://charts.bitnami.com/bitnami helm repo add stable http://mirror.azure.cn/kubernetes/charts helm repo add aliyun https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts helm repo add incubator https://charts.helm.sh/incubator更新 charts 列表 helm repo update helm repo list查看 stable 仓库可用的 charts 列表 helm search repo stable删除 incubator 仓库 helm repo remove incubator查看 chart 信息 helm show chart stable/mysql #查看指定 chart 的基本信息helm show all stable/mysql #获取指定 chart 的所有信息安装 chart helm install my-redis bitnami/redis [-n default] #指定 release 的名字为 my-redis-n 指定部署到 k8s 的 namespacehelm install bitnami/redis --generate-name #不指定 release 的名字时需使用 –generate-name 随机生成一个名字查看所有 release helm ls helm list查看指定的 release 状态 helm status my-redis 删除指定的 release helm uninstall my-redis Helm 自定义模板 charts 除了可以在 repo 中下载还可以自己自定义创建完成后通过 helm 部署到 k8s。   拉取 chart mkdir /opt/helm cd /opt/helmhelm pull stable/mysqlls mysql-1.6.9.tgztar xf mysql-1.6.9.tgzyum install -y treetree mysql mysql ├── Chart.yaml ├── README.md ├── templates │   ├── configurationFiles-configmap.yaml │   ├── deployment.yaml │   ├── _helpers.tpl │   ├── initializationFiles-configmap.yaml │   ├── NOTES.txt │   ├── pvc.yaml │   ├── secrets.yaml │   ├── serviceaccount.yaml │   ├── servicemonitor.yaml │   ├── service.yaml │   ├── ingress.yaml │   └── tests │   ├── test-configmap.yaml │   └── test.yaml └── values.yaml可以看到一个 chart 包就是一个文件夹的集合文件夹名称就是 chart 包的名称。   chart 是包含至少两项内容的helm软件包 1软件包自描述文件 Chart.yaml这个文件必须有 name 和 versionchart版本 的定义 2一个或多个模板其中包含 Kubernetes 清单文件 ●NOTES.txtchart 的“帮助文本”在用户运行 helm install 时显示给用户 ●deployment.yaml创建 deployment 的资源清单文件 ●service.yaml为 deployment 创建 service 的资源清单文件 ●ingress.yaml: 创建 ingress 对象的资源清单文件 ●_helpers.tpl放置模板助手的地方可以在整个 chart 中重复使用   创建自定义的 char helm create nginxtree nginx nginx ├── charts ├── Chart.yaml ├── templates │   ├── deployment.yaml │   ├── _helpers.tpl │   ├── hpa.yaml │   ├── ingress.yaml │   ├── NOTES.txt │   ├── serviceaccount.yaml │   ├── service.yaml │   └── tests │   └── test-connection.yaml └── values.yaml cat nginx/templates/deployment.yaml #在 templates 目录下 yaml 文件模板中的变量go template语法的值默认是在 nginx/values.yaml 中定义的只需要修改 nginx/values.yaml 的内容也就完成了 templates 目录下 yaml 文件的配置。 比如在 deployment.yaml 中定义的容器镜像 image: {{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}cat nginx/values.yaml | grep repositoryrepository: nginx #以上变量值是在 create chart 的时候就自动生成的默认值你可以根据实际情况进行修改。/修改 chart vim nginx/Chart.yaml apiVersion: v2 name: nginx #chart名字 description: A Helm chart for Kubernetes type: application #chart类型application或library version: 0.1.0 #chart版本 appVersion: 1.16.0 #application部署版本vim nginx/values.yaml replicaCount: 1image:repository: nginxpullPolicy: IfNotPresenttag: latest #设置镜像标签imagePullSecrets: [] nameOverride: fullnameOverride: serviceAccount:create: trueannotations: {}name: podAnnotations: {}podSecurityContext: {}# fsGroup: 2000securityContext: {}# capabilities:# drop:# - ALL# readOnlyRootFilesystem: true# runAsNonRoot: true# runAsUser: 1000service:type: ClusterIPport: 80ingress:enabled: true #开启 ingressclassName: annotations: {}# kubernetes.io/ingress.class: nginx# kubernetes.io/tls-acme: truehosts:- host: www.kgc.com #指定ingress域名paths:- path: /pathType: Prefix #指定ingress路径类型tls: []# - secretName: chart-example-tls# hosts:# - chart-example.localresources:limits:cpu: 100mmemory: 128Mirequests:cpu: 100mmemory: 128Miautoscaling:enabled: falseminReplicas: 1maxReplicas: 100targetCPUUtilizationPercentage: 80# targetMemoryUtilizationPercentage: 80nodeSelector: {}tolerations: []affinity: {}打包 chart helm lint nginx #检查依赖和模版配置是否正确 helm package nginx #打包 chart会在当前目录下生成压缩包 nginx-0.1.0.tgz 部署 chart helm install nginx ./nginx --dry-run --debug #使用 --dry-run 参数验证 Chart 的配置并不执行安装helm install nginx ./nginx -n default #部署 chartrelease 版本默认为 1 或者 helm install nginx ./nginx-0.1.0.tgz可根据不同的配置来 install默认是 values.yaml helm install nginx ./nginx -f ./nginx/values-prod.yamlhelm lskubectl get pod,svc部署 ingress wget https://gitee.com/mirrors/ingress-nginx/raw/nginx-0.30.0/deploy/static/mandatory.yaml wget https://gitee.com/mirrors/ingress-nginx/raw/nginx-0.30.0/deploy/static/provider/baremetal/service-nodeport.yaml kubectl apply -f mandatory.yaml kubectl apply -f service-nodeport.yamlkubectl get pod,svc -n ingress-nginxkubectl get ingressvim /etc/hosts ..... 192.168.10.21 node02 www.kgc.comcurl http://www.kgc.com:30665修改为 NodePort 访问后升级 vim nginx/values.yaml service:type: NodePortport: 80nodePort: 30080ingress:enabled: falsevim nginx/templates/service.yaml apiVersion: v1 kind: Service metadata:name: {{ include nginx.fullname . }}labels:{{- include nginx.labels . | nindent 4 }} spec:type: {{ .Values.service.type }}ports:- port: {{ .Values.service.port }}targetPort: httpprotocol: TCPname: httpnodePort: {{ .Values.service.nodePort }} #指定 nodePortselector:{{- include nginx.selectorLabels . | nindent 4 }}升级 releaserelease 版本加 1 helm upgrade nginx nginx kubectl get svc curl 192.168.80.14:30080回滚 根据 release 版本回滚 helm history nginx #查看 release 版本历史helm rollback nginx 1 #回滚 release 到版本1helm history nginx #nginx release 已经回滚到版本 1通常情况下在配置好 templates 目录下的 kubernetes 清单文件后后续维护一般只需要修改 Chart.yaml 和 values.yaml 即可。   在命令行使用 --set 指定参数来部署install,upgraderelease #注此参数值会覆盖掉在 values.yaml 中的值如需了解其它的预定义变量参数可查看 helm 官方文档。 helm upgrade nginx nginx --set image.tag1.15 扩展 Helm 仓库  helm 可以使用 harbor 作为本地仓库将自定义的 chart 推送至 harbor 仓库。   安装 harbor #上传 harbor-offline-installer-v1.9.1.tgz 和 docker-compose 文件到 /opt 目录 cd /opt cp docker-compose /usr/local/bin/ chmod x /usr/local/bin/docker-composetar zxf harbor-offline-installer-v1.9.1.tgz cd harbor/vim harbor.yml hostname: 192.168.10.19 harbor_admin_password: Harbor12345 #admin用户初始密码 data_volume: /data #数据存储路径自动创建 chart:absolute_url: enabled #在chart中启用绝对url log:level: infolocal:rotate_count: 50rotate_size: 200Mlocation: /var/log/harbor #日志路径安装带有 Clair service 和 chart 仓库服务的 Harbor ./install.sh --with-clair --with-chartmuseum安装 push 插件 #在线安装 helm plugin install https://github.com/chartmuseum/helm-push#离线安装 wget https://github.com/chartmuseum/helm-push/releases/download/v0.8.1/helm-push_0.8.1_linux_amd64.tar.gzmkdir ~/.local/share/helm/plugins/helm-push tar -zxvf helm-push_0.8.1_linux_amd64.tar.gz -C ~/.local/share/helm/plugins/helm-pushhelm repo ls登录 Harbor WEB UI 界面创建一个新项目 浏览器访问http://192.168.10.19 默认的管理员用户名和密码是 admin/Harbor12345 点击 “新建项目” 按钮 填写项目名称为 “chart_repo”访问级别勾选 “公开”点击 “确定” 按钮创建新项目添加仓库 helm repo add harbor http://192.168.10.19/chartrepo/chart_repo --usernameadmin --passwordHarbor12345 #注这里的 repo 的地址是Harbor URL/chartrepo/项目名称Harbor 中每个项目是分开的 repo。如果不提供项目名称 则默认使用 library 这个项目。推送 chart 到 harbor 中 cd /opt/helm helm push nginx harbor
http://www.sadfv.cn/news/298785/

相关文章:

  • 解决设计网站问题制作公众号的编辑器
  • 网站速度慢的原因北京网站推广公司排名
  • 淄博网站制作公司深圳企业网站建设服务公司
  • 做服装店网站的素材深圳宝安做网站的公司
  • 推广型网站建设机构网页设计与网站开发的实践目的
  • 荷城网站设计有关大学生做兼职的网站
  • 自己做图片的网站链接上海网站seo
  • 系统网站建设方案郑州网站建设哪里好
  • 保亭整站优化手机互动网站建设
  • 凡科网站建设公司临沂谁会做网站
  • wamp做的网站上传百度企业查询官网
  • wordpress连通公众号seo搜外
  • 鸣蝉建站平台快速排名点击工具
  • 做mip网站必须备案吗o2o网站开发价格
  • 0317网站建设甘肃公司的网络营销方案
  • 哪些网站可以做商家苏州网站制作 网站
  • 阿里巴巴网站上面产品描述一般怎么做的邯郸网站设计建设
  • 到哪个网站做任务写作网站挣钱对比
  • 深圳集团网站开发网站开发公司专门做网站的公司有哪些
  • 深圳专业做网站和seo的公司html做的网页怎么变成网站
  • 江苏江都建设集团有限公司官方网站定远建设局官方网站
  • 怎么把一个网站设置成首页广东建设协会网站
  • 网站空间 云端网站名称和备案的不一样
  • 服装生产厂商网站建设方案手机网站需要什么
  • 十堰建设网站首页wordpress标签管理系统
  • 专业网站设计制作改版电子商务网站建设与管理期末
  • vellum wordpressseo主要做哪些工作
  • 可以绑定域名的免费网站扫码进入网站 怎么做
  • 门户网站特点把网站提交给百度
  • 夜夜做新郎网站在线视频网站建设中的服务器搭建方式