繁体   English   中英

如何通过 Azure DevOps 管道在 AKS 集群上部署 Istio?

[英]How to deploy Istio on AKS Cluster through Azure DevOps pipeline?

我需要通过 Azure DevOps YAML 管道在 AKS 集群上部署 Istio(版本- 1.7.3)? 我怎样才能做到这一点? 我目前收到错误。 我使用的代码如下。

$artifactsLocation = "$PSScriptRoot/artifacts"
$ProgressPreference = 'SilentlyContinue'; Invoke-WebRequest -URI "https://github.com/istio/istio/releases/download/$IstioVersion/istio-$IstioVersion-win.zip" -OutFile "$artifactsLocation/istio-$IstioVersion.zip"
Expand-Archive -Path "$artifactsLocation/istio-$IstioVersion.zip" -DestinationPath $artifactsLocation
kubectl create namespace istio-system --save-config
$istioctl = "$PSScriptRoot/artifacts/istio-$IstioVersion/bin/istioctl.exe
Invoke-Expression "$istioctl install -f $kubernetesInfrastructurePath/aks/yaml/istio.servicemesh.yaml"

我的管道任务没有给我任何错误(我正在使用脚本调用 powershell 文件,该脚本作为 Azure CLI 任务添加到管道中)但我猜,错误可能在上面的最后一行代码。 我在这里缺少其他要添加的内容,因为我对错误一无所知。

在使用“kubectl get all -n istio-operator”时,我得到的 output 是“在 istio-operator 命名空间中找不到资源”。

更新:-

$istioctl = "$PSScriptRoot/artifacts/istio-$IstioVersion/bin/istioctl

使用上述行时,错误是-

术语“/home/vsts/work/1/s/pipelines/scripts/aks/artifacts/istio-1.7.3/bin/istioctl”未被识别为 cmdlet、function、脚本文件或可执行程序的名称. 检查名称的拼写,或者如果包含路径,请验证路径是否正确并重试

$istioctl = "$PSScriptRoot/artifacts/istio-$IstioVersion/bin/istioctl.exe

但是当使用上面的行( .exe 添加)时,错误是 -

错误:找不到类型“application/x-msdos-program”的“view”mailcap 规则。/usr/bin/xdg-open:869:www-browser:未找到。/usr/bin/xdg-open:869:links2 :未找到。/usr/bin/xdg-open:869:elinks:未找到。/usr/bin/xdg-open:869:链接:未找到。/usr/bin/xdg-open:869:lynx:未找到。/usr/bin/xdg-open: 869: w3m: 未找到。xdg-open: 没有可用于打开 '/home/vsts/work/1/s/pipelines/scripts/aks/artifacts/istio-1.7 的方法.3/bin/istioctl.exe

现在问题似乎解决了。 代码没有问题。 问题在于管道中的池 vmimage。 错误地,我使用的是 ububtu 图像而不是 windows。

不正确:- vmImage:'ubuntu-latest'

正确:- vmImage:'windows-latest'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM