首页 > 其他分享 >部署 Argo Rollouts v1.6.3

部署 Argo Rollouts v1.6.3

时间:2023-12-11 19:00:48浏览次数:33  
标签:Rollouts rollouts created Argo dashboard io argo v1.6 argoproj

创建 ns argo-rollouts

# kubectl create namespace argo-rollouts
namespace/argo-rollouts created

安装 argo-rollouts

# kubectl apply -n argo-rollouts -f https://github.com/argoproj/argo-rollouts/releases/latest/download/install.yaml
customresourcedefinition.apiextensions.k8s.io/analysisruns.argoproj.io created
customresourcedefinition.apiextensions.k8s.io/analysistemplates.argoproj.io created
customresourcedefinition.apiextensions.k8s.io/clusteranalysistemplates.argoproj.io created
customresourcedefinition.apiextensions.k8s.io/experiments.argoproj.io created
customresourcedefinition.apiextensions.k8s.io/rollouts.argoproj.io created
serviceaccount/argo-rollouts created
clusterrole.rbac.authorization.k8s.io/argo-rollouts created
clusterrole.rbac.authorization.k8s.io/argo-rollouts-aggregate-to-admin created
clusterrole.rbac.authorization.k8s.io/argo-rollouts-aggregate-to-edit created
clusterrole.rbac.authorization.k8s.io/argo-rollouts-aggregate-to-view created
clusterrolebinding.rbac.authorization.k8s.io/argo-rollouts created
configmap/argo-rollouts-config created
secret/argo-rollouts-notification-secret created
service/argo-rollouts-metrics created
deployment.apps/argo-rollouts created

安装 dashboard

# kubectl apply -n argo-rollouts -f https://github.com/argoproj/argo-rollouts/releases/download/v1.6.3/dashboard-install.yaml
serviceaccount/argo-rollouts-dashboard created
clusterrole.rbac.authorization.k8s.io/argo-rollouts-dashboard created
clusterrolebinding.rbac.authorization.k8s.io/argo-rollouts-dashboard created
service/argo-rollouts-dashboard created
deployment.apps/argo-rollouts-dashboard created

安装 Argo Rollouts Kubectl 插件

下载 Argo Rollouts Kubectl 插件

# wget https://github.com/argoproj/argo-rollouts/releases/download/v1.6.3/kubectl-argo-rollouts-linux-amd64

添加执行权限

# chmod +x ./kubectl-argo-rollouts-linux-amd64

添加环境变量

# mv kubectl-argo-rollouts-linux-amd64 /usr/local/bin/kubectl-argo-rollouts

查看版本信息

# kubectl argo rollouts version
kubectl-argo-rollouts: v1.6.3+c7f7d1e
  BuildDate: 2023-12-05T13:38:04Z
  GitCommit: c7f7d1eaa9dfab501c768e7869ad7d2d0338c489
  GitTreeState: clean
  GoVersion: go1.20.11
  Compiler: gc
  Platform: linux/amd64

查看 argo rollouts 资源

dashboard以单独pod运行。

查看 pod

# kubectl get pods -n argo-rollouts
NAME                                       READY   STATUS    RESTARTS   AGE
argo-rollouts-65f649765f-4bslc             1/1     Running   0          9m42s
argo-rollouts-dashboard-6cd849f7bf-2dj5b   1/1     Running   0          97s

查看 svc

# kubectl get svc -n argo-rollouts
NAME                      TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)    AGE
argo-rollouts-dashboard   ClusterIP   10.100.105.201   <none>        3100/TCP   118s
argo-rollouts-metrics     ClusterIP   10.100.116.36    <none>        8090/TCP   10m

查看 CRD

# kubectl api-resources |grep argo
analysisruns                      ar                                              argoproj.io/v1alpha1                           true         AnalysisRun
analysistemplates                 at                                              argoproj.io/v1alpha1                           true         AnalysisTemplate
applications                      app,apps                                        argoproj.io/v1alpha1                           true         Application
applicationsets                   appset,appsets                                  argoproj.io/v1alpha1                           true         ApplicationSet
appprojects                       appproj,appprojs                                argoproj.io/v1alpha1                           true         AppProject
clusteranalysistemplates          cat                                             argoproj.io/v1alpha1                           false        ClusterAnalysisTemplate
experiments                       exp                                             argoproj.io/v1alpha1                           true         Experiment
rollouts                          ro                                              argoproj.io/v1alpha1                           true         Rollout

暴露 dashboard

argo-rollouts-dashboard-virtualservice.yaml 

---
apiVersion: networking.istio.io/v1beta1
kind: DestinationRule
metadata:
  name: argo-rollouts-dashboard
  namespace: argo-rollouts
spec:
  host: argo-rollouts-dashboard
  trafficPolicy:
    tls:
      mode: DISABLE
---
apiVersion: networking.istio.io/v1beta1
kind: Gateway
metadata:
  name: argo-rollouts-dashboard-gateway
  namespace: istio-system
spec:
  selector:
    app: istio-ingressgateway
  servers:
  - port:
      number: 80
      name: http
      protocol: HTTP
    hosts:
    - "argo-rollouts.wgs.com"
---
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
  name: argo-rollouts-dashboard-virtualservice
  namespace: argo-rollouts
spec:
  hosts:
  - "argo-rollouts.wgs.com"
  gateways:
  - istio-system/argo-rollouts-dashboard-gateway
  http:
  - match:
    - uri:
        prefix: /
    route:
    - destination:
        host: argo-rollouts-dashboard
        port:
          number: 3100
---

创建 vs

# kubectl apply -f argo-rollouts-dashboard-virtualservice.yaml
destinationrule.networking.istio.io/argo-rollouts-dashboard created
gateway.networking.istio.io/argo-rollouts-dashboard-gateway created
virtualservice.networking.istio.io/argo-rollouts-dashboard-virtualservice created

查看 vs

# kubectl get vs -n argo-rollouts
NAME                                     GATEWAYS                                           HOSTS                       AGE
argo-rollouts-dashboard-virtualservice   ["istio-system/argo-rollouts-dashboard-gateway"]   ["argo-rollouts.wgs.com"]   52s

查看 Istio svc

# kubectl get svc -n istio-system
NAME                    TYPE           CLUSTER-IP       EXTERNAL-IP       PORT(S)                                      AGE
istio-egressgateway     ClusterIP      10.100.156.22    <none>            80/TCP,443/TCP                               24d
istio-ingressgateway    LoadBalancer   10.100.148.114   192.168.174.249   15021:31031/TCP,80:31283/TCP,443:30741/TCP   25d
istiod                  ClusterIP      10.100.158.79    <none>            15010/TCP,15012/TCP,443/TCP,15014/TCP        25d
knative-local-gateway   ClusterIP      10.100.169.65    <none>            80/TCP                                       23d

添加hosts

# echo "192.168.174.249 argo-rollouts.wgs.com" >> hosts

访问dashboard

http://argo-rollouts.wgs.com/
返回空白页面

参考文档

https://argoproj.github.io/argo-rollouts/installation/

标签:Rollouts,rollouts,created,Argo,dashboard,io,argo,v1.6,argoproj
From: https://www.cnblogs.com/wangguishe/p/17894934.html

相关文章

  • Kubernetes声明性GitOps持续交付工具-Argo CD
    GitOps持续交付工具-ArgoCD1.ArgoCD简介Argo目前已被CNCF基金会收录,成为毕业项目。Argo站点地址:https://argoproj.github.io/,其中ArgoCD是Argo项目中的一个分支。argoCD文档帮助:https://argo-cd.readthedocs.io/en/stable/ArgoCD是用于Kubernetes的声明性GitOps持续交......
  • argon主题优化
    字体设置字体可以在字体天下、100font等网站里免费下载。通过转换网站获得woff2格式文件。你可以上传到网站根目录或者某个CDN里,然后添加下列额外CSS(具体方法见下):/*设置网站字体*//*原则上你可以设置多个字体,然后在不同的部位使用不同的字体*/@font-face{font-family:btf......
  • 更新 Kubernetes 集群中 Argo CD 的服务类型为 NodePort失败
    这个问题是我再做项目的时候要开区argoCD时并链接时端口开区不了kubectlpatchsvcargocd-server-nargocd-p'{"spec":{"type":"NodePort"}}'service/argocd-serverpatched(nochange)发现这样的问题这个问题我是换了一个思路是直接来做以刻kubernetes的yaml文件并且......
  • Cargo国内源
    [source.crates-io]registry="https://github.com/rust-lang/crates.io-index"#替换成你目的镜像源replace-with='sjtu'#清华大学[source.tuna]registry="https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git"#中国科学技术大学[sour......
  • Rust之cargo简单熟悉
    Rust之cargo简单熟悉还记得上一篇文章–《Rust简单开发环境搭建》中,helloworld的例子是用cargo来管理的,今天我们就来聊聊这个cargocargo是什么?为什么需要这个cargo?cargo是Rust的包管理器,Rust的包分为2种,一种是二进制可执行的包,一种是库的包,默认情况下就是第一种binary包在Rust里......
  • JimuReport积木报表 v1.6.4 稳定版本正式发布—开源免费的低代码报表
    项目介绍一款免费的数据可视化报表,含报表和大屏设计,像搭建积木一样在线设计报表!功能涵盖,数据报表、打印设计、图表报表、大屏设计等!Web版报表设计器,类似于excel操作风格,通过拖拽完成报表设计。秉承“简单、易用、专业”的产品理念,极大的降低报表开发难度、缩短开发周期、节......
  • Rust cargo常用命令
    目录设置国内镜像创建新项目构建项目运行项目检查项目,但不构建可执行文件运行项目的测试发布项目更新依赖查看项目依赖关系树创建新的库项目文档生成设置国内镜像cd~/.cargo#创建config文件vimconfig#添加如下镜像源[source.crates-io]registry="https://github.com/......
  • 使用 cargo expand 查看被宏隐藏的代码
    使用cargoexpand查看被宏隐藏的代码使用VScode安装扩展RustMacroExpand需要安装以下软件:cargo-expandAcargocrateforeasierhandlingofcompilercommandsRustnightlycompiler,youcaninstallitwithrustuptoolchaininstallnightlycargoexpand简......
  • Argocd使用说明
    一,背景概述1.0,背景知识docker虚拟化技术Kubernetes容器编排技术1.1,历史操作​ 以自身的使用经历来说明,之前在一个服务器上部署java程序的流程如下本地java-maven打包成为成果物将java程序的成果物上传到服务器上使用命令kill具体服务的进程使用命令启动java服务​ ......
  • 01 - 安装 Rust 和使用 Cargo
    一、Rust介绍Rust是一门系统编程语言,专注于安全,尤其是并发安全,支持函数式和命令式以及泛型等编程范式的多范式语言。Rust在语法上和C++类似,但是设计者想要在保证性能的同时提供更好的内存安全。Rust最初是由Mozilla研究院的GraydonHoare设计创造,然后在DaveHerman,Br......