website/content/ru/docs/tutorials/kubernetes-basics/scale/scale-intro.html

121 lines
6.6 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

---
title: Запуск нескольких экземпляров приложения
weight: 10
---
<!DOCTYPE html>
<html lang="en">
<body>
<link href="/docs/tutorials/kubernetes-basics/public/css/styles.css" rel="stylesheet">
<div class="layout" id="top">
<main class="content">
<div class="row">
<div class="col-md-8">
<h3>Темы</h3>
<ul>
<li>Масштабирование приложения с помощью kubectl.</li>
</ul>
</div>
<div class="col-md-8">
<h3>Масштабирование приложения</h3>
<p>В предыдущих модулях мы создали <a href="/docs/concepts/workloads/controllers/deployment/">развёртывание</a>, а затем открыли к нему публичный доступ через <a href="/docs/concepts/services-networking/service/">сервис</a>. Развёртывание создало только один под, в котором работает наше приложение. По мере увеличения трафика необходимо будет промасштабировать приложение, чтобы оно могло справиться с возросшим потоком пользователей.</p>
<p><b>Масштабирование</b> осуществляется за счёт изменения количества реплик в развёртывании.</p>
</div>
<div class="col-md-4">
<div class="content__box content__box_lined">
<h3>Краткое содержание:</h3>
<ul>
<li>Масштабирование развёртывания</li>
</ul>
</div>
<div class="content__box content__box_fill">
<p><i>Количество экземпляров можно указать прямо при создании развёртывания, используя параметр --replicas команды kubectl run</i></p>
</div>
</div>
</div>
<br>
<div class="row">
<div class="col-md-8">
<h2 style="color: #3771e3;">Обзор масштабирования</h2>
</div>
</div>
<div class="row">
<div class="col-md-1"></div>
<div class="col-md-8">
<div id="myCarousel" class="carousel" data-ride="carousel" data-interval="3000">
<ol class="carousel-indicators">
<li data-target="#myCarousel" data-slide-to="0" class="active"></li>
<li data-target="#myCarousel" data-slide-to="1"></li>
</ol>
<div class="carousel-inner" role="listbox">
<div class="item carousel-item active">
<img src="/docs/tutorials/kubernetes-basics/public/images/module_05_scaling1.svg">
</div>
<div class="item carousel-item">
<img src="/docs/tutorials/kubernetes-basics/public/images/module_05_scaling2.svg">
</div>
</div>
<a class="left carousel-control" href="#myCarousel" role="button" data-slide="prev">
<span class="sr-only ">Предыдущая картинка</span>
</a>
<a class="right carousel-control" href="#myCarousel" role="button" data-slide="next">
<span class="sr-only">Следующая картинка</span>
</a>
</div>
</div>
</div>
<br>
<div class="row">
<div class="col-md-8">
<p>В случае масштабирования развёртывания создаются новые поды, которые распределяются по узлам с доступными ресурсами. Масштабирование увеличит количество подов в соответствии с указанным требуемым состоянием. Kubernetes также поддерживает <a href="/docs/user-guide/horizontal-pod-autoscaling/">автоматическое масштабирование</a> подов (не рассматривается в данном уроке). Кроме этого, возможно масштабирование до нуля, тогда завершается работа всех подов в развертывании.</p>
<p>При запуске нескольких экземпляров приложения нужно правильно распределить трафик между ними. У сервисов есть встроенный балансировщик нагрузки, который распределяет сетевой трафик всех подов в открытом извне развертывания. Сервисы постоянно отслеживают запущенные поды через их конечные точки, чтобы направлять трафик только на доступные поды.</p>
</div>
<div class="col-md-4">
<div class="content__box content__box_fill">
<p><i>Масштабирование выполняется с помощью изменения количества реплик в развертывании.</i></p>
</div>
</div>
</div>
<br>
<div class="row">
<div class="col-md-8">
<p>Имея несколько работающих экземпляров приложения можно выполнять плавающие обновления (rolling updates) без простоев. С ними мы познакомимся в следующем модуле. А пока перейдём к онлайн-терминалу и промасштабируем наше приложение.</p>
</div>
</div>
<br>
<div class="row">
<div class="col-md-12">
<a class="btn btn-lg btn-success" href="/ru/docs/tutorials/kubernetes-basics/scale/scale-interactive/" role="button">Начать интерактивный урок <span class="btn__next"></span></a>
</div>
</div>
</main>
</div>
</body>
</html>