• Complain

John Belamaric - Learning Coredns: Configuring DNS for Cloud Native Environments

Here you can read online John Belamaric - Learning Coredns: Configuring DNS for Cloud Native Environments full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. City: Sebastopol, CA, year: 2019, publisher: O’Reilly Media, genre: Computer. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:

Romance novel Science fiction Adventure Detective Science History Home and family Prose Art Politics Computer Non-fiction Religion Business Children Humor

Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.

John Belamaric Learning Coredns: Configuring DNS for Cloud Native Environments
  • Book:
    Learning Coredns: Configuring DNS for Cloud Native Environments
  • Author:
  • Publisher:
    O’Reilly Media
  • Genre:
  • Year:
    2019
  • City:
    Sebastopol, CA
  • Rating:
    3 / 5
  • Favourites:
    Add to favourites
  • Your mark:
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5

Learning Coredns: Configuring DNS for Cloud Native Environments: summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "Learning Coredns: Configuring DNS for Cloud Native Environments" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

Until recently, learning CoreDNS required reading the code or combing through the skimpy documentation on the website. No longer. With this practical book, developers and operators working with Docker or Linux containers will learn how to use this standard DNS server with Kubernetes.John Belamaric, senior staff software engineer at Google, and Cricket Liu, chief DNS architect at Infoblox, show you how to configure CoreDNS using real-world configuration examples to achieve specific purposes. Youll learn the basics of DNS, including how it functions as a location broker in container environments and how it ties into Kubernetes. Dive into DNS theory: the DNS namespace, domain names, domains, and zones Learn how to configure your CoreDNS server Manage and serve basic and advanced zone data with CoreDNS Configure CoreDNS service discovery with etcd and Kubernetes Learn one of the most common use cases for CoreDNS: the integration with Kubernetes Manipulate queries and responses as they flow through the plug-in chain Monitor and troubleshoot the availability and performance of your DNS service Build custom versions of CoreDNS and write your own plug-ins

John Belamaric: author's other books


Who wrote Learning Coredns: Configuring DNS for Cloud Native Environments? Find out the surname, the name of the author of the book and a list of all author's works by series.

Learning Coredns: Configuring DNS for Cloud Native Environments — read online for free the complete book (whole text) full work

Below is the text of the book, divided by pages. System saving the place of the last page read, allows you to conveniently read the book "Learning Coredns: Configuring DNS for Cloud Native Environments" online for free, without having to search again every time where you left off. Put a bookmark, and you can go to the page where you finished reading at any time.

Light

Font size:

Reset

Interval:

Bookmark:

Make
Chapter 5 Service Discovery Introduction to Service Discovery As described in - photo 1
Chapter 5. Service Discovery
Introduction to Service Discovery

As described in , CoreDNS is designed to be flexible for new use cases that are not part of the traditional DNS landscape. Many of these use cases come out of the current industry-wide movement from monolithic application architectures to microservice-based architectures.

In microservice architectures, applications are broken into small, independent functional components. Each of these components is the master of its own set of functionality and associated data. For example, a simple online retail application might be broken down into the following independent microservices:

  • User Profile
  • Product Catalog
  • Shopping Cart
  • Checkout
  • Shipping Cost
  • Payment
Microservices

There are many ways to break up any given application into microservices. Often complex applications can be broken into dozens or even hundreds of microservices. For more on this, see Sam Newmans Monolith to Microservices (OReilly).

For the application to complete complex workflows and logic, varying microservices must communicate with one another. For example, for the Checkout service to calculate the final price, it needs to gather the list of items from the Shopping Cart, the item prices from the Product Catalog, and the shipping fees from the Shipping Cost service. In a microservice architecture, each of these services provides an application programming interface (API) (as a network service) from which the data can be collected. How does ...

Learning CoreDNS

by John Belamaric and Cricket Liu

Copyright 2019 John Belamaric and Cricket Liu. All rights reserved.

Printed in the United States of America.

Published by OReilly Media, Inc. , 1005 Gravenstein Highway North, Sebastopol, CA 95472.

OReilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (http://oreilly.com). For more information, contact our corporate/institutional sales department: 800-998-9938 or corporate@oreilly.com .

  • Acquisitions Editor: John Devins
  • Development Editor: Melissa Potter
  • Production Editor: Christopher Faucher
  • Copyeditor: Octal Publishing, LLC
  • Proofreader: Christina Edwards
  • Indexer: Ellen Troutman-Zaig
  • Interior Designer: David Futato
  • Cover Designer: Karen Montgomery
  • Illustrator: Rebecca Demarest
  • September 2019: First Edition
Revision History for the First Edition
  • 2019-08-30: First Release

See http://oreilly.com/catalog/errata.csp?isbn=9781492047964 for release details.

The OReilly logo is a registered trademark of OReilly Media, Inc. Learning CoreDNS, the cover image, and related trade dress are trademarksvof OReilly Media, Inc.

The views expressed in this work are those of the authors, and do not represent the publishers views. While the publisher and the authors have used good faith efforts to ensure that the information and instructions contained in this work are accurate, the publisher and the authors disclaim all responsibility for errors or omissions, including without limitation responsibility for damages resulting from the use of or reliance on this work. Use of the information and instructions contained in this work is at your own risk. If any code samples or other technology this work contains or describes is subject to open source licenses or the intellectual property rights of others, it is your responsibility to ensure that your use thereof complies with such licenses and/or rights.

978-1-492-04796-4

[LSI]

Preface
Why a New DNS Server?

Upon seeing this book, the first question that might occur to you is, Why does the world need another DNS server? There are, after all, lots of implementations of DNS servers to choose from. For starters, theres BIND, for Berkeley Internet Name Domain, the granddaddy of DNS servers. BIND has been around in some incarnation since the 1980s and supports just about every DNS standard written. Theres Microsofts DNS Server, which is widely used in Active Directory environments. NSD from NLnet Labs and Knot are excellent authoritative DNS servers, and Unbound, also from NLnet Labs, is a fast, lean recursive DNS server. So what does CoreDNS offer that these others dont?

To begin with, CoreDNS is written in Go, and Go is a memory-safe programming language. Why is that important? Well, if youve ever run a BIND-based DNS infrastructure and had to upgrade 100 DNS servers ASAP because of a buffer overrun, you know. A healthy proportion of vulnerabilities in DNS servers of all stripes (at least those written in C and C++) stem from buffer overflows or overruns and dangling pointers. Written in memory-safe Go, CoreDNS isnt subject to these.

Programs written in Go can also support concurrency, or parallel execution. This can be useful in wringing more performance out of multiprocessing or multitasking systems. BINDs performance somewhat notoriously doesnt scale well on multiprocessor systems, whereas CoreDNSs performance scales nicely the more processors it has to work with.

Improving performance can be important because Go tends to run somewhat more slowly than C or C++, partly thanks to the overhead imposed by its many features. In most cases, however, this isnt an issue: Whats important is that CoreDNS performs well enough to handle the workload you offer it, and in the vast majority of cases, it does, Go or no Go.

Probably the most significant capability CoreDNS offers, though, is its ability to communicate with container infrastructure and orchestration systems such as etcd and Kubernetes.

Who Needs CoreDNS?

The short answer: basically anyone running Kubernetes, and most folks running containerized applications.

The function CoreDNS fulfills in a containerized environment is that of a service directory, which we talk about in detail in this book. A service directory helps containers determine the IP address or IP addresses where the containers that offer a particular service are running. For example, a container might look up a domain name that represents the database service for a specified application in order to retrieve some data. The service directory function is critical because, in the world of containers and microservices, applications are usually decomposed into many small services (hence, microservices!), and each service might be offered by several containers, each running at a different IP address.

But CoreDNSs utility isnt limited to containerized environments. CoreDNSs plug-ins support advanced DNS functionality that even the big boys like BIND dont support. You can rewrite queries and responses on the fly, for example. You can automatically load zone data from GitHub or Amazon Route 53. And because CoreDNS itself is small and usually runs in a container, its suitable for use in scenarios in which a big DNS server such as BIND would not be.

Who This Book Is For

This book is aimed at the following audiences:

  • Administrators of containerized environments that need DNS-based service discovery, particularly when those environments are managed by Kubernetes.
  • DNS administrators looking for a small, flexible DNS server that can run in a container.
  • DNS administrators looking for a DNS server that
    • Integrates with Route 53
    • Supports flexible rewriting of queries and responses
Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «Learning Coredns: Configuring DNS for Cloud Native Environments»

Look at similar books to Learning Coredns: Configuring DNS for Cloud Native Environments. We have selected literature similar in name and meaning in the hope of providing readers with more options to find new, interesting, not yet read works.


Reviews about «Learning Coredns: Configuring DNS for Cloud Native Environments»

Discussion, reviews of the book Learning Coredns: Configuring DNS for Cloud Native Environments and just readers' own opinions. Leave your comments, write what you think about the work, its meaning or the main characters. Specify what exactly you liked and what you didn't like, and why you think so.