久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

Istio怎么安裝

165次閱讀
沒有評論

共計(jì) 5150 個(gè)字符,預(yù)計(jì)需要花費(fèi) 13 分鐘才能閱讀完成。

這篇文章主要講解了“Istio 怎么安裝”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著丸趣 TV 小編的思路慢慢深入,一起來研究和學(xué)習(xí)“Istio 怎么安裝”吧!

為什么使用 Istio?

通過負(fù)載均衡、服務(wù)間的身份驗(yàn)證、監(jiān)控等方法,Istio  可以輕松地創(chuàng)建一個(gè)已經(jīng)部署了服務(wù)的網(wǎng)絡(luò),而服務(wù)的代碼只需很少更改甚至無需更改。通過在整個(gè)環(huán)境中部署一個(gè)特殊的 sidecar 代理為服務(wù)添加 Istio 的支持,而代理會攔截微服務(wù)之間的所有網(wǎng)絡(luò)通信,然后使用其控制平面的功能來配置和管理 Istio,這包括:

為 HTTP、gRPC、WebSocket 和 TCP 流量自動(dòng)負(fù)載均衡。

通過豐富的路由規(guī)則、重試、故障轉(zhuǎn)移和故障注入對流量行為進(jìn)行細(xì)粒度控制。

可插拔的策略層和配置 API,支持訪問控制、速率限制和配額。

集群內(nèi)(包括集群的入口和出口)所有流量的自動(dòng)化度量、日志記錄和追蹤。

在具有強(qiáng)大的基于身份驗(yàn)證和授權(quán)的集群中實(shí)現(xiàn)安全的服務(wù)間通信。

Istio 為可擴(kuò)展性而設(shè)計(jì),可以滿足不同的部署需求。

安裝方法

有三種方法進(jìn)行 istio 的安裝:

使用 istioctl 安裝(Customizable Install with Istioctl)

使用 Helm 安裝(Customizable Install with Helm)

使用 Operator 安裝(Standalone Operator Install)

這里我下載 istio,然后采用 istioctl 安裝。

容器鏡像

istio 1.5.1 需要用到多個(gè)鏡像,我統(tǒng)一下載并上傳到各個(gè)節(jié)點(diǎn),減少流量并加快速度。

docker pull docker.io/istio/pilot:1.5.1
docker pull docker.io/istio/proxyv2:1.5.1
docker pull docker.io/jaegertracing/all-in-one:1.16
docker pull docker.io/prom/prometheus:v2.15.1
docker pull grafana/grafana:6.5.2
docker pull quay.io/kiali/kiali:v1.15

保存鏡像,并打包為 *.zip:

echo  
echo  ========================================================== 
echo  Save istio for x64 v1.5.1 Images from docker.io ...... 
echo  ========================================================== 
echo  
#MY_REGISTRY=mirrorgcrio
ISTIO_VERSION= 1.5.1 
IMAGES_PATH=~/istio-images-$ISTIO_VERSION
mkdir $IMAGES_PATH
##  拉取鏡像
docker save docker.io/istio/pilot:1.5.1 -o $IMAGES_PATH/istio-pilot-$ISTIO_VERSION.tar
docker save docker.io/istio/proxyv2:1.5.1 -o $IMAGES_PATH/istio-proxyv2-$ISTIO_VERSION.tar
docker save docker.io/jaegertracing/all-in-one:1.16 -o $IMAGES_PATH/istio-jaeger-$ISTIO_VERSION.tar
docker save docker.io/prom/prometheus:v2.15.1 -o $IMAGES_PATH/istio-prometheus-2.15.1.tar
docker save grafana/grafana:6.5.2 -o $IMAGES_PATH/istio-grafana-6.5.2.tar
docker save quay.io/kiali/kiali:v1.15 -o $IMAGES_PATH/istio-kiali-1.15.tar
echo  Copy loader into $IMAGES_PATH 
cp istio-images-load.sh $IMAGES_PATH/
echo  Zip to $IMAGES_PATH.zip 
cd ~
zip -r istio-images-$ISTIO_VERSION.zip istio-images-$ISTIO_VERSION

