• Complain

Syed Ali - Practical Linux Infrastructure

Here you can read online Syed Ali - Practical Linux Infrastructure full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. year: 2014, publisher: Apress, 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.

Syed Ali Practical Linux Infrastructure
  • Book:
    Practical Linux Infrastructure
  • Author:
  • Publisher:
    Apress
  • Genre:
  • Year:
    2014
  • Rating:
    4 / 5
  • Favourites:
    Add to favourites
  • Your mark:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Practical Linux Infrastructure: summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "Practical Linux Infrastructure" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

Practical Linux Infrastructure teaches you how to use the best open source tools to build a new Linux infrastructure, or alter an existing infrastructure, to ensure it stands up to enterprise-level needs. Each chapter covers a key area of implementation, with clear examples and step-by-step instructions.

Using this book, youll understand why scale matters, and what considerations you need to make. Youll see how to switch to using Google Cloud Platform for your hosted solution, how to use KVM for your virtualization, how to use Git, Postfix, and MySQL for your version control, email, and database, and how to use Puppet for your configuration management. For enterprise-level fault tolerance youll use Apache, and for load balancing and high availability, youll use HAProxy and Keepalived. For trend analysis youll learn how to use Cacti, and for notification youll use Nagios. Youll also learn how to utilize BIND to implement DNS, how to use DHCP (Dynamic Host Configuration Protocol), and how to setup remote access for your infrastructure using VPN and Iptables. You will finish by looking at the various tools you will need to troubleshoot issues that may occur with your hosted infrastructure. This includes how to use CPU, network, disk and memory management tools such as top, netstat, iostat and vmstat.

Author Syed Ali is a senior site reliability engineering manager, who has extensive experience with virtualization and Linux cloud based infrastructure. His previous experience as an entrepreneur in infrastructure computing offers him deep insight into how a business can leverage the power of Linux to their advantage. He brings his expert knowledge to this book to teach others how to perfect their Linux environments. Become a Linux infrastructure pro with Practical Linux Infrastructure today.

What youll learn
  • Learn how to deploy enterprise Linux infrastructure

    Create networks, firewalls, load balancers

    Install Postfix, Cacti, Nagios, Apache, MySQL

    Using Google Cloud Platform (GCP) services

    Trouble shootings tools such as top, tcpdump, iostat, vmstat

    Using iptables to protect your host

    Install a GIT server for source code configuration management

    Use rlog for log collections

Who this book is for

This book is ideal for Linux system administrators who are currently managing small to medium size Linux infrastructure environments and would like to learn how to manage enterprise-level infrastructures. You will be familiar with basic system administration, or site reliability engineering work, but want to learn how to build significant, pro-level Linux infrastructure.

Table of Contents
  1. Chapter One: Managing Large Scale Infrastructure

    2. Chapter Two: Hosted Cloud Solutions Using Google Cloud Platform

    3. Chapter Three: Virtualization with KVM

    4. Chapter Four: MySQL, Git, Postfix

    5. Chapter Five: Configuration Management with Puppet

    6. Chapter Six: Apache for Enterprise-level Fault Tolerance

    7. Chapter Seven: Monitoring with Nagios & Trend Analysis with Cacti

    8. Chapter Eight: DNS Using Bind and DHCP

    9. Chapter Nine: Log Collection, OpenVPN, Iptables

    10. Chapter Ten: Troubleshooting Tools

Syed Ali: author's other books


Who wrote Practical Linux Infrastructure? Find out the surname, the name of the author of the book and a list of all author's works by series.

Practical Linux Infrastructure — 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 "Practical Linux Infrastructure" 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
Syed Ali 2015
Syed Ali Practical Linux Infrastructure 10.1007/978-1-4842-0511-2_1
1. Managing Large-Scale Infrastructure
Syed Ali 1
(1)
CA, US
This chapter is about the issues that come up in infrastructure management at a large scale. Mission-critical decisions such as infrastructure architecture, and decisions on matters such as licensing and support, are all part of infrastructure design. When managing a small infrastructure, many of these issues do not have the same criticality as they do in a large enterprise. A scalable architecture is an important foundation for a successful, large infrastructure.
Infrastructure management can be divided into two components: application deployment and infrastructure architecture. First we review application deployment and then look at different infrastructure architecture models. We also review the components that make up a scalable infrastructure.
Application Deployment
From design to production, a scalable infrastructure enables developers to code, test, and deploy applications quickly. The traditional deployment model has not been effective at speeding up the design-to-production pipeline. Figure shows the traditional deployment model where a major hurdle to reaching production is testing. After developers have written code, they pass it to a quality assurance (or QA) team that tests the code manually and sends it back to the development team for fixing. After the fixes are complete, the code is tested again. When the tests pass, the code is sent to staging. Staging is a replica of production. After the code passes through staging, the operations team deploys the code to production using a change management process. This entire process for a single line of change in code might take two to four weeks.
Figure 1-1 Traditional design-to-production model Realizing that this model - photo 1
Figure 1-1.
Traditional design-to-production model
Realizing that this model is not a very effective one, a newer model came into existencethat of continuous integration and continuous delivery (CI/CD). With this model, as soon as unit testing is complete and code is checked into the source code repository, the CI/CD pipeline kicks in. The pipeline consists of an automated build system, using tools such as Jenkins ( ).
Figure 1-2 Continuous integration and continuous delivery The CICD - photo 2
Figure 1-2.
Continuous integration and continuous delivery
The CI/CD pipeline automates as many tests as possible to gain confidence in the code. In addition, it performs a complete build of the software system and ensures the code that has been checked in does not cause anything to break. Any failure has to be investigated by a developer. There are numerous software products that can help implement a CI/CD pipeline, including the following:
  • Jenkins ( http://jenkins-ci.org )
  • CruiseControl ( http://cruisecontrol.sourceforge.net )
  • Buildbot ( http://buildbot.net )
Software Development Automation
Software development automation is the process of automating as many components of software development as possible. The goal of software development automation is to minimize the time between when a developer checks in code to the time a product is in the hands of an end user or is being used in production. Without software development automation there is a significant delay in getting software products to end users. There are various components of software development automation, a few of them are listed in the following sections, along with the tools that can help accomplish the automation needed.
Build Automation
Build automationis the process of automating the immediate tasks that need to happen after a developer checks in code. This process includes actually building the code. The build is triggered on a check-in by the developer. Some of the features of build automation are as follows:
  • Frequent builds to catch problems with code sooner than later
  • Incremental build management, an attempt to build modules and then integrate them
  • Build acceleration, so that a large code base does not slow down the build
  • Build status reporting and failure detection
Some of the tools that can help with build automation are the following:
  • Gradle ( http://www.gradle.org )
  • Apache Ant ( http://ant.apache.org )
  • Apache Maven ( http://maven.apache.org )
  • Gnu Make ( http://www.gnu.org/software/make/ )
Software Configuration Management
Software configuration management (SCM) is an integral component of software development automation. A few questions that need to be answered in software configuration management are
  • Which source code management system do we use?
  • How do we do code branches?
  • What kind of revisions in software will we support?
Anything that has to do with managing the actual code itself is considered part of SCM. The following is a list of some of the tools that can help with the source code control part of SCM:
  • Git ( http://git-scm.com )
  • SVN ( https://subversion.apache.org )
  • Mercurial ( http://mercurial.selenic.com )
SCM is more of a process than a selection of tools, and includes questions about how to manage branches, versions, merging, and code freeze, and should be answered with policy rather than a product.
Continuous Integration
There can be many different components of a large software project. After a developer checks in code, it has to be integrated with the rest of the code base. It is not feasible for one developer to work on integrating his or her components with all other components. Continuous integration (CI) ensures all different components of code are eventually merged into one mainline that can then be built and a complete product released. The components of an effective CI are as follows:
  • The CI process should start automatically with a successful build of code.
  • Developers should commit code frequently to catch issues early.
  • The CI build should be self-testing.
  • The CI build should be fast.
An example of a CI process is that of a web services application divided into a PHP front end and a Java back end with MariaDB as a database. Any change on the PHP front-end code should trigger a full CI pipeline build that also builds Java and does a full test that includes database calls.
Continuous Delivery
So far, we have automated builds using build automation, we have integrated our code with other components using CI, and we have now arrived at the final step of continuous delivery (CD). CD is the process of getting code out to production as soon as a successful CI is complete. This is one of the most crucial steps in software development; a botched CD can cause an outage in your environment. The output of CI can be packaged binary. Software that can help with CD includes the following:
  • Gnu AutoConf ( https://www.gnu.org/software/autoconf/ )
Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «Practical Linux Infrastructure»

Look at similar books to Practical Linux Infrastructure. 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 «Practical Linux Infrastructure»

Discussion, reviews of the book Practical Linux Infrastructure 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.