日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
創(chuàng)新互聯(lián)kubernetes教程:Kubernetes配置對(duì)多集群的訪(fǎng)問(wèn)

配置對(duì)多集群的訪(fǎng)問(wèn)

本文展示如何使用配置文件來(lái)配置對(duì)多個(gè)集群的訪(fǎng)問(wèn)。 在將集群、用戶(hù)和上下文定義在一個(gè)或多個(gè)配置文件中之后,用戶(hù)可以使用 ?kubectl config use-context? 命令快速地在集群之間進(jìn)行切換。

成都創(chuàng)新互聯(lián)2013年開(kāi)創(chuàng)至今,先為北川羌族等服務(wù)建站,北川羌族等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢(xún)服務(wù)。為北川羌族企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。

說(shuō)明:

用于配置集群訪(fǎng)問(wèn)的文件有時(shí)被稱(chēng)為 kubeconfig 文件。 這是一種引用配置文件的通用方式,并不意味著存在一個(gè)名為 ?
kubeconfig ?的文件。

警告: 只使用來(lái)源可靠的 kubeconfig 文件。使用特制的 kubeconfig 文件可能會(huì)導(dǎo)致惡意代碼執(zhí)行或文件暴露。 如果必須使用不受信任的 kubeconfig 文件,請(qǐng)首先像檢查 shell 腳本一樣仔細(xì)檢查它。

在開(kāi)始之前

你必須擁有一個(gè) Kubernetes 的集群,同時(shí)你的 Kubernetes 集群必須帶有 kubectl 命令行工具。 建議在至少有兩個(gè)節(jié)點(diǎn)的集群上運(yùn)行本教程,且這些節(jié)點(diǎn)不作為控制平面主機(jī)。 如果你還沒(méi)有集群,你可以通過(guò) Minikube 構(gòu)建一個(gè)你自己的集群,或者你可以使用下面任意一個(gè) Kubernetes 工具構(gòu)建:

  • Katacoda
  • 玩轉(zhuǎn) Kubernetes

要檢查 kubectl 是否安裝, 執(zhí)行 ?kubectl version --client? 命令。 kubectl 的版本應(yīng)該與集群的 API 服務(wù)器 使用同一次版本號(hào)。

定義集群、用戶(hù)和上下文 

假設(shè)用戶(hù)有兩個(gè)集群,一個(gè)用于正式開(kāi)發(fā)工作,一個(gè)用于其它臨時(shí)用途(scratch)。 在 ?development ?集群中,前端開(kāi)發(fā)者在名為 ?frontend ?的名字空間下工作, 存儲(chǔ)開(kāi)發(fā)者在名為 ?storage ?的名字空間下工作。在 ?scratch ?集群中, 開(kāi)發(fā)人員可能在默認(rèn)名字空間下工作,也可能視情況創(chuàng)建附加的名字空間。 訪(fǎng)問(wèn)開(kāi)發(fā)集群需要通過(guò)證書(shū)進(jìn)行認(rèn)證。 訪(fǎng)問(wèn)其它臨時(shí)用途的集群需要通過(guò)用戶(hù)名和密碼進(jìn)行認(rèn)證。

創(chuàng)建名為 ?config-exercise? 的目錄。在 ?config-exercise? 目錄中,創(chuàng)建名為 ?config-demo? 的文件,其內(nèi)容為:

apiVersion: v1
kind: Config
preferences: {}

clusters:
- cluster:
  name: development
- cluster:
  name: scratch

users:
- name: developer
- name: experimenter

contexts:
- context:
  name: dev-frontend
- context:
  name: dev-storage
- context:
  name: exp-scratch

配置文件描述了集群、用戶(hù)名和上下文。?config-demo? 文件中含有描述兩個(gè)集群、 兩個(gè)用戶(hù)和三個(gè)上下文的框架。

進(jìn)入 ?config-exercise? 目錄。輸入以下命令,將集群詳細(xì)信息添加到配置文件中:

kubectl config --kubeconfig=config-demo set-cluster development --server=https://1.2.3.4 --certificate-authority=fake-ca-file
kubectl config --kubeconfig=config-demo set-cluster scratch --server=https://5.6.7.8 --insecure-skip-tls-verify

將用戶(hù)詳細(xì)信息添加到配置文件中:

kubectl config --kubeconfig=config-demo set-credentials developer --client-certificate=fake-cert-file --client-key=fake-key-seefile
kubectl config --kubeconfig=config-demo set-credentials experimenter --username=exp --password=some-password

說(shuō)明:

