Kubernetes для приложений без сервера.
Copyright © 2018 Packt Publishing
|
Данный документ предоставляется по лицензии Creative Commons Attribution 3.0 License, за исключением разделов со специальными оговорками. |
Первая публикация на английском языке: январь 2018
Ссылка на продукт:
Все права защищены. Никакая часть этой книги не может быть воспроизведена, сохранена в поисковой системе или передана в любой форме или любыми средствами без предварительного письменного разрешения издателя, за исключением случаев кратких цитат, встроенных в критические статьи и обзоры.
При подготовке этой книги были предприняты все усилия чтобы гарантировать точность представленной информации. Тем не менее, информация, содержащаяся в этой книге, продаётся без гарантии в явном или неявном виде. Ни авторы, ни Packt Publishing, ни их дилеры и дистрибьюторы не будут нести ответственность за любые убытки, вызванные или предположительно вызванные прямо или косвенно этой книгой.
Packt Publishing пыталась предоставить информацию о товарных знаках обо всех компаниях и продуктов, упомянутых в данной книге для надлежащего использования капиталов. Тем не менее, Packt Publishing не может гарантировать точность этой информации.
Опубликовано Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham B3 2PB, UK
ISBN 978-1788620376
2018-04-28
- Автор
- Русс Мак-Кендрик
- Рецензент
- Редактор выпуска
- Редактор
- Редактор разработки содержания
- Технический редактор
- Литературный редактор
- Координатор проекта
- Корректор
- Составитель указателя
- Графика
- Координатор производства
- Изготовитель переплета
Русс Мак-Кендрик
- Предисловие
- Глава 1. Ландшафт без серверов
- Глава 2. Введение в Kubernetes
- Глава 3. Локальная установка Kubernetes
- Глава 4. Введение в функционирование Kubeless
- Глава 5. Применение Funktion для приложений без серверов
- Глава 6. Установка Kubernetes в облаке
- Глава 7. Apache OpenWhisk и Kubernetes
- Глава 8. Запуск приложение при помощи Fission
- Глава 9. Взгляд на OpenFaaS
- Глава 10. Обсуждение решений без серверов
- Глава 11. Работа с рабочими нагрузками без серверов
- Указатель
За последние несколько лет стала одной из самых индивидуальных технологий; он был адаптирован в качестве платформы кластера контейнеров и оркестрации со стороны всех основных общедоступных поставщиков облачных решений, причём он быстро стал стандартом для всей индустрии.
Помимо этого Kubernetes является решением с открытым исходным кодом и у вас имеется прекрасная основа для размещения своей собственной Платформы в качестве Службы, или PaaS (Platform as a Service), у множества общедоступных и частных поставщиков; благодаря её архитектуре вы можете даже исполнять её на ноутбуке, причём вы получите состоятельную практику на всех ваших платформах.
Её архитектура делает её исключительной платформой для исполнения функций работающих без сервера. В этой книге мы взглянем на различные платформы, которые могут быть как развёрнуты, так и интегрированы с помощью Kubernetes, что означает что у вас будет не только PaaS, но также и надёжная платформа Функций в качестве Служб (FaaS, Function as a Service), исполняемая в вашей среде Kubernetes.
Эта книга в основном для инженеров по эксплуатации, архитекторов облачных решений, а также разработчиков , которые хотят размещать свои функции для работы без сервера в каком- то кластере Kubernetes.
Глава 1. Ландшафт без серверов объясняет что имеется в виду под работой без сервера. Кроме того, мы получим некоторый практический опыт исполнения функций, работающих без сервера в общедоступных облачных решениях, таких как AWS Lambda и Azure Functions.
Глава 2. Введение в Kubernetes обсуждает что такое Kubernetes, какие проблемы она решает, а также взглянем на предысторию, начиная с внутреннего инструмента в Google до локомотива разработок с открытым исходным кодом.
Глава 3. Локальная установка Kubernetes поясняет как получить практический опыт Kubernetes. Мы установим некий локальный кластер с единственным узлом Kubernetes при помощи Minikube и будем общаться с ним при помощи клиента командной строки.
Глава 4. Введение в функционирование Kubeless объясняет как запустить вашу первую функцию без сервера с помощью Kubeless когда Kubernetes поднят и исполняется локально.
Глава 5. Применение Funktion для приложений без серверов поясняет как применять Funktion для слегка иного приёма функций без сервера.
Глава 6. Установка Kubernetes в облаке охватывает запуск кластера в DigitalOcean, AWS, Google Cloud и Microsoft Azure после получения некоторого опыта локального применения Kubernetes.
Глава 7. Apache OpenWhisk и Kubernetes объясняет как запускать, настраивать и применять Apache OpenWhisk, безсерверную платформу, изначально разработанную IBM, при помощи нашего только что запущенного в облаке кластера Kubernetes.
Глава 8. Запуск приложение при помощи Fission охватывает развёртывание Fission, популярную безсерверную инфраструктуру для Kubernetes совместно с несколькими примерами функций.
Глава 9. Взгляд на OpenFaaS в то время как она является в первую очередь инфраструктурой Функций в качестве Служб для Docker, также имеется возможность развёртывать её поверх Kubernetes.
Глава 10. Обсуждение решений без серверов обсуждает наилучшие практические приёмы безопасности, а также того как вы можете осуществлять мониторинг вашего кластера Kubernetes.
Глава 11. Работа с рабочими нагрузками без серверов объясняет насколько быстро эволюционирует и как вы можете её придерживаться. Вы также обсудите какие инструменты вам следует применять и зачем вам могут понадобиться работающие без сервера функции Kubernetes.
Операционные системы
-
macOS High Sierra
-
Ubuntu 17.04
-
Windows 10 Professional
Программное обеспечение
На протяжении этой книги мы установим различное программное обеспечение; каждый из этих инструментов будет иметь инструкции по установке и подробности его требований в соответствующих главах. Заметим,что не смотря на то, что будут предоставлены инструкции для систем Windows, большая часть инструментов, которые мы будем использовать, первоначально были разработаны для исполнения в первую очередь в системах на основе Linux/ Unix, таких как Ubuntu 17.04 и macOS High Sierra и эта книга предпочитает такие системы. Хотя на момент написания этой книги и были предприняты все усилия для проверки того, что все эти инструменты работают под системами на основе Windows, поскольку некоторые из этих инструментов имеют экспериментальное построение, мы не можем гарантировать, что они продолжат работать в обновлённых системах и по этой причине я рекомендую применять некую систему на основе Linux- или Unix-.
Оборудование
-
Требования систем Windows 10 Professional и Ubuntu 17.04
-
Системы с применением процессоров (ЦПУ), запущенных в производство в 2011 или позже с частотой ядра 1.3ГГц или выше, исключая процессоры Intel Atom или процессоры AMD на базе микроархитектур Llano и Bobcat.
-
Минимально 4 ГБ ОЗУ с рекомендацией 8 ГБ или более
-
-
Требования системы Apple Mac
-
iMac: конца 2009 или более нового.
-
MacBook/MacBook (Retina): конца 2009 или более нового.
-
MacBook Pro: середины 2010 или более нового.
-
MacBook Air: конца 2010 или более нового.
-
Mac mini: середины 2010 или более нового.
-
Mac Pro: середины 2010 или более нового.
-
Доступ, по крайней мере, к одной из следующих общедоступных облачных служб
-
AWS: https://aws.amazon.com/.
-
Google Cloud: https://cloud.google.com/.
-
Microsoft Azure: https://azure.microsoft.com/.
-
DigitalOcean: https://www.digitalocean.com/.
-
Windows 10 Professional
Вы можете выгрузить все файлы примеров кода для данной книги из своей учётной записи www.packtpub.com. Если вы приобрели эту книгу в ином месте, будьте добры, пройдите в www.packtpub.com/support и зарегистрируйтесь чтобы иметь эти файлы высланные непосредственно вам по электронной почте.
Вы можете выгрузить все файлы кодов пройдя следующие шаги:
-
Зайдите зарегистрированным пользователем на www.packtpub.com.
-
Выберите закладку SUPPORT.
-
Кликните по Code Downloads & Errata.
-
Введите название нужной вам книги в блоке Search и следуйте появляющимся на экране инструкциям.
После того, как необходимые файлы выгружены, убедитесь что вы раззиповали или раскрыли их в нужную папку при помощи самой последней версии:
-
WinRAR/7-Zip
для Windows. -
Zipeg/iZip/UnRarX
для Mac. -
7-Zip/PeaZip
для Linux.
Пакет кода также размещён на GitHub по адресу https://github.com/PacktPublishing/Kubernetes-for-Serverless-Applications. Также у нас имеются и другие пакеты кода из нашего богатого каталога книг и видео, доступные по адресу https://github.com/PacktPublishing/. Следите за изменениями!
Мы дополнительно снабжаем вас файлом PDF, который содержит цветные изображения экранных снимков/ схем, использованных в данной книге. Цветные изображения помогут вам лучше понять изменения в выводе. Вы можете загрузить этот файл по адресу: https://www.packtpub.com/sites/default/files/downloads/KubernetesforServerlessApplications_ColorImages.pdf.
В данной книге вы найдёте ряд текстовых стилей, которые делают разницу между различными видами информации. Здесь мы приводим некоторые примеры этих стилей и объяснение их назначения.
CodeInText
указывает кодовые слова в тексте, имена таблиц базы данных, имена папок, имена файлов,
расширения файлов, имена путей, модели URL-адресов, ввод пользователя, и регулировки Twitter. Вот некий пример:
"Это содержит отдельный файл с названием index.html
".
Блок кода устанавливается следующим образом:
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: cli-hello-world
labels:
app: nginx
Если вы желаете привлечь внимание к определённой части блока кода,соответствующие строки или элементы выделяются жирным:
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: cli-hello-world
labels:
app: nginx
Любой ввод командной строки или её вывод записываются следующим образом:
$ brew cask install minikube
Жирно: указывает новый термин, важное слово которые вы видите на экране, например, в меню или блоках диалогов появляются именно так. Вот пример: "Внизу данной страницы у вас будет кнопка, которая позволит вам создать Access Token and Access Token Secret для вашей учётной записи.".
Замечание | |
---|---|
Предостережения или важные замечания появляются в блоках подобных этому. |
Совет | |
---|---|
Советы и ловкие приёмы возникают таким образом. |
Обращения наших читателей всегда приветствуются.
Обычная обратная связь: Пошлите электронное письмо на адрес feedback@packtpub.com с упоминанием заголовка книги в теме вашего сообщения. Если у вас имеются вопросы относительно любых сторон данной книги, обратитесь, пожалуйста, по адресу questions@packtpub.com.
Ошибки: Хотя мы и предприняли все меры чтобы гарантировать точность содержимого, ошибки могут иметь место. Если вы обнаружили ошибку в данной книге, мы будем вам признательны если вы сообщите нам о ней. Посетите, пожалуйста, www.packtpub.com/submit-errata, выбрав вашу книгу, кликнув на ссылку Errata Submission Form, и заполнив подробности найденной вами ошибки.
Пиратство: Если вы столкнётесь с какой-либо незаконной копией наших работ в любой форме в Интернете, пожалуйста, предоставьте нам сразу адрес местонахождения или имя веб-сайта, чтобы мы могли принять меры. Пожалуйста, обратитесь по адресу copyright@packtpub.com со ссылкой на материалы содержащие признаки нарушения авторских прав. {Прим. пер.: Согласно закону об авторском праве РФ, авторские права на перевод принадлежат авторам этого перевода. Данным переводом, по нашему мнению, мы служим популяризации основных стратегических направлений развития тем Packt. В случае наличия конструктивных предложений, готовы к тесному сотрудничеству.}.
Если вы желаете стать нашим автором: Если у вас существует тема, в которой у вас имеется опыт и вы заинтересованы либо в написании, либо во вкладе в книгу, обратитесь к руководству по адресу authors.packtpub.com.
Оставляйте, пожалуйста, отзывы. Если вы прочли и воспользовались данной книгой, почему бы вам не оставить отзыв на том сайте, на котором вы её приобрели? Потенциальные читатели затем смогут увидеть и применить ваше беспристрастное суждение чтобы принять решение о приобретении, мы в Packt сможем понять что вы думаете о нашем продукте, а наши авторы увидят обратную связь относительно своей книги. Мы заранее благодарим вас!
Для получения дополнительной информации о Packt посетите, пожалуйста packtpub.com.