echo  ========================================================== echo  Save istio for x64 v1.5.1 Images FINISHED. echo   by openthings@https://my.oschina.net/u/2306127. echo  ========================================================== echo 

使用 scp 上傳到節(jié)點(diǎn),運(yùn)行 unzip 解壓。

scp istio-images-1.5.1.zip openthings@openbox00:~/

保存下面的內(nèi)容到文件 istio-images-load.sh:

echo  
echo  ========================================================== 
echo  Load istio for x64 v1.5.1 Images from zip ...... 
echo  ========================================================== 
echo  
#MY_REGISTRY=mirrorgcrio
ISTIO_VERSION= 1.5.1 
IMAGES_PATH=~/istio-images-$ISTIO_VERSION
#cd ~
#unzip istio-images-$ISTIO_VERSION.zip
#cd istio-images-$ISTIO_VERSION
##  拉取鏡像
docker load -i $IMAGES_PATH/istio-pilot-$ISTIO_VERSION.tar
docker load -i $IMAGES_PATH/istio-proxyv2-$ISTIO_VERSION.tar
docker load -i $IMAGES_PATH/istio-jaeger-$ISTIO_VERSION.tar
docker load -i $IMAGES_PATH/istio-prometheus-2.15.1.tar
docker load -i $IMAGES_PATH/istio-grafana-6.5.2.tar
docker load -i $IMAGES_PATH/istio-kiali-1.15.tar
echo  
echo  ========================================================== 
echo  Save istio for x64 v1.5.1 Images FINISHED. 
echo   by openthings@https://my.oschina.net/u/2306127. 
echo  ========================================================== 
echo 

然后使用 istio-images-load.sh 來載入鏡像到 docker。

更多工具參考:https://github.com/openthings/kubernetes-tools/tree/master/istio

下載 Istio

因?yàn)橐恍┰颍厦婀俜轿臋n的下載鏈接無法訪問。我從這里下載,然后展開:

wget -c https://github.com/istio/istio/releases/download/1.5.1/istio-1.5.1-linux.tar.gz

下載內(nèi)容將包含:安裝文件、示例和 istioctl 命令行工具。

訪問 Istio release 頁面下載與您操作系統(tǒng)對應(yīng)的安裝文件。在 macOS 或 Linux 系統(tǒng)中,也可以通過以下命令下載最新版本的 Istio:

$ curl -L https://istio.io/downloadIstio | sh –

切換到 Istio 包所在目錄下。例如:Istio 包名為 istio-1.6.0,則:

$ cd istio-1.6.0

安裝目錄包含如下內(nèi)容:

install/kubernetes 目錄下,有 Kubernetes 相關(guān)的 YAML 安裝文件

samples/ 目錄下,有示例應(yīng)用程序

bin/ 目錄下,包含 istioctl 的客戶端文件。istioctl 工具用于手動(dòng)注入 Envoy sidecar 代理。

將 istioctl 客戶端路徑增加到 path 環(huán)境變量中,macOS 或 Linux 系統(tǒng)的增加方式如下:

$ export PATH=$PWD/bin:$PATH
 

在使用 bash 或 ZSH 控制臺時(shí),可以選擇啟動(dòng) auto-completion option。

安裝 Istio

請按照以下步驟在您所選的平臺上使用 demo 配置文件安裝 Istio。

安裝 demo 配置:

$ istioctl manifest apply –set profile=demo

為了驗(yàn)證是否安裝成功,需要先確保以下 Kubernetes 服務(wù)正確部署,然后驗(yàn)證除 jaeger-agent 服務(wù)外的其他服務(wù),是否均有正確的 CLUSTER-IP:

$ kubectl get svc -n istio-system

