Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Собственный боковик Kubernetes стремится обеспечить более надежный и удобный способ внедрения шаблонов боковика в приложения Kubernetes, повышения эффективности, надежности и простоты.
Собственный боковик хорошо подходит для Istio. Он предлагает несколько преимуществ, таких как упрощенное управление боковином вагоне. Кроме того, она повышает надежность и координацию. Она также оптимизирует ресурсы и повышает эффективность работы.
Начиная с Kubernetes версии 1.29, функция контейнеров боковика включена для AKS. При этом изменении режим машинного автомобиля Istio можно использовать с надстройкой Istio для AKS.
В этой статье описывается, как включить собственный режим бокового автомобиля для сетки служб на основе Istio в AKS.
Подготовка к работе
Регистрация
IstioNativeSidecarModePreview
флага компонента с помощью az feature register.az feature register --namespace Microsoft.ContainerService --name IstioNativeSidecarModePreview
Проверьте состояние регистрации с помощью az feature show.
az feature show --namespace Microsoft.ContainerService --name IstioNativeSidecarModePreview
Для отображения
Registered
состояния занимает несколько минут.Когда состояние отражает зарегистрировано, обновите регистрацию
Microsoft.ContainerService
поставщика ресурсов с помощью az provider register.az provider register --namespace Microsoft.ContainerService
В существующем кластере
Проверка версий
Убедитесь, что версия уровня управления Kubernetes кластера AKS — 1.29 или выше с помощью az aks show.
az aks show --resource-group $RESOURCE_GROUP --name $CLUSTER -o json | jq ".kubernetesVersion"
Если версия уровня управления слишком старая, обновите плоскость управления Kubernetes.
Убедитесь, что пулы узлов выполняются
1.29
или работают более новая версия и состояние питания.az aks show --resource-group $RESOURCE_GROUP --name $CLUSTER -o json | jq ".agentPoolProfiles[] | { currentOrchestratorVersion, powerState}"
Внимание
В собственном режиме бокового автомобиля требуется плоскость управления Kubernetes и плоскость данных 1.29+. Убедитесь, что все узлы были обновлены до версии 1.29, прежде чем включить собственный режим бокового автомобиля. В противном случае боковики не будут работать должным образом.
Если какая-либо версия пула узлов слишком старая, обновите образ узла до
1.29
или более новой версии.Убедитесь, что надстройка Istio включена
asm-1-20
или более новая редакция.az aks show --resource-group $RESOURCE_GROUP --name $CLUSTER -o json | jq ".serviceMeshProfile.istio.revisions"
Если
istiod
обновление слишком старое, выполнитеasm-1-20
действия, описанные в обновлении Istio.
Проверка состояния функции собственного бокового автомобиля в плоскости управления Istio
Кластер AKS необходимо примирить с командой az aks update .
az aks update --resource-group $RESOURCE_GROUP --name $CLUSTER
Если включен собственный режим бокового автомобиля, переменная ENABLE_NATIVE_SIDECARS
среды отображается со значением true
в шаблоне pod уровня управления Istio. Чтобы проверить istiod
развертывание, используйте следующую команду.
kubectl get deployment -l app=istiod -n aks-istio-system -o json | jq '.items[].spec.template.spec.containers[].env[] | select(.name=="ENABLE_NATIVE_SIDECARS")'
Перезапуск рабочих нагрузок
После того как плоскость управления Istio будет готова, выполните перезагрузку рабочих нагрузок, чтобы позволить istiod
внедрять собственные боковики.
for ns in $(kubectl get ns -l istio.io/rev -o=jsonpath='{.items[0].metadata.name}'); do
kubectl rollout restart deployments -n $ns
done
Для развертываний, имеющих istio sidecars, внедренных с помощью istioctl kube-inject, необходимо перепроектировать боковики.
Проверка внедрения боковинка
Если режим собственной стороны успешно включен, istio-proxy
контейнер отображается как контейнер инициализации. Используйте следующую команду, чтобы проверить внедрение боковой кареты:
kubectl get pods -o "custom-columns=NAME:.metadata.name,INIT:.spec.initContainers[*].name,CONTAINERS:.spec.containers[*].name"
istio-proxy
контейнер должен отображаться как контейнер инициализации.
NAME INIT CONTAINERS
sleep-7656cf8794-5b5j4 istio-init,istio-proxy sleep
Создание нового кластера
При создании кластера AKS с помощью команды az aks create выберите версию 1.29
или более новую, istio asm-1-20
или более новую. Новый кластер должен включать собственный режим бокового автомобиля автоматически.
az aks create \
--resource-group $RESOURCE_GROUP \
--name $CLUSTER \
--enable-asm \
--kubernetes-version 1.29 \
--revision asm-1-20 \
--generate-ssh-keys
...
Следующие шаги
- Развертывание внешних или внутренних входящего трафика для надстройки сетки службы Istio.
Azure Kubernetes Service