要?jiǎng)h除用戶(hù),可以運(yùn)行 ?
kubectl --kubeconfig=config-demo config unset users.?

要?jiǎng)h除集群,可以運(yùn)行 ?
kubectl --kubeconfig=config-demo config unset clusters.?

要?jiǎng)h除上下文,可以運(yùn)行 ?
kubectl --kubeconfig=config-demo config unset contexts.?

將上下文詳細(xì)信息添加到配置文件中:

kubectl config --kubeconfig=config-demo set-context dev-frontend --cluster=development --namespace=frontend --user=developer
kubectl config --kubeconfig=config-demo set-context dev-storage --cluster=development --namespace=storage --user=developer
kubectl config --kubeconfig=config-demo set-context exp-scratch --cluster=scratch --namespace=default --user=experimenter

打開(kāi) ?config-demo? 文件查看添加的詳細(xì)信息。也可以使用 ?config view? 命令進(jìn)行查看:

kubectl config --kubeconfig=config-demo view

輸出展示了兩個(gè)集群、兩個(gè)用戶(hù)和三個(gè)上下文:

apiVersion: v1
clusters:
- cluster:
    certificate-authority: fake-ca-file
    server: https://1.2.3.4
  name: development
- cluster:
    insecure-skip-tls-verify: true
    server: https://5.6.7.8
  name: scratch
contexts:
- context:
    cluster: development
    namespace: frontend
    user: developer
  name: dev-frontend
- context:
    cluster: development
    namespace: storage
    user: developer
  name: dev-storage
- context:
    cluster: scratch
    namespace: default
    user: experimenter
  name: exp-scratch
current-context: ""
kind: Config
preferences: {}
users:
- name: developer
  user:
    client-certificate: fake-cert-file
    client-key: fake-key-file
- name: experimenter
  user:
    password: some-password
    username: exp

其中的 ?fake-ca-file?、?fake-cert-file? 和 ?fake-key-file? 是證書(shū)文件路徑名的占位符。 你需要更改這些值,使之對(duì)應(yīng)你的環(huán)境中證書(shū)文件的實(shí)際路徑名。

有時(shí)你可能希望在這里使用 BASE64 編碼的數(shù)據(jù)而不是一個(gè)個(gè)獨(dú)立的證書(shū)文件。 如果是這樣,你需要在鍵名上添加 ?-data? 后綴。例如, ?certificate-authority-data?、?client-certificate-data? 和 ?client-key-data?。

每個(gè)上下文包含三部分(集群、用戶(hù)和名字空間),例如, ?dev-frontend? 上下文表明:使用 ?developer ?用戶(hù)的憑證來(lái)訪(fǎng)問(wèn) ?development ?集群的 ?frontend ?名字空間。

設(shè)置當(dāng)前上下文:

kubectl config --kubeconfig=config-demo use-context dev-frontend

現(xiàn)在當(dāng)輸入 ?kubectl ?命令時(shí),相應(yīng)動(dòng)作會(huì)應(yīng)用于 ?dev-frontend? 上下文中所列的集群和名字空間, 同時(shí),命令會(huì)使用 ?dev-frontend? 上下文中所列用戶(hù)的憑證。

使用 ?--minify? 參數(shù),來(lái)查看與當(dāng)前上下文相關(guān)聯(lián)的配置信息。

kubectl config --kubeconfig=config-demo view --minify

輸出結(jié)果展示了 ?dev-frontend? 上下文相關(guān)的配置信息:

apiVersion: v1
clusters:
- cluster:
    certificate-authority: fake-ca-file
    server: https://1.2.3.4
  name: development
contexts:
- context:
    cluster: development
    namespace: frontend
    user: developer
  name: dev-frontend
current-context: dev-frontend
kind: Config
preferences: {}
users:
- name: developer
  user:
    client-certificate: fake-cert-file
    client-key: fake-key-file

現(xiàn)在假設(shè)用戶(hù)希望在其它臨時(shí)用途集群中工作一段時(shí)間。

將當(dāng)前上下文更改為 ?exp-scratch?:

kubectl config --kubeconfig=config-demo use-context exp-scratch

現(xiàn)在你發(fā)出的所有 ?kubectl ?命令都將應(yīng)用于 ?scratch ?集群的默認(rèn)名字空間。 同時(shí),命令會(huì)使用 ?exp-scratch? 上下文中所列用戶(hù)的憑證。

查看更新后的當(dāng)前上下文 ?exp-scratch? 相關(guān)的配置:

kubectl config --kubeconfig=config-demo view --minify

最后,假設(shè)用戶(hù)希望在 ?development ?集群中的 ?storage ?名字空間下工作一段時(shí)間。

將當(dāng)前上下文更改為 ?dev-storage?:

kubectl config --kubeconfig=config-demo use-context dev-storage

查看更新后的當(dāng)前上下文 ?dev-storage? 相關(guān)的配置:

kubectl config --kubeconfig=config-demo view --minify

創(chuàng)建第二個(gè)配置文件 

在 ?config-exercise? 目錄中,創(chuàng)建名為 ?config-demo-2? 的文件,其中包含以下內(nèi)容:

apiVersion: v1
kind: Config
preferences: {}

contexts:
- context:
    cluster: development
    namespace: ramp
    user: developer
  name: dev-ramp-up

上述配置文件定義了一個(gè)新的上下文,名為 ?dev-ramp-up?。

設(shè)置 KUBECONFIG 環(huán)境變量 

查看是否有名為 ?KUBECONFIG ?的環(huán)境變量。 如有,保存 ?KUBECONFIG ?環(huán)境變量當(dāng)前的值,以便稍后恢復(fù)。 例如:

Linux 

export KUBECONFIG_SAVED="$KUBECONFIG"

Windows PowerShell 

$Env:KUBECONFIG_SAVED=$ENV:KUBECONFIG

?KUBECONFIG ?環(huán)境變量是配置文件路徑的列表,該列表在 Linux 和 Mac 中以冒號(hào)分隔, 在 Windows 中以分號(hào)分隔。 如果有 ?KUBECONFIG ?環(huán)境變量,請(qǐng)熟悉列表中的配置文件。

臨時(shí)添加兩條路徑到 ?KUBECONFIG ?環(huán)境變量中。例如:

Linux

export KUBECONFIG="${KUBECONFIG}:config-demo:config-demo-2"

Windows PowerShell

$Env:KUBECONFIG=("config-demo;config-demo-2")

在 ?config-exercise? 目錄中輸入以下命令:

kubectl config view

輸出展示了 ?KUBECONFIG ?環(huán)境變量中所列舉的所有文件合并后的信息。 特別地,注意合并信息中包含來(lái)自 ?config-demo-2? 文件的 ?dev-ramp-up? 上下文和來(lái)自 ?config-demo? 文件的三個(gè)上下文:

contexts:
- context:
    cluster: development
    namespace: frontend
    user: developer
  name: dev-frontend
- context:
    cluster: development
    namespace: ramp
    user: developer
  name: dev-ramp-up
- context:
    cluster: development
    namespace: storage
    user: developer
  name: dev-storage
- context:
    cluster: scratch
    namespace: default
    user: experimenter
  name: exp-scratch

探索 $HOME/.kube 目錄 

如果用戶(hù)已經(jīng)擁有一個(gè)集群,可以使用 ?kubectl ?與集群進(jìn)行交互, 那么很可能在 ?$HOME/.kube? 目錄下有一個(gè)名為 ?config ?的文件。

進(jìn)入 ?$HOME/.kube? 目錄,看看那里有什么文件。通常會(huì)有一個(gè)名為 ?config ?的文件,目錄中可能還有其他配置文件。請(qǐng)簡(jiǎn)單地熟悉這些文件的內(nèi)容。

將 $HOME/.kube/config 追加到 KUBECONFIG 環(huán)境變量中 

如果有 ?$HOME/.kube/config? 文件,并且還未列在 ?KUBECONFIG ?環(huán)境變量中, 那么現(xiàn)在將它追加到 ?KUBECONFIG ?環(huán)境變量中。 例如:

Linux 

export KUBECONFIG="${KUBECONFIG}:$HOME/.kube/config"

Windows Powershell 

$Env:KUBECONFIG="$Env:KUBECONFIG;$HOME\.kube\config"

在配置練習(xí)目錄中輸入以下命令,查看當(dāng)前 ?KUBECONFIG ?環(huán)境變量中列舉的所有文件合并后的配置信息:

kubectl config view

清理 

將 ?KUBECONFIG ?環(huán)境變量還原為原始值。例如:

Linux 

export KUBECONFIG="$KUBECONFIG_SAVED"

Windows PowerShell

$Env:KUBECONFIG=$ENV:KUBECONFIG_SAVED

當(dāng)前題目:創(chuàng)新互聯(lián)kubernetes教程:Kubernetes配置對(duì)多集群的訪(fǎng)問(wèn)
文章網(wǎng)址:http://www.5511xx.com/article/cdoeggd.html