如果集群運(yùn)行在一個(gè)不支持外部負(fù)載均衡器的環(huán)境中(例如:minikube),
 istio-ingressgateway 的
 EXTERNAL-IP 將顯示為
  pending 狀態(tài)。請使用服務(wù)的
 NodePort 或 端口轉(zhuǎn)發(fā)來訪問網(wǎng)關(guān)。

請確保關(guān)聯(lián)的 Kubernetes pod 已經(jīng)部署,并且 STATUS 為 Running:

$ kubectl get pods -n istio-system

后續(xù)步驟

安裝 Istio 后,就可以部署您自己的服務(wù),或部署安裝程序中系統(tǒng)的任意一個(gè)示例應(yīng)用。

應(yīng)用程序必須使用 HTTP/1.1 或 HTTP/2.0 協(xié)議用于 HTTP 通信;HTTP/1.0 不支持。

當(dāng)使用 kubectl apply 來部署應(yīng)用時(shí),如果 pod 啟動(dòng)在標(biāo)有 istio-injection=enabled 的命名空間中,那么,Istio sidecar 注入器將自動(dòng)注入 Envoy 容器到應(yīng)用的 pod 中:

$ kubectl label namespace namespace istio-injection=enabled $ kubectl create -n namespace -f your-app-spec .yaml

在沒有 istio-injection 標(biāo)記的命名空間中,在部署前可以使用 istioctl kube-inject 命令將 Envoy 容器手動(dòng)注入到應(yīng)用的 pod 中:

$ istioctl kube-inject -f your-app-spec .yaml | kubectl apply -f –

如果您不確定要從哪開始,可以先部署 Bookinfo 示例,它會讓您體驗(yàn)到 Istio 的流量路由、故障注入、速率限制等功能。然后您可以根據(jù)您的興趣瀏覽各種各樣的 Istio 任務(wù)。

下列任務(wù)都是初學(xué)者開始學(xué)習(xí)的好入口:

請求路由

故障注入

流量轉(zhuǎn)移

查詢指標(biāo)

可視化指標(biāo)

日志收集

速率限制

Ingress 網(wǎng)關(guān)

訪問外部服務(wù)

可視化您的網(wǎng)格

下一步,可以定制 Istio 并部署您自己的應(yīng)用。在您開始自定義 Istio 來適配您的平臺或者其他用途之前,請查看以下資源:

部署模型

部署最佳實(shí)踐

Pod 需求

常規(guī)安裝說明

使用 Istio 過程中有任何問題,請來信告知我們,并歡迎您加入我們的社區(qū)。

卸載

卸載程序?qū)h除 RBAC 權(quán)限、istio-system 命名空間和所有相關(guān)資源。可以忽略那些不存在的資源的報(bào)錯(cuò),因?yàn)樗鼈兛赡芤呀?jīng)被刪除掉了。

$ istioctl manifest generate –set profile=demo | kubectl delete -f –

感謝各位的閱讀,以上就是“Istio 怎么安裝”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對 Istio 怎么安裝這一問題有了更深刻的體會,具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是丸趣 TV,丸趣 TV 小編將為大家推送更多相關(guān)知識點(diǎn)的文章,歡迎關(guān)注!

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-08-16發(fā)表,共計(jì)5150字。
轉(zhuǎn)載說明:除特殊說明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 那坡县| 莱州市| 泗洪县| 班戈县| 呼图壁县| 砀山县| 彭泽县| 云浮市| 宁远县| 哈巴河县| 龙泉市| 新沂市| 延寿县| 大渡口区| 湘潭市| 韶关市| 桃江县| 荥阳市| 宁强县| 永年县| 石屏县| 藁城市| 赣榆县| 高清| 隆子县| 城步| 精河县| 五大连池市| 荥阳市| 江陵县| 浦县| 东光县| 安国市| 阿克苏市| 林西县| 丹巴县| 阿拉善右旗| 澳门| 大渡口区| 呼伦贝尔市| 盐源县|