Conceptual
The Upstart Event System: What It Is And How To Use It
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    Linux Basics
  
  
  
  
    
  
    System Tools
  
  
  
  
    
  
    Ubuntu
  
  
  
  
  
  
      
        Introduction> Introduction # Initialization is a crucial procedure that lies at the heart of any Unix-based operating system to control the operation of every script and service. This is essential in a server environment, where issues can occur at the critical points of startup and shutdown, and where ensuring optimal performance is a priority.
      
      
    What is Kubernetes?
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    CoreOS
  
  
  
  
    
  
    Docker
  
  
  
  
    
  
    Kubernetes
  
  
  
  
    
  
    Networking
  
  
  
  
    
  
    Scaling
  
  
  
  
  
  
      
        Introduction> Introduction # Kubernetes is a powerful open-source system, initially developed by Google and supported by the Cloud Native Computing Foundation (CNCF), for managing containerized applications in a clustered environment. It aims to provide better ways of managing related, distributed components and services across varied infrastructure.
      
      
    An Introduction to SNMP (Simple Network Management Protocol)
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    Monitoring
  
  
  
  
    
  
    Networking
  
  
  
  
  
  
      
        Introduction> Introduction # A large part of being a system administrator is collecting accurate information about your servers and infrastructure. There are a number of tools and options for gathering and processing this type of information.
      
      
    Understanding Nginx HTTP Proxying, Load Balancing, Buffering, and Caching
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Caching
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    Load Balancing
  
  
  
  
    
  
    Nginx
  
  
  
  
    
  
    Scaling
  
  
  
  
  
  
      
        Introduction> Introduction # In this guide, we will discuss Nginx’s http proxying capabilities, which allow Nginx to pass requests off to backend http servers for further processing. Nginx is often set up as a reverse proxy solution to help scale out infrastructure or to pass requests to other servers that are not designed to handle large client loads.
      
      
    How To Optimize Apache Web Server Performance
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Apache
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    Server Optimization
  
  
  
  
    
  
    Ubuntu
  
  
  
  
  
  
      
        Status: Deprecated> Status: Deprecated # This article covers a version of Ubuntu that is no longer supported. If you are currently operate a server running Ubuntu 12.04, we highly recommend upgrading or migrating to a supported version of Ubuntu:
      
      
    How the Iptables Firewall Works
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    Firewall
  
  
  
  
    
  
    Security
  
  
  
  
  
  
      
        Introduction> Introduction # Setting up a firewall is an essential step to take in securing any modern operating system. Most Linux distributions ship with a few different firewall tools that you can use to configure a firewall.
      
      
    Web Caching Basics: Terminology, HTTP Headers, and Caching Strategies
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Caching
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    Server Optimization
  
  
  
  
  
  
      
        Introduction> Introduction # Intelligent content caching is one of the most effective ways to improve the experience for your site’s visitors. Caching, or temporarily storing content from previous requests, is part of the core content delivery strategy implemented within the HTTP protocol.
      
      
    5 Common Server Setups For Your Web Application
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Caching
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    Getting Started
  
  
  
  
    
  
    LAMP Stack
  
  
  
  
    
  
    Scaling
  
  
  
  
  
  
      
        Introduction> Introduction # When deciding which server architecture to use for your environment, there are many factors to consider, such as performance, scalability, availability, reliability, cost, and management.
In this tutorial, you will learn about commonly used server setups, with a short description of each, including the pros and cons.
      
      
    What Is Immutable Infrastructure?
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    CI/CD
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    Configuration Management
  
  
  
  
    
  
    Deployment
  
  
  
  
    
  
    Scaling
  
  
  
  
  
  
      
        Introduction> Introduction # In a traditional mutable server infrastructure, servers are continually updated and modified in place. Engineers and administrators working with this kind of infrastructure can SSH into their servers, upgrade or downgrade packages manually, tweak configuration files on a server-by-server basis, and deploy new code directly onto existing servers.
      
      
    An Introduction to Helm, the Package Manager for Kubernetes
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    Kubernetes
  
  
  
  
  
  
      
        Introduction> Introduction # Deploying applications to Kubernetes – the powerful and popular container-orchestration system – can be complex. Setting up a single application can involve creating multiple interdependent Kubernetes resources – such as pods, services, deployments, and replicasets – each requiring you to write a detailed YAML manifest file.
      
      
    Apache vs Nginx: Practical Considerations
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Apache
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    Nginx
  
  
  
  
  
  
      
        Introduction> Introduction # Apache and Nginx are the two most common open source web servers in the world. Together, they are responsible for serving over 50% of traffic on the internet.
      
      
    Understanding the SSH Encryption and Connection Process
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    Security
  
  
  
  
    
  
    System Tools
  
  
  
  
  
  
      
        Introduction> Introduction # SSH, or secure shell, is a secure protocol and the most common way of safely administering remote servers. Using a number of encryption technologies, SSH provides a mechanism for establishing a cryptographically secured connection between two parties, authenticating each side to the other, and passing commands and output back and forth.
      
      
    An Introduction to JSON
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    Development
  
  
  
  
    
  
    JavaScript
  
  
  
  
  
  
      
        Introduction> Introduction # JSON, short for JavaScript Object Notation, is a format for sharing data. As its name suggests, JSON is derived from the JavaScript programming language, but it’s available for use by many languages including Python, Ruby, PHP, and Java.
      
      
    5 Ways to Improve your Production Web Application Server Setup
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Backups
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    Configuration Management
  
  
  
  
    
  
    High Availability
  
  
  
  
    
  
    Load Balancing
  
  
  
  
    
  
    Logging
  
  
  
  
    
  
    Monitoring
  
  
  
  
    
  
    Server Optimization
  
  
  
  
  
  
      
        Introduction> Introduction # Once your application is up and running in a cloud server environment, you may be wondering how you can improve your server environment to make the leap from “it works” to a full-fledged production environment.
      
      
    An Introduction to Continuous Integration, Delivery, and Deployment
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    CI/CD
  
  
  
  
    
  
    Conceptual
  
  
  
  
  
  
      
        Introduction> Introduction # Developing and releasing software can be a complicated process, especially as applications, teams, and deployment infrastructure grow in complexity. Often, challenges become more pronounced as projects grow. To develop, test, and release software in a quick and consistent way, developers and organizations have created three related but distinct strategies to manage and automate these processes.
      
      
    Understanding IP Addresses, Subnets, and CIDR Notation for Networking
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    FAQ
  
  
  
  
    
  
    Linux Basics
  
  
  
  
    
  
    Networking
  
  
  
  
  
  
      
        Introduction> Introduction # Understanding networking is a fundamental part of configuring complex environments on the internet. This has implications when trying to communicate between servers efficiently, developing secure network policies, and keeping your nodes organized.
      
      
    An Introduction to Securing your Linux VPS
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    FAQ
  
  
  
  
    
  
    Getting Started
  
  
  
  
    
  
    Linux Basics
  
  
  
  
  
  
      
        Status: Deprecated> Status: Deprecated # This article is deprecated and no longer maintained. It may still be useful as a reference, but may not be up to date with the latest best practices.
      
      
    An Introduction to Linux Permissions
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    Linux Basics
  
  
  
  
  
  
      
        Introduction> Introduction # Linux is, by definition, a multi-user OS that is based on the Unix concepts of file ownership and permissions to provide security at the file system level. To reliably administer a cloud server, it is essential that you have a decent understanding of how ownership and permissions work.
      
      
    What is High Availability?
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    High Availability
  
  
  
  
    
  
    Load Balancing
  
  
  
  
  
  
      
        Introduction> Introduction # With an increased demand for reliable and performant infrastructures designed to serve critical systems, the terms scalability and high availability couldn’t be more popular. While handling increased system load is a common concern, decreasing downtime and eliminating single points of failure are just as important.
      
      
    An Introduction to Big Data Concepts and Terminology
        
        
        
      
  
  
  
  
  
  
  
    
  
    Tutorials
  
  
  
  
  
  
  
  
  
  
  
  
    
  
    Big Data
  
  
  
  
    
  
    Clustering
  
  
  
  
    
  
    Conceptual
  
  
  
  
    
  
    Scaling
  
  
  
  
  
  
      
        Introduction> Introduction # Big data is a blanket term for the non-traditional strategies and technologies needed to gather, organize, process, and gather insights from large datasets. While the problem of working with data that exceeds the computing power or storage of a single computer is not new, the pervasiveness, scale, and value of this type of computing has greatly expanded in recent years.
      
      
    