Amazon Web Services
依照本指南对 AWS 中以 Kops 安装的集群进行配置以便安装运行 Istio。
如果使新安装的集群是 Kubernetes 1.9 版本,安装运行 Istio 所需的 admissionregistration.k8s.io/v1beta1
应该已经包含其中。
无论如何,还必须更新 Admission controllers 的列表。
打开配置文件:
$ kops edit cluster $YOURCLUSTER
在其中加入下列内容:
kubeAPIServer: admissionControl: - NamespaceLifecycle - LimitRanger - ServiceAccount - PersistentVolumeLabel - DefaultStorageClass - DefaultTolerationSeconds - MutatingAdmissionWebhook - ValidatingAdmissionWebhook - ResourceQuota - NodeRestriction - Priority
执行更新:
$ kops update cluster $ kops update cluster --yes
进行滚动更新
$ kops rolling-update cluster $ kops rolling-update cluster --yes
使用
kubectl
在kube-api
Pod 上检查更新情况,应该会看到新的 Admission controller:$ for i in `kubectl \ get pods -nkube-system | grep api | awk '{print $1}'` ; \ do kubectl describe pods -nkube-system \ $i | grep "/usr/local/bin/kube-apiserver" ; done
查看输出内容:
[...] --admission-control=NamespaceLifecycle,LimitRanger,ServiceAccount, PersistentVolumeLabel,DefaultStorageClass,DefaultTolerationSeconds, MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota, NodeRestriction,Priority [...]