From 5b8a0c5dc3491dd259b2481de41962f9cc9104d9 Mon Sep 17 00:00:00 2001 From: nmelehan Date: Thu, 7 Feb 2019 15:22:34 -0500 Subject: [PATCH 01/43] Updated SteamCMD and CSGO guides --- .../index.md | 185 ++++++++++++------ .../index.md | 8 +- .../index.md | 159 +++++++++++++++ 3 files changed, 284 insertions(+), 68 deletions(-) create mode 100644 docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-18-04/index.md diff --git a/docs/game-servers/install-steamcmd-for-a-steam-game-server/index.md b/docs/game-servers/install-steamcmd-for-a-steam-game-server/index.md index 55867131463..77dd45a3ca1 100644 --- a/docs/game-servers/install-steamcmd-for-a-steam-game-server/index.md +++ b/docs/game-servers/install-steamcmd-for-a-steam-game-server/index.md @@ -28,36 +28,41 @@ This guide is intended to get you quickly up and running with SteamCMD on your L This guide is written for a non-root user. Commands that require elevated privileges are prefixed with `sudo`. If you’re not familiar with the `sudo` command, you can check our [Users and Groups](/docs/tools-reference/linux-users-and-groups/) guide. {{< /note >}} -## Before You Install +## Before You Begin 1. Familiarize yourself with our [Getting Started](/docs/getting-started/) guide and complete the steps for setting your Linode's hostname and timezone. -2. Update Your Operating System: +1. Update Your Operating System: **CentOS** sudo yum update - **Debian / Ubuntu** + **Debian, Ubuntu** sudo apt update && sudo apt upgrade +1. [Install the `screen` utility](/docs/networking/ssh/using-gnu-screen-to-manage-persistent-terminal-sessions/#installing-gnu-screen), which will be used later when running SteamCMD. For more information about how screen works, review the rest of our [Using GNU Screen to Manage Persistent Terminal Sessions](/docs/networking/ssh/using-gnu-screen-to-manage-persistent-terminal-sessions/) guide. ## Secure Your Game Server Game servers and clients are an especially ripe target for attack. Use our [Securing Your Server](/docs/security/securing-your-server/) guide to: -1. [Add a Steam user account](/docs/security/securing-your-server/#add-a-limited-user-account). Make the username `steam` to coincide with the rest of [Linode's Steam guides](/docs/applications/game-servers/), as well as Valve's official documentation. Be sure to give the `steam` user `sudo` privileges. +1. [Add a limited Linux user](/docs/security/securing-your-server/#add-a-limited-user-account) to your server. Make the username `steam` to coincide with the rest of [Linode's Steam guides](/docs/applications/game-servers/), as well as Valve's official documentation. Be sure to give the `steam` user `sudo` privileges. -2. [Harden SSH access](/docs/security/securing-your-server/#harden-ssh-access). +1. [Harden SSH access](/docs/security/securing-your-server/#harden-ssh-access). -3. [Remove unused network-facing services](/docs/security/securing-your-server/#remove-unused-network-facing-services). +1. [Remove unused network-facing services](/docs/security/securing-your-server/#remove-unused-network-facing-services). -4. If you are using iptables, complete the [Configure a firewall](/docs/security/securing-your-server/#configure-a-firewall) steps **using the rulesets below**. If instead you are using **firewalld**, skip ahead to step 5. +1. If you are using [**iptables**](/docs/security/firewalls/control-network-traffic-with-iptables/) (which is set in Linode's Ubuntu and Debian images by default), follow the [Configure your Firewall Using IPTables](#configure-your-firewall-using-iptables) section. - *IPv4* +1. If instead you are using [**firewalld**](/docs/security/firewalls/introduction-to-firewalld-on-centos/) (as in Linode's CentOS 7 and Fedora images), follow the [Configure your Firewall Using FirewallD](#configure-your-firewall-using-firewalld) section. - {{< file "iptables" >}} +### Configure your Firewall Using IPTables + +1. Create two files named `v4` and `v6` in your home directory to record your IPv4 and IPv6 firewall rules: + + {{< file "~/v4" >}} *filter # Allow all loopback (lo0) traffic and reject traffic @@ -72,8 +77,8 @@ Game servers and clients are an especially ripe target for attack. Use our [Secu -A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT # Allow the Steam client. --A INPUT -p udp -m udp --sport 27000:27030 --dport 1025:65355 -j ACCEPT --A INPUT -p udp -m udp --sport 4380 --dport 1025:65355 -j ACCEPT +-A INPUT -p udp -m udp --dport 27000:27030 -j ACCEPT +-A INPUT -p udp -m udp --dport 4380 -j ACCEPT # Allow inbound traffic from established connections. # This includes ICMP error returns. @@ -90,15 +95,7 @@ Game servers and clients are an especially ripe target for attack. Use our [Secu COMMIT {{< /file >}} - {{< note >}} -Some Steam games require a few additional rules which can be found in our [Steam game guides](/docs/applications/game-servers/). Steam can also use multiple port ranges for various purposes, but they should only be allowed if your game(s) make use of those services. See [this](https://support.steampowered.com/kb_article.php?ref=8571-GLVN-8711) Steam Support page for more information. -{{< /note >}} - - *IPv6* - - Steam currently supports multiplayer play over IPv4 only, so a Steam server only needs basic IPv6 firewall rules, shown below. - - {{< file "iptables" >}} + {{< file "v6" >}} *filter # Allow all loopback (lo0) traffic and reject traffic @@ -119,14 +116,63 @@ Some Steam games require a few additional rules which can be found in our [Steam COMMIT {{< /file >}} -5. If you are using **firewalld** (CentOS 7, Fedora) instead of iptables, **use these rules**. If you are using iptables, do skip this step. + {{< note >}} +Some Steam games require a few additional rules which can be found in our [Steam game guides](/docs/applications/game-servers/). Steam can also use multiple port ranges for various purposes, but they should only be allowed if your game(s) make use of those services. See [this](https://support.steampowered.com/kb_article.php?ref=8571-GLVN-8711) Steam Support page for more information. + +Steam currently supports multiplayer play over IPv4 only, so a Steam server only needs basic IPv6 firewall rules, shown below. +{{< /note >}} + +1. Import the rulesets into your firewall to activate them: + + sudo iptables-restore < ~/v4 + sudo ip6tables-restore < ~/v6 + +1. [Install iptables-persistent](/docs/security/firewalls/control-network-traffic-with-iptables/#install-iptables-persistent). If you don't install this software, your firewall rules will not persist through reboots of your Linode. + +1. If iptables-persistent was already installed, reconfigure the package so that it recognizes your new rulesets: + + sudo dpkg-reconfigure iptables-persistent + +1. Confirm that your firewall rules are active: + + sudo iptables -vL + + The output should look similar to: + + Chain INPUT (policy ACCEPT 0 packets, 0 bytes) + pkts bytes target prot opt in out source destination + 0 0 ACCEPT all -- lo any anywhere anywhere + 0 0 REJECT all -- !lo any localhost/8 anywhere reject-with icmp-port-unreachable + 0 0 ACCEPT icmp -- any any anywhere anywhere state NEW icmp echo-request + 0 0 ACCEPT tcp -- any any anywhere anywhere state NEW tcp dpt:ssh + 0 0 ACCEPT udp -- any any anywhere anywhere udp dpts:27000:27030 + 0 0 ACCEPT udp -- any any anywhere anywhere udp dpt:4380 + 0 0 ACCEPT all -- any any anywhere anywhere state RELATED,ESTABLISHED + 0 0 LOG all -- any any anywhere anywhere limit: avg 3/min burst 5 LOG level debug prefix "iptables_INPUT_denied: " + 0 0 REJECT all -- any any anywhere anywhere reject-with icmp-port-unreachable + + Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) + pkts bytes target prot opt in out source destination + 0 0 LOG all -- any any anywhere anywhere limit: avg 3/min burst 5 LOG level debug prefix "iptables_FORWARD_denied: " + 0 0 REJECT all -- any any anywhere anywhere reject-with icmp-port-unreachable + + Chain OUTPUT (policy ACCEPT 60 packets, 8304 bytes) + pkts bytes target prot opt in out source destination + +1. If you ever import new rules into your firewall in the future, be sure to reconfigure iptables-persistent again afterward: + + sudo dpkg-reconfigure iptables-persistent + +### Configure your Firewall Using FirewallD + +1. Set up your ruleset: sudo firewall-cmd --zone="public" --add-service=ssh --permanent sudo firewall-cmd --zone="public" --add-forward-port=port=27000-27030:proto=udp:toport=1025-65355 --permanent sudo firewall-cmd --zone="public" --add-forward-port=port=4380:proto=udp:toport=1025-65355 --permanent sudo firewall-cmd --reload - Switch on firewalld and verify your ruleset: +1. Switch on firewalld and verify your ruleset: sudo systemctl start firewalld sudo systemctl enable firewalld @@ -134,76 +180,75 @@ COMMIT ## Install SteamCMD -First, install `screen` to run Steam games in a separate session: - -**CentOS 7** +SteamCMD can be installed via your distribution's [package manager](#from-package-repositories-recommended), or through a [manual method](#install-manually). - sudo yum install screen +### From Package Repositories (Recommended) -**Debian / Ubuntu** +Installing via the package manager allows you to more easily download updates and security patches, so we strongly recommend using this method if your distribution includes the SteamCMD package. The package is available for Ubuntu and Debian deployments. - sudo apt-get install screen +- **Ubuntu** + 1. Install the package: -### From Package Repositories (Recommended) + sudo apt-get install steamcmd -Installing via the package manager allows you to more easily download updates and security patches, so we strongly recommend using this method if your distribution includes the SteamCMD package. + 1. Create a symlink to the `steamcmd` executable in a convenient place, such as your home directory: -1. Install the package: + cd ~ + ln -s /usr/games/steamcmd steamcmd - sudo apt-get install steamcmd +- **Debian** - {{< note >}} -On Debian you need to add the `non-free` area of the repository to your sources, because the package is available only there. + 1. Add the `non-free` area to the repositories in your sources list, because the `steamcmd` package is only available from this area. To do so, edit your `/etc/apt/sources.list` file and include `non-free` at the end of each `deb` and `deb-src` line, as in this snippet: -To do so, edit the `/etc/apt/sources.list` file, and include `non-free` at the end of each `deb` and `deb-src` line: + {{< file "/etc/apt/sources.list" >}} +deb http://mirrors.linode.com/debian stretch main non-free +deb-src http://mirrors.linode.com/debian stretch main non-free +... +{{< /file >}} - deb http://mirrors.linode.com/debian stretch main non-free - deb-src http://mirrors.linode.com/debian stretch main non-free - ... + 1. Add the i386 architecture, update your package list, and install `steamcmd`: -Then, add the i386 architecture, update your package list, and install `steamcmd`: + sudo dpkg --add-architecture i386 + sudo apt update + sudo apt-get install steamcmd - sudo dpkg --add-architecture i386 - sudo apt update - sudo apt-get install steamcmd -{{< /note >}} + 1. Create a symlink to the `steamcmd` executable in a convenient place, such as your home directory: -1. Create a symlink to the `steamcmd` executable in a convenient place, such as your home directory: + cd ~ + ln -s /usr/games/steamcmd steamcmd - cd ~ - ln -s /usr/games/steamcmd steamcmd +### Install Manually -### Manually +If your package manager does not include the `steamcmd` package, install it manually: 1. Newly created Linodes use 64-bit Linux operating systems. Since Steam is compiled for i386, install the appropriate libraries. For CentOS, also install `wget`. - **CentOS 7** + - **CentOS 7, Fedora** - sudo yum install glibc.i686 libstdc++.i686 wget + sudo yum install glibc.i686 libstdc++.i686 wget - **Debian / Ubuntu** + - **Debian, Ubuntu** - sudo apt-get install lib32gcc1 + sudo apt-get install lib32gcc1 {{< note >}} Running `dpkg --add-architecture i386` is not necessary at this point. Our Steam game guides add [multiarch support](https://wiki.debian.org/Multiarch/HOWTO) only when a game requires it. {{< /note >}} -2. Create the directory for SteamCMD and change to it: +1. Create the directory for SteamCMD and change to it: mkdir ~/Steam && cd ~/Steam -3. Download the SteamCMD tarball: +1. Download the SteamCMD tarball: wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz -4. Extract the installation and runtime files: +1. Extract the installation and runtime files: tar -xvzf steamcmd_linux.tar.gz -#### Add an Error Fix - +{{< note >}} When running a Steam game, you may encounter the following error: /home/steam/.steam/sdk32/libsteam.so: cannot open shared object file: No such file or directory @@ -213,17 +258,19 @@ The game server will still operate despite this error, and it should be somethin mkdir -p ~/.steam/sdk32/ ln -s ~/Steam/linux32/steamclient.so ~/.steam/sdk32/steamclient.so +{{< /note >}} + ## Run SteamCMD -1. Run the executable in a screen. +1. Run the executable in a screen session: If you have installed SteamCMD from repositories: - screen ./steamcmd + screen ~/.steam/steamcmd If you have installed SteamCMD manually: - screen ./steamcmd.sh + screen ~/Steam/steamcmd.sh That will return an output similar to below and leave you at the `Steam>` prompt: @@ -250,7 +297,7 @@ The game server will still operate despite this error, and it should be somethin Steam> -2. Most Steam game servers allow anonymous logins. You can verify this for your title with Valve's list of [dedicated Linux servers](https://developer.valvesoftware.com/wiki/Dedicated_Servers_List#Linux_Dedicated_Servers). +1. Most Steam game servers allow anonymous logins. You can verify this for your title with Valve's list of [dedicated Linux servers](https://developer.valvesoftware.com/wiki/Dedicated_Servers_List#Linux_Dedicated_Servers). To log in anonymously: @@ -261,14 +308,22 @@ The game server will still operate despite this error, and it should be somethin login example_user {{< caution >}} -Be aware that some versions of the Steam CLI do **not** obfuscate passwords. If you're signing in with your Steam account, be aware of your local screen's security. +Some versions of the Steam CLI do **not** obfuscate passwords. If you're signing in with your Steam account, be aware of your local screen's security. {{< /caution >}} - {{< note >}} -You can exit the `Steam>` prompt at any time by typing `quit`. -{{< /note >}} +## Exit SteamCMD + +### Detach from the Screen Session + +To exit the screen session which contains the Steam process *without* disrupting the Steam process, enter **Control+A** followed by **Control+D** on your keyboard. You can later return to the screen session by entering: + + screen -r + +For more information on managing your screen sessions, review our [Using GNU Screen to Manage Persistent Terminal Sessions](/docs/networking/ssh/using-gnu-screen-to-manage-persistent-terminal-sessions/) guide. + +### Stop SteamCMD -3. To exit the screen session without disrupting the Steam process, press **CTRL + A** and then **D**. To resume, use the `screen -r` command. For more information, check out our guide on [how to use screen sessions](/docs/networking/ssh/using-gnu-screen-to-manage-persistent-terminal-sessions/). +To stop the Steam process and remove your screen session, enter `quit` at the `Steam>` command prompt, or enter **Control+C** on your keyboard. ## Next Steps diff --git a/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-14-04/index.md b/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-14-04/index.md index d2f6342392e..0d7385fd820 100644 --- a/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-14-04/index.md +++ b/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-14-04/index.md @@ -12,9 +12,11 @@ modified_by: title: 'Launch a Counter Strike: Global Offensive (CS:GO) server on Ubuntu 14.04' contributor: name: Sam Mauldin -aliases: ['applications/game-servers/csgo-server-debian-ubuntu/','applications/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-14-04/'] +aliases: ['applications/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-14-04/'] external_resources: - - '[Valve Developer Community - Counter-Strike: Global Offensive Dedicated Servers](https://developer.valvesoftware.com/wiki/Counter-Strike:_Global_Offensive_Dedicated_Servers)' + - '[Valve Developer Community - Counter-Strike: Global Offensive Dedicated Servers](https://developer.valvesoftware.com/wiki/Counter-Strike:_Global_Offensive_Dedicated_Servers)' +deprecated: true +deprecated_link: 'game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-18-04/' dedicated_cpu_link: true --- @@ -164,4 +166,4 @@ These settings are changed in the launch command. ### RCON -When logged into the server, you can open the RCON console with the backtick button (`), or your mapped key. To log in type `rcon_password` followed by your password. For more information regarding RCON, click [here](/docs/game-servers/team-fortress2-on-debian-and-ubuntu/#rcon). +When logged into the server, you can open the RCON console with the backtick button (`` ` ``), or your mapped key. To log in type `rcon_password` followed by your password. For more information regarding RCON, click [here](/docs/game-servers/team-fortress2-on-debian-and-ubuntu/#rcon). diff --git a/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-18-04/index.md b/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-18-04/index.md new file mode 100644 index 00000000000..a795b14d5b3 --- /dev/null +++ b/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-18-04/index.md @@ -0,0 +1,159 @@ +--- +author: + name: Linode Community + email: docs@linode.com +description: 'This Counter Strike: Global Offensive (CS:GO) server guide contains instructions on how to install SteamCMD, download the dedicated server, and launch the game server.' +keywords: ["counter strike", "counter strike global offensive", "csgo", "cs:go", "csgo server", "csgo server hosting", " steam servers", "game servers", "games", "ubuntu", "ubuntu 14.04"] +license: '[CC BY-ND 4.0](https://creativecommons.org/licenses/by-nd/4.0)' +published: 2016-02-25 +modified: 2016-02-29 +modified_by: + name: Linode +title: 'Launch a Counter Strike: Global Offensive (CS:GO) server on Ubuntu 18.04' +contributor: + name: Linode +aliases: ['applications/game-servers/csgo-server-debian-ubuntu/','applications/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-14-04/'] +external_resources: + - '[Valve Developer Community - Counter-Strike: Global Offensive Dedicated Servers](https://developer.valvesoftware.com/wiki/Counter-Strike:_Global_Offensive_Dedicated_Servers)' +dedicated_cpu_link: true +--- + +[Counter Strike: Global Offensive](http://store.steampowered.com/app/730) (CS:GO) is a first-person shooter by Valve. Hosting your own server gives you full control over your game and game modes, so you can play the exact flavor of CS:GO you want. This guide contains instructions on how to download the dedicated server and launch the game server. + + + +## Before You Begin + +1. [Create a Linode](/docs/getting-started-new-manager/#create-a-linode) running Ubuntu 18.04. + +1. Create a [Steam](http://store.steampowered.com) account if you do not have one, and download [Counter Strike: Global Offensive](http://store.steampowered.com/app/730/) to your computer. + +1. A Steam game server login token (GSLT) is required to host a public CS:GO server. Without the token, client connections are restricted to the LAN only. [Register your GSLT](https://steamcommunity.com/dev/managegameservers) on Steam's website. Enter `730` as the App ID when creating your GSLT. Review [Steam's documentation](https://developer.valvesoftware.com/wiki/Counter-Strike:_Global_Offensive_Dedicated_Servers#Registering_Game_Server_Login_Token) for more information about GSLTs. + +1. Complete our guide: [Install SteamCMD for a Steam Game Server](/docs/applications/game-servers/install-steamcmd-for-a-steam-game-server). This will get SteamCMD installed and running on your Linode and this guide will pick up where the SteamCMD page leaves off. + + {{< note >}} +This guide is written for a non-root user. Commands that require elevated privileges are prefixed with `sudo`. If you’re not familiar with the `sudo` command, you can check our [Users and Groups](/docs/tools-reference/linux-users-and-groups) guide. +{{< /note >}} + +## Prerequisites for Counter-Strike: Global Offensive + +After following the SteamCMD guide, some firewall modifications are needed specifically for CS:GO: + +1. [Stop the SteamCMD process](/docs/game-servers/install-steamcmd-for-a-steam-game-server/#stop-steamcmd) if it is currently running. + +1. Replace a firewall rule to slightly extend the UDP port range available to the game. This command assumes that you have **only** the iptables rules in place from the SteamCMD guide: + + sudo iptables -R INPUT 5 -p udp -m udp --dport 26900:27030 -j ACCEPT + +1. Reconfigure iptables-persistent to ensure that your new rule persists: + + sudo dpkg-reconfigure iptables-persistent + +## Install Counter Strike: Global Offense + +1. [Run SteamCMD and login to Steam](/docs/game-servers/install-steamcmd-for-a-steam-game-server/#run-steamcmd) inside a screen session. + +1. From the SteamCMD prompt, install CS:GO to the `steam` user's home directory: + + force_install_dir ./csgo-ds + app_update 740 validate + + This can take some time. If the download looks as if it has frozen, be patient. Once the download is complete, you should see this output: + + Success! App '740' fully installed. + + Steam> + +1. Exit SteamCMD: + + quit + + {{< note >}} +To update CS:GO, run the above 4 commands again. +{{< /note >}} + +## Configure the Server + +1. Create a file called `server.cfg` using your preferred text editor with the contents of the following snippet. The location you should save this file to depends on how you installed SteamCMD: + + | SteamCMD Installation Method | File Location | + | ------------------- | ------------- | + | Package manager | `~/.steam/steamcmd/csgo-ds/csgo/cfg/server.cfg` | + | Manual installation | `~/Steam/csgo-ds/csgo/cfg/server.cfg` | + + The value for `hostname` will displayed to users that join your server. Replace the values of `sv_password` and `rcon_password` with two different and unique passwords that you don't use elsewhere. + + {{< file "server.cfg" aconf >}} +hostname "The name of your CS:GO server" +sv_password "server_password" +sv_timeout 60 +rcon_password "rcon_password" +mp_autoteambalance 1 +mp_limitteams 1 +writeid +writeip +{{< /file >}} + + `sv_password` is the password users will need to enter to join the server. `rcon_password` is the [RCON](https://developer.valvesoftware.com/wiki/Source_RCON_Protocol) password, which is used to remotely control the game server from within the game. For an extensive list of `server.cfg` options, see [this page](http://csgodev.com/csgodev-server-cfg-for-csgo/). + +1. Create a startup script for CS:GO with the following snippet. Name the file `startcsgo.sh` and save it to your `steam` user's home directory. Set the value of the `YOUR_GSLT` variable at the top to be your game server login token. Set the value of the `CSGO_INSTALL_LOCATION` variable at the top according to the table below. + + {{< file "~/startcsgo.sh" >}} +#!/bin/sh + +YOUR_GSLT= +CSGO_INSTALL_LOCATION= + +cd $CSGO_INSTALL_LOCATION +screen -S "Counter-Strike: Global Offensive Server" ./srcds_run -game csgo -usercon +game_type 0 +game_mode 1 +mapgroup mg_bomb +map de_dust2 +sv_setsteamaccount $YOUR_GSLT -net_port_try 1 +{{< /file >}} + + | SteamCMD Installation Method | CSGO_INSTALL_LOCATION | + | ------------------- | ------------- | + | Package manager | `~/.steam/steamcmd/csgo-ds/` | + | Manual installation | `~/Steam/csgo-ds/` | + + When run, the script will execute a Dust2 server in competitive game mode in a [screen session](/docs/networking/ssh/using-gnu-screen-to-manage-persistent-terminal-sessions). For more startup modes and game options, see Valve's [CS:GO wiki](https://developer.valvesoftware.com/wiki/Counter-Strike:_Global_Offensive_Dedicated_Servers#Starting_the_Server). + +1. Make the script executable: + + chmod +x ~/startcsgo.sh + +## Start the Server + +1. Now that your server is installed and configured, it can be launched by running the `startcsgo.sh` script from your `steam` user's home directory. + + cd ~ && ./startcsgo.sh + +1. Review instructions for [detaching from or stopping SteamCMD](/docs/game-servers/install-steamcmd-for-a-steam-game-server/#exit-steamcmd) to exit the CS:GO server. + +## Join the Game + +1. Launch Counter-Strike: Global Offensive. + +1. Once launched, go to **Play** and click **Browse Community Servers**. + +1. Click on the **Favorites** tab and then click **Add a Server** at the bottom. + +1. Type in the IP address of your Linode and click **Add this address to favorites**. + +1. You'll see your new Counter-Strike: Global Offensive server. Click **Connect** at the bottom right and start fragging away. + +## Game Settings + +### Game Modes and Types + +You can change the game type and mode options to start different types of servers: + + Mode game_mode game_type + Classic Casual 0 0 + Classic Competitive 0 1 + Arms Race 1 0 + Demolition 1 1 + +These settings are changed in the launch command. + +### RCON + +When logged into the server, you can open the RCON console with the backtick button (`` ` ``), or your mapped key. To log in type `rcon_password` followed by your password. For more information regarding RCON, click [here](/docs/game-servers/team-fortress2-on-debian-and-ubuntu/#rcon). \ No newline at end of file From 51bf15b710c45a6b176d00f1ee7f4f907b850203 Mon Sep 17 00:00:00 2001 From: nmelehan Date: Thu, 7 Feb 2019 16:48:06 -0500 Subject: [PATCH 02/43] Removed modified dates --- .../install-steamcmd-for-a-steam-game-server/index.md | 1 - .../index.md | 1 - .../index.md | 1 - 3 files changed, 3 deletions(-) diff --git a/docs/game-servers/install-steamcmd-for-a-steam-game-server/index.md b/docs/game-servers/install-steamcmd-for-a-steam-game-server/index.md index 77dd45a3ca1..b6a31363bfd 100644 --- a/docs/game-servers/install-steamcmd-for-a-steam-game-server/index.md +++ b/docs/game-servers/install-steamcmd-for-a-steam-game-server/index.md @@ -5,7 +5,6 @@ author: description: 'Install SteamCMD, a command-line version of the Steam client, which works with games that use SteamPipe. Installing SteamCMD is a prerequisite before hosting a Steam title on your own game server.' keywords: ["steam", "steamcmd", "steam cmd", "games", "game server", "steam server", "steampipe"] license: '[CC BY-ND 4.0](https://creativecommons.org/licenses/by-nd/4.0)' -modified: 2019-02-01 modified_by: name: Linode published: 2016-02-15 diff --git a/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-14-04/index.md b/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-14-04/index.md index 0d7385fd820..5332c4abc1b 100644 --- a/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-14-04/index.md +++ b/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-14-04/index.md @@ -6,7 +6,6 @@ description: 'This Counter Strike: Global Offensive (CS:GO) server guide contain keywords: ["counter strike", "counter strike global offensive", "csgo", "cs:go", "csgo server", "csgo server hosting", " steam servers", "game servers", "games", "ubuntu", "ubuntu 14.04"] license: '[CC BY-ND 4.0](https://creativecommons.org/licenses/by-nd/4.0)' published: 2016-02-25 -modified: 2019-02-01 modified_by: name: Linode title: 'Launch a Counter Strike: Global Offensive (CS:GO) server on Ubuntu 14.04' diff --git a/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-18-04/index.md b/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-18-04/index.md index a795b14d5b3..5a2ba1fe50a 100644 --- a/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-18-04/index.md +++ b/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-18-04/index.md @@ -6,7 +6,6 @@ description: 'This Counter Strike: Global Offensive (CS:GO) server guide contain keywords: ["counter strike", "counter strike global offensive", "csgo", "cs:go", "csgo server", "csgo server hosting", " steam servers", "game servers", "games", "ubuntu", "ubuntu 14.04"] license: '[CC BY-ND 4.0](https://creativecommons.org/licenses/by-nd/4.0)' published: 2016-02-25 -modified: 2016-02-29 modified_by: name: Linode title: 'Launch a Counter Strike: Global Offensive (CS:GO) server on Ubuntu 18.04' From 5d889ea1b55a4b1131f3f3c4e8c316de5c2b9b0f Mon Sep 17 00:00:00 2001 From: nmelehan Date: Fri, 8 Feb 2019 10:41:41 -0500 Subject: [PATCH 03/43] Updated publish date for CSGO Ubuntu 18.04 --- .../index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-18-04/index.md b/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-18-04/index.md index 5a2ba1fe50a..f09dceecb8e 100644 --- a/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-18-04/index.md +++ b/docs/game-servers/launch-a-counter-strike-global-offensive-server-on-ubuntu-18-04/index.md @@ -5,7 +5,7 @@ author: description: 'This Counter Strike: Global Offensive (CS:GO) server guide contains instructions on how to install SteamCMD, download the dedicated server, and launch the game server.' keywords: ["counter strike", "counter strike global offensive", "csgo", "cs:go", "csgo server", "csgo server hosting", " steam servers", "game servers", "games", "ubuntu", "ubuntu 14.04"] license: '[CC BY-ND 4.0](https://creativecommons.org/licenses/by-nd/4.0)' -published: 2016-02-25 +published: 2019-01-07 modified_by: name: Linode title: 'Launch a Counter Strike: Global Offensive (CS:GO) server on Ubuntu 18.04' From 2cd63af5d7f6a54c1d8882dad95cff90a3b09219 Mon Sep 17 00:00:00 2001 From: Andy Stevens Date: Tue, 12 Mar 2019 14:01:29 -0400 Subject: [PATCH 04/43] Initial Commit --- .../beginners-guide-to-kubernetes/index.md | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 docs/applications/containers/beginners-guide-to-kubernetes/index.md diff --git a/docs/applications/containers/beginners-guide-to-kubernetes/index.md b/docs/applications/containers/beginners-guide-to-kubernetes/index.md new file mode 100644 index 00000000000..be677078605 --- /dev/null +++ b/docs/applications/containers/beginners-guide-to-kubernetes/index.md @@ -0,0 +1,30 @@ +--- +author: + name: Linode Community + email: docs@linode.com +description: 'A high level overview of Kubernetes cluster architecture.' +keywords: ['kubernetes','k8s','beginner','architecture'] +license: '[CC BY-ND 4.0](https://creativecommons.org/licenses/by-nd/4.0)' +published: 2019-03-12 +modified: 2019-03-12 +modified_by: + name: Linode +title: "A Beginner's Guide to Kubernetes" +contributor: + name: Linode +external_resources: +- '[Link Title 1](http://www.example.com)' +- '[Link Title 2](http://www.example.net)' +--- + +*Kubernetes* is an open source container orchestration system that helps deploy and manage containerized applications. Developed by Google starting in 2014 and written in the Go langauge, Kubernetes (often referred to as *k8s*) has quickly become the standard when it comes to creating auto-scaling and self-healing applications. This guide will explain the major parts of Kubernetes and some of the core concepts behind their implementation. + +This guide assumes you have a working knowledge of containers and Docker. + +## Nodes + +In Kubernetes all Linodes, VMs, or physical servers are called Nodes. + +## Pods + +In Kubernetes all containers exist within Pods. Pods each have their own \ No newline at end of file From ad20d72b17a428a1dede47a1185f023a082742f3 Mon Sep 17 00:00:00 2001 From: Erik Swan Date: Sun, 17 Mar 2019 14:44:11 -0600 Subject: [PATCH 05/43] Remove redundant step about setting password The text removed is redundant with the following step, which has a more complete description of setting the root password. --- docs/getting-started/index.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/getting-started/index.md b/docs/getting-started/index.md index 97ed29ad52e..bff7ad9f30e 100644 --- a/docs/getting-started/index.md +++ b/docs/getting-started/index.md @@ -61,8 +61,6 @@ Use a [StackScript](http://www.linode.com/stackscripts) to quickly deploy softwa 1. Give your Linode a label. This is a name to help you easily identify it within the Cloud Manager's Dashboard. If desired, assign a tag to the Linode in the **Add Tags** field. -1. Create a strong password for your Linode. You will use this password to SSH into your Linode. - 1. Create a root password for your Linode in the **Root Password** field. This password must be provided when you log in to your Linode via SSH. It must be at least 6 characters long and contain characters from two of the following categories: - lowercase and uppercase case letters From 3ecee9917066bdda598c2702a253fa345682550a Mon Sep 17 00:00:00 2001 From: Andy Stevens Date: Thu, 21 Mar 2019 10:09:57 -0400 Subject: [PATCH 06/43] [New] A Beginner's Guide to Kubernetes A high level overview of core Kubernetes concepts. --- .../beginners-guide-to-kubernetes/index.md | 480 +++++++++++++++++- 1 file changed, 469 insertions(+), 11 deletions(-) diff --git a/docs/applications/containers/beginners-guide-to-kubernetes/index.md b/docs/applications/containers/beginners-guide-to-kubernetes/index.md index be677078605..e1cbf3026ff 100644 --- a/docs/applications/containers/beginners-guide-to-kubernetes/index.md +++ b/docs/applications/containers/beginners-guide-to-kubernetes/index.md @@ -2,29 +2,487 @@ author: name: Linode Community email: docs@linode.com -description: 'A high level overview of Kubernetes cluster architecture.' +description: 'A high level overview of Kubernetes cluster.' keywords: ['kubernetes','k8s','beginner','architecture'] license: '[CC BY-ND 4.0](https://creativecommons.org/licenses/by-nd/4.0)' -published: 2019-03-12 -modified: 2019-03-12 +published: 2019-03-21 +modified: 2019-03-21 modified_by: name: Linode title: "A Beginner's Guide to Kubernetes" contributor: name: Linode external_resources: -- '[Link Title 1](http://www.example.com)' -- '[Link Title 2](http://www.example.net)' +- '[Kubernetes API Documentation](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.13/)' +- '[Kubernetes Concepts Documentation](https://kubernetes.io/docs/concepts/)' --- -*Kubernetes* is an open source container orchestration system that helps deploy and manage containerized applications. Developed by Google starting in 2014 and written in the Go langauge, Kubernetes (often referred to as *k8s*) has quickly become the standard when it comes to creating auto-scaling and self-healing applications. This guide will explain the major parts of Kubernetes and some of the core concepts behind their implementation. +*Kubernetes*, often referred to as *k8s*, is an open source container orchestration system that helps deploy and manage containerized applications. Developed by Google starting in 2014 and written in the Go langauge, Kubernetes is quickly becoming the standard way to architect horizontally scalable applications. This guide will explain the major parts and concepts of Kubernetes. -This guide assumes you have a working knowledge of containers and Docker. -## Nodes +## Containers -In Kubernetes all Linodes, VMs, or physical servers are called Nodes. +Kubernetes is a container orechestration tool and therefore needs a container runtime installed to work. In practice the default container runtime for Kubernetes is [Docker](https://www.docker.com/), though other runtimes like [rkt](https://coreos.com/rkt/) and [LXD](https://linuxcontainers.org/lxd/introduction/) will also work. With the advent of the [Container Runtime Interface (CRI)](https://github.com/kubernetes/community/blob/master/contributors/devel/sig-node/container-runtime-interface.md), which hopes to standardize the way Kubernetes interacts with containers, other options like [containerd](https://containerd.io/), [cri-o](https://cri-o.io/), and [Frakti](https://github.com/kubernetes/frakti) have also become available. This guide assumes you have a working knowledge of containers and the examples will all use Docker as the container runtime. -## Pods +## Kubernetes API -In Kubernetes all containers exist within Pods. Pods each have their own \ No newline at end of file +Kubernetes is built around a robust RESTful API. Every action taken in Kubernetes, be it inter-component communication or user command, interacts in some fashion with the Kubernetes API. The goal of the API is to help facilitate the desired state of the Kubernetes cluster. If you want X instances of your application running and have Y currently active, the API will take the required steps to get to X, whether this means creating or destroying resources. To create this desired state, you create *objects*, which are normally represented by YAML files called *manifests*, and apply them through the command line with the **kubectl** tool. + +## kubectl + +kubectl is a command line tool used to interact with the Kubernetes cluster. It offers a host of features, including the ability to create, stop, and delete resources, describe active resources, and auto scale resources. For more information on the types of commands and resources you can use with kubectl, consult the [Kubernetes kubectl documentation](https://kubernetes.io/docs/reference/kubectl/overview/). + +## Kubernetes Master, Nodes, and Control Plane + +At the highest level of Kubernetes there exist two kinds of servers, a *Master* and a *Node*. These servers can be Linodes, VMs, or physical servers. Together, these servers form a *cluster*. + +### Nodes + +Kubernetes Nodes are worker servers that run your application. The number of Nodes is determined by the user, and they are created by the user. In addition to running your application, each Node runs two processes: + +- **kubelet** receives PodSpec files that describe the desired state of a [Pod](#pods) from the API server, and ensures the Pods that those files represent are healthy and running on the Node. +- **kube-proxy** is a networking proxy that proxies the UDP, TCP and SCTP networking of each Node, and provides load balancing. This is only used to connect to [Services](#services). + +### Kubernetes Master + +The Kubernetes Master is a normally a separate server responsible for maintaining the desired state of the cluster by telling the Nodes how many instances of your application it should run and where. The Kubernetes Master runs three processes: + +- **kube-apiserver** is the front end for the Kubernetes API server. +- **kube-controller-manager** is a daemon that manages the Kubernetes control loop. For more on Controllers, see the [Controllers section](#controllers). +- **kube-scheduler** is a function that looks for newly created Pods that have no Nodes and assigns them a Node based on a host of requirements. For more information on kube-scheduler, consult the [Kubernetes kube-scheduler documentation](https://kubernetes.io/docs/reference/command-line-tools-reference/kube-scheduler/). + +Additionally, the Kubernetes Master runs the database **etcd** (pronounced etsy-dee). etcd is a highly available key-value store that provides the backend database for Kubernetes. + +Together kube-apiserver, kube-controller-manager, kube-scheduler, and etcd form what is known as the *control plane*. The control plane is responsible for making decisions about the cluster and pushing it toward the desired state. + +## Kubernetes Objects + +In Kubernetes there are a number of objects that are abstractions of your Kubernetes system's desired state. These objects represent your application, its networking, and disk resources -- all of which together form your application. + +### Pods + +In Kubernetes all containers exist within *Pods*. Pods are the smallest unit of the Kubernetes architecture, and can be viewed as a kind of wrapper for your container. Each Pod is given its own IP address with which it can interact with other Pods within the cluster. + +Usually a Pod contains only one container, but a Pod can contain multiple containers if those containers need to share resources. If there is more than one container in a Pod, these containers can communicate with one another via localhost. + +Pods in Kubernetes are "mortal," which means that they are created and destroyed depending on the needs of the application. For instance, you might have a web app backend that sees a spike in CPU usage. This might cause the cluster to scale up the amount of backend Pods from two to ten, in which case eight new Pods would be created. Once the traffic subsides, the Pods might scale back to two, in which case eight pods would be destroyed. + +It is important to note that Pods are destroyed without respect to which Pod was created first. And, while each Pod has its own IP address, this IP address will only be available for the life-cycle of the Pod. + +Below is an example of a Pod manifest: + +{{< file "my-apache-pod.yaml" yaml >}} +apiVersion: v1 +kind: Pod +metadata: + name: apache-pod + labels: + app: web +spec: + containers: + - name: apache-container + image: httpd +{{}} + +Each manifest has four necessary parts: + +- The version of the API in use. +- The kind of resource you'd like to define. +- Metadata about the resource. +- Though not required by all objects, a spec which describes the desired behavior of the resource is necessary for most objects and controllers. + +In the case of this example, the API in use is `v1`, and the `kind` is a Pod. The metadata field is used for applying a name, labels, and annotations. Names are used to differentiate resources, while labels are used to group like resources. Labels will come into play more when defining [Services](#services) and [Deployments](#deployment). Annotations are for attaching arbitrary data to the resource. + +The spec is where the desired state of the resource is defined. In this case a Pod with a single NGINX container is desired, so the `containers` field is supplied with a name, 'nginx-container', and an image, the latest version of NGINX. The image is pulled from [Docker Hub](https://hub.docker.com), as that is the default container registry for Kubernetes. + +For more information on the type of fields you can supply in a Pod manifest, refer to the [Kubernetes Pod API documentation](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.13/#pod-v1-core). + +Now that you have the manifest, you can create the Pod using the `create` command: + + kubectl create -f my-apache-pod.yaml + +To view a list of your pods, use the `get pods` command: + + kubectl get pods + +You should see output like the following: + + NAME READY STATUS RESTARTS AGE + apache-pod 1/1 Running 0 16s + +To quickly view which Node the Pod exists on, issue the `get pods` command with the `-o=wide` flag: + + kubectl get pods -o=wide + +To retrieve information about the Pod, issue the `describe` command: + + kubcetl describe pod apache-pod + +You should see output like the following: + + ... + Events: + Type Reason Age From Message + ---- ------ ---- ---- ------- + Normal Scheduled 2m38s default-scheduler Successfully assigned default/apache-pod to mycluster-node-1 + Normal Pulling 2m36s kubelet, mycluster-node-1 pulling image "httpd" + Normal Pulled 2m23s kubelet, mycluster-node-1 Successfully pulled image "httpd" + Normal Created 2m22s kubelet, mycluster-node-1 Created container + Normal Started 2m22s kubelet, mycluster-node-1 Started container + +To delete the Pod, issue the `delete` command: + + kubectl delete pod apache-pod + +### Services + +*Services* group identical Pods together to provide a consitent means of accessing them. For instance, you might have three Pods that are all serving a website, and all of those Pods need to be accessible on port 80. A Service can ensure that all of the Pods are accessible at that port, and can load balance traffic between those Pods. Additionally, a Service can allow your application to be accessible from the internet. Each Service is given an IP address and a corresponding local DNS entry. Additionally, Services exist across Nodes. If you have two replica Pods on one Node and an additional replica Pod on another Node, the service can include all three Pods. There are four types of Service: + +- **ClusterIP**: exposes the Service internally to the cluster. This is the default setting for a Service. +- **NodePort**: exposes the Service to the internet from the IP address of the Node at the specified port number. You can only use ports in the 30000-32767 range. +- **LoadBalancer**: this will create a load balancer assigned to a fixed IP address in the cloud, so long as the cloud provider supports it. In the case of Linode, this is the responsibility of the [Linode Cloud Controller Manager](https://github.com/linode/linode-cloud-controller-manager), which will create a NodeBalancer for the cluster. This is the best way to expose your cluster to the internet. +- **ExternalName**: maps the service to a DNS name by returning a CNAME record redirect. ExternalName is good for directing traffic to outside resources, such as a database that is hosted on another cloud. + +Below is an example of a Service manifest: + +{{< file "my-apache-service.yaml" yaml>}} +apiVersion: v1 +kind: Service +metadata: + name: apache-service + labels: + app: web +spec: + type: NodePort + ports: + - port: 80 + targetPort: 80 + nodePort: 30020 + selector: + app: web +{{}} + +The above example Service uses the `v1` API, and its `kind` is Service. Like the Pod example in the previous section, this manifest has a name and a label. Unlike the Pod example, this spec uses the `ports` field to define the exposed port on the container (`port`), and the target port on the Pod (`targetPort`). The `type` `NodePort` unlocks the use of `nodePort` field, which allows traffic on the host Node at that port. Lastly, the `selector` field is used to target only the Pods that have been assigned the `app: web` label. + +For more information on Services, visit the [Kubernetes Service API documentation](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.13/#service-v1-core). + +To create the Service from the YAML file, issue the create command: + + kubectl create -f my-apache-service.yaml + +To view a list of running services, issue the `get services` command: + + kubectl get services + +You should see output like the following: + + NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE + apache-service NodePort 10.99.57.13 80:30020/TCP 54s + kubernetes ClusterIP 10.96.0.1 443/TCP 46h + +To retrieve more information about your Service, issue the `describe` command: + + kubectl describe service apache-service + +To delete the Service, issue the delete command: + + kubcetl delete service apache-service + +### Volumes + +A *Volume* in Kubernetes is a way to share file storage between containers in a Pod. Kubernetes Volumes differ from Docker volumes because they exist inside the Pod rather than inside the container. When a container is restarted the Volume persists. Note, however, that these Volumes are still tied to the lifecycle of the Pod, so if the Pod is destroyed the Volume will be destroyed with it. + +Linode also offers a [Container Storage Interface (CSI) driver](https://github.com/linode/linode-blockstorage-csi-driver) that allows the cluster to persist data on a Block Storage volume. + +Below is an example of how to create and use a Volume by creating a Pod manifest: + +{{< file "my-apache-pod-with-volume.yaml" yaml>}} +apiVersion: v1 +kind: Pod +metadata: + name: apache-with-volume +spec: + volumes: + - name: apache-storage-volume + emptyDir: {} + + containers: + - name: nginx + image: nginx + volumeMounts: + - name: apache-storage-volume + mountPath: /data/apache-data +{{}} + +A Volume has two unique aspects to its definition. In this example, the first aspect is the `volumes` block that defines the type of Volume you want to create, which in this case is a simple empty directory (`emptyDir`). The second aspect is the `volumeMounts` field within the container's `spec`. This field is given the name of the Volume you are creating and a mount path within the container. + +There are a number of different Volume types you could create in addition to `emptyDir` depending on your cloud host. For more information on Volume types, visit the [Kubernetes Volumes API documentation](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.13/#volume-v1-core). + + +### Namespaces + +Namespaces are virtual clusters that exist within the Kubernetes cluster that help to group and organize objects. Every cluster has at least three namespaces: `default`, `kube-system`, and `kube-public`. When interacting with the cluster it is important to know which Namespace the object your are looking for is in, as many commands will default to only showing you what exists in the `default` namespace. Resources created without an explicit namespace will be added to the `default` namespace. + +Namespaces consist of alphanumeric characters, dashes (`-`), and periods (`.`). + +Here is an example of how to define a Namespace with a manifest: + +{{< file "my-namespace.yaml" yaml>}} +apiVersion: v1 +kind: Namespace +metadata: + name: my-app +{{}} + +To create the Namespace, issue the `create` command: + + kubcetl create -f my-namespace.yaml + +Below is an example of a Pod with a Namespace: + +{{< file "my-apache-pod-with-namespace.yaml" yaml >}} +apiVersion: v1 +kind: Pod +metadata: + name: apache-pod + labels: + app: web + namespace: my-app +spec: + containers: + - name: apache-container + image: httpd +{{}} + +To retrieve resources in a certain Namespace, use the `-n` flag. + + kubectl get pods -n my-app + +You should see a list of Pods within your namespace: + + NAME READY STATUS RESTARTS AGE + apache-pod 1/1 Running 0 7s + +To view Pods in all Namespaces, use the `--all-namespaces` flag. + + kubectl get pods --all-namespaces + +To delete a Namespace, issue the `delete namespace` command. Note that this will delete all resources within that Namespace: + + kubectl delete namespace my-app + +For more information on Namespaces, visit the [Kubernetes Namespaces API documentation](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.13/#namespace-v1-core) + +## Controllers + +A Controller is a control loop that continiously watchs the Kubernetes API and tries to manage the desired state of certain aspects of the cluster. There are a number of controllers. Below is a short reference of the most popular controllers you might interact with. + +### ReplicaSet + +As has been mentioned, Kubernetes allows an application to scale horizontally. A *ReplicaSet* is one of the controllers responsible for keeping a given number of replica Pods running. If one Pod goes down in a ReplicaSet, another will be created to replace it. In this way, Kubernetes is *self-healing*. However, for most use cases it is recommended to use a [Deployment](#deployment) instead of a ReplicaSet. + +Below is an example of a ReplicaSet: + +{{< file "my-apache-replicaset.yaml" yaml>}} +apiVersion: apps/v1 +kind: ReplicaSet +metadata: + name: apache-replicaset + labels: + app: web +spec: + replicas: 5 + selector: + matchLabels: + app: web + template: + metadata: + labels: + app: web + spec: + containers: + - name: apache-container + image: httpd +{{}} + +There are three main things to note in this ReplicaSet. The first is the `apiVersion`, which is `apps/v1`. This differs from the previous examples, which were all `apiVersion: v1`, because ReplicaSets do not exist in the `v1` core. They instead reside in the `apps` group of `v1`. The second and third things to note are the `replicas` field and the `selector` field. The `replicas` field defines how many replica Pods you want to be running at any given time. The `selector` field defines which Pods, matched by their label, will be controlled by the ReplicaSet. + +To view your ReplicaSets, issue the `get replicasets` command: + + kubectl get replicasets + +You should see output like the following: + + NAME DESIRED CURRENT READY AGE + apache-replicaset 5 5 0 5s + +This output shows that of the five desired replicas, there are 5 currently active, but zero of those replicas are available. This is because the Pods are still booting up. If you issue the command again, you will see that all five have become ready: + + NAME DESIRED CURRENT READY AGE + apache-replicaset 5 5 5 86s + +You can view the Pods the ReplicaSet created by issuing the `get pods` command: + + NAME READY STATUS RESTARTS AGE + apache-replicaset-5rsx2 1/1 Running 0 31s + apache-replicaset-8n52c 1/1 Running 0 31s + apache-replicaset-jcgn8 1/1 Running 0 31s + apache-replicaset-sj422 1/1 Running 0 31s + apache-replicaset-z8g76 1/1 Running 0 31s + +To delete a ReplicaSet, issue the `delete replicaset` command: + + kubectl delete replicaset apache-replicaset + +If you issue the `get pods` command, you will see that the Pods the ReplicaSet created are in the process of terminating: + + NAME READY STATUS RESTARTS AGE + apache-replicaset-bm2pn 0/1 Terminating 0 3m54s + apache-replicaset-dthlp 0/1 Terminating 0 3m54s + +In the above example, three of the Pods have already terminated, and two are in the process of terminating. + +For more information on ReplicaSets, view the [Kubernetes ReplicaSets API documentation](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.13/#replicaset-v1-apps). + +### Deployment + +A *Deployment* can manage a ReplicaSet, so it shares the ability to keep a defined number of replica pods up and running. A Deployment can also update those Pods to resemble the desired state by means of rolling updates. For example, if you wanted to update a container image to a newer version, you would create a Deployment, and the controller would update the container images one by one until the desired state is achieved. This ensures that there is no downtime when updating or altering your Pods. + +Below is an example of a Deployment: + +{{< file "my-apache-deployment.yaml" yaml>}} +apiVersion: apps/v1 +kind: Deployment +metadata: + name: apache-deployment + labels: + app: web +spec: + replicas: 5 + selector: + matchLabels: + app: web + template: + metadata: + labels: + app: web + spec: + containers: + - name: apache-container + image: httpd:2.4.35 +{{}} + +The only noticeable difference between this Deployment and the example given in the ReplicaSet section is the `kind`. In this example we have chosen to initially install Apache 2.4.35. If you wanted to update that image to Apache 2.4.38, you would issue the following command: + + kubectl --record deployment.apps/apache-deployment set image deployment.v1.apps/apache-deployment apache-container=httpd:2.4.38 + +You'll see a confirmation that the images have been updated: + + deployment.apps/apache-deployment image updated + +To see for yourself that the images have updated, you can grab the a Pod name from the `get pods` list: + + kubectl get pods + + NAME READY STATUS RESTARTS AGE + apache-deployment-574c8c4874-8zwgl 1/1 Running 0 8m36s + apache-deployment-574c8c4874-9pr5j 1/1 Running 0 8m36s + apache-deployment-574c8c4874-fbs46 1/1 Running 0 8m34s + apache-deployment-574c8c4874-nn7dl 1/1 Running 0 8m36s + apache-deployment-574c8c4874-pndgp 1/1 Running 0 8m33s + +Issue the `describe` command to view the all of the available details of the Pod: + + kubectl describe pod apache-deployment-574c8c4874-pndgp + +You'll see a long list of details, of which the container image is included: + + .... + + Containers: + apache-container: + Container ID: docker://d7a65e7993ab5bae284f07f59c3ed422222100833b2769ff8ee14f9f384b7b94 + Image: httpd:2.4.38 + + .... + + +For more information on Deployments, visit the [Kubernetes Deployments API documentation](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.13/#deployment-v1-apps) + +### Job + +A *Job* is a controller that manages a Pod that is created for a single, or set, of task. This is handy if you need to create a Pod that performs a single function or calculates a value. The deletion of the Job will delete the Pod. + +Below is an example of a Job that simply prints "Hello World!" and ends: + +{{< file "my-job.yaml" yaml>}} +apiVersion: batch/v1 +kind: Job +metadata: + name: hello-world +spec: + template: + metadata: + name: hello-world + spec: + containers: + - name: output + image: debian + command: + - "bin/bash" + - "-c" + - "echo 'Hello World!'" + restartPolicy: Never +{{}} + +To create the Job, issue the `create` command: + + kubectl create -f my-job.yaml + +To inspect see if the job has run, or is running, issue the `get jobs` command: + + kubectl get jobs + +You should see output like the following: + + NAME COMPLETIONS DURATION AGE + hello-world 1/1 9s 8m23s + +To get the Pod of the job, issue the `get pods` command: + + kubectl get pods + +You should see a output like the following: + + NAME READY STATUS RESTARTS AGE + hello-world-4jzdm 0/1 Completed 0 9m44s + +You can use the name of the Pod to inspect its output by consulting the log file for the Pod: + + kubectl get logs hello-world-4jzdm + +To delete the Job and its Pod, issue the `delete` command: + + kubectl delete job hello-world + +## Networking + +Networking in Kubernetes was designed to make it simple to port existing apps from VMs to containers, and subsequently, Pods. The basic requirements of the Kubernetes networking model are: + +1. Pods can communicate with each other across Nodes without the use of [NAT](https://whatismyipaddress.com/nat). +2. Agents on a Node, like kubelet, can communicate with all of a Node's Pods. +3. In the case of Linux, Pods in a Node's host network can communicate to all other Pods without NAT. + +Though the rules of the Kubernetes networking model are simple, the implementation of those rules is an advanced topic. Because Kubernetes does not come with its own implementation, it is up to the user to provide a networking model. + +Two of the most popular options are [Flannel](https://github.com/coreos/flannel#flannel) and [Calico](https://docs.projectcalico.org/v2.0/getting-started/kubernetes/). Flannel is a networking overlay that meets the functionality of the Kubernetes networking model, and is relatively easy to set up. Calico enables networking and networking policy through the [NetworkPolicy API](https://kubernetes.io/docs/concepts/services-networking/network-policies/) to provide simple, scalable and secure virtual networking. + +For more information on the Kubernetes networking model and ways to implement it, consult the [cluster networking documentation](https://kubernetes.io/docs/concepts/cluster-administration/networking/). + +## Next Steps + +There are a number of advanced topics in Kubernetes. Below are a few you might find useful as you progress in Kubernetes: + +- [StatefulSets](https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/) can be used when creating stateful applications. +- [Horizontal Pod Autoscaling](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) can automatically scale your deployments based on CPU usage. +- [ResourceQuotas](https://kubernetes.io/docs/concepts/policy/resource-quotas/) are helpful when working with larger groups where there is a concern that some teams might take up too many resources. \ No newline at end of file From efa41148d27934d1ec1bb9303297c1f3a54bdbf9 Mon Sep 17 00:00:00 2001 From: Andy Stevens Date: Thu, 21 Mar 2019 11:29:33 -0400 Subject: [PATCH 07/43] Vale fixes --- ci/vale/dictionary.txt | 2 ++ .../beginners-guide-to-kubernetes/index.md | 17 ++++++++--------- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/ci/vale/dictionary.txt b/ci/vale/dictionary.txt index 48fe0c39db0..5642895c4f2 100644 --- a/ci/vale/dictionary.txt +++ b/ci/vale/dictionary.txt @@ -178,6 +178,7 @@ config configs configtest configurability +containerd containerised convolutional cookstyle @@ -1073,6 +1074,7 @@ releasever remi remmina remotehost +replicaset replset repo repos diff --git a/docs/applications/containers/beginners-guide-to-kubernetes/index.md b/docs/applications/containers/beginners-guide-to-kubernetes/index.md index e1cbf3026ff..71fcd51cb93 100644 --- a/docs/applications/containers/beginners-guide-to-kubernetes/index.md +++ b/docs/applications/containers/beginners-guide-to-kubernetes/index.md @@ -1,6 +1,6 @@ --- author: - name: Linode Community + name: Andy Stevens email: docs@linode.com description: 'A high level overview of Kubernetes cluster.' keywords: ['kubernetes','k8s','beginner','architecture'] @@ -17,12 +17,12 @@ external_resources: - '[Kubernetes Concepts Documentation](https://kubernetes.io/docs/concepts/)' --- -*Kubernetes*, often referred to as *k8s*, is an open source container orchestration system that helps deploy and manage containerized applications. Developed by Google starting in 2014 and written in the Go langauge, Kubernetes is quickly becoming the standard way to architect horizontally scalable applications. This guide will explain the major parts and concepts of Kubernetes. +*Kubernetes*, often referred to as *k8s*, is an open source container orchestration system that helps deploy and manage containerized applications. Developed by Google starting in 2014 and written in the Go language, Kubernetes is quickly becoming the standard way to architect horizontally scalable applications. This guide will explain the major parts and concepts of Kubernetes. ## Containers -Kubernetes is a container orechestration tool and therefore needs a container runtime installed to work. In practice the default container runtime for Kubernetes is [Docker](https://www.docker.com/), though other runtimes like [rkt](https://coreos.com/rkt/) and [LXD](https://linuxcontainers.org/lxd/introduction/) will also work. With the advent of the [Container Runtime Interface (CRI)](https://github.com/kubernetes/community/blob/master/contributors/devel/sig-node/container-runtime-interface.md), which hopes to standardize the way Kubernetes interacts with containers, other options like [containerd](https://containerd.io/), [cri-o](https://cri-o.io/), and [Frakti](https://github.com/kubernetes/frakti) have also become available. This guide assumes you have a working knowledge of containers and the examples will all use Docker as the container runtime. +Kubernetes is a container orchestration tool and therefore needs a container runtime installed to work. In practice the default container runtime for Kubernetes is [Docker](https://www.docker.com/), though other runtimes like [rkt](https://coreos.com/rkt/) and [LXD](https://linuxcontainers.org/lxd/introduction/) will also work. With the advent of the [Container Runtime Interface (CRI)](https://github.com/kubernetes/community/blob/master/contributors/devel/sig-node/container-runtime-interface.md), which hopes to standardize the way Kubernetes interacts with containers, other options like [containerd](https://containerd.io/), [cri-o](https://cri-o.io/), and [Frakti](https://github.com/kubernetes/frakti) have also become available. This guide assumes you have a working knowledge of containers and the examples will all use Docker as the container runtime. ## Kubernetes API @@ -51,7 +51,7 @@ The Kubernetes Master is a normally a separate server responsible for maintainin - **kube-controller-manager** is a daemon that manages the Kubernetes control loop. For more on Controllers, see the [Controllers section](#controllers). - **kube-scheduler** is a function that looks for newly created Pods that have no Nodes and assigns them a Node based on a host of requirements. For more information on kube-scheduler, consult the [Kubernetes kube-scheduler documentation](https://kubernetes.io/docs/reference/command-line-tools-reference/kube-scheduler/). -Additionally, the Kubernetes Master runs the database **etcd** (pronounced etsy-dee). etcd is a highly available key-value store that provides the backend database for Kubernetes. +Additionally, the Kubernetes Master runs the database **etcd**. etcd is a highly available key-value store that provides the backend database for Kubernetes. Together kube-apiserver, kube-controller-manager, kube-scheduler, and etcd form what is known as the *control plane*. The control plane is responsible for making decisions about the cluster and pushing it toward the desired state. @@ -136,7 +136,7 @@ To delete the Pod, issue the `delete` command: ### Services -*Services* group identical Pods together to provide a consitent means of accessing them. For instance, you might have three Pods that are all serving a website, and all of those Pods need to be accessible on port 80. A Service can ensure that all of the Pods are accessible at that port, and can load balance traffic between those Pods. Additionally, a Service can allow your application to be accessible from the internet. Each Service is given an IP address and a corresponding local DNS entry. Additionally, Services exist across Nodes. If you have two replica Pods on one Node and an additional replica Pod on another Node, the service can include all three Pods. There are four types of Service: +*Services* group identical Pods together to provide a consistent means of accessing them. For instance, you might have three Pods that are all serving a website, and all of those Pods need to be accessible on port 80. A Service can ensure that all of the Pods are accessible at that port, and can load balance traffic between those Pods. Additionally, a Service can allow your application to be accessible from the internet. Each Service is given an IP address and a corresponding local DNS entry. Additionally, Services exist across Nodes. If you have two replica Pods on one Node and an additional replica Pod on another Node, the service can include all three Pods. There are four types of Service: - **ClusterIP**: exposes the Service internally to the cluster. This is the default setting for a Service. - **NodePort**: exposes the Service to the internet from the IP address of the Node at the specified port number. You can only use ports in the 30000-32767 range. @@ -275,7 +275,7 @@ For more information on Namespaces, visit the [Kubernetes Namespaces API documen ## Controllers -A Controller is a control loop that continiously watchs the Kubernetes API and tries to manage the desired state of certain aspects of the cluster. There are a number of controllers. Below is a short reference of the most popular controllers you might interact with. +A Controller is a control loop that continuously watches the Kubernetes API and tries to manage the desired state of certain aspects of the cluster. There are a number of controllers. Below is a short reference of the most popular controllers you might interact with. ### ReplicaSet @@ -338,9 +338,8 @@ If you issue the `get pods` command, you will see that the Pods the ReplicaSet c NAME READY STATUS RESTARTS AGE apache-replicaset-bm2pn 0/1 Terminating 0 3m54s - apache-replicaset-dthlp 0/1 Terminating 0 3m54s -In the above example, three of the Pods have already terminated, and two are in the process of terminating. +In the above example, four of the Pods have already terminated, and one is in the process of terminating. For more information on ReplicaSets, view the [Kubernetes ReplicaSets API documentation](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.13/#replicaset-v1-apps). @@ -475,7 +474,7 @@ Networking in Kubernetes was designed to make it simple to port existing apps fr Though the rules of the Kubernetes networking model are simple, the implementation of those rules is an advanced topic. Because Kubernetes does not come with its own implementation, it is up to the user to provide a networking model. -Two of the most popular options are [Flannel](https://github.com/coreos/flannel#flannel) and [Calico](https://docs.projectcalico.org/v2.0/getting-started/kubernetes/). Flannel is a networking overlay that meets the functionality of the Kubernetes networking model, and is relatively easy to set up. Calico enables networking and networking policy through the [NetworkPolicy API](https://kubernetes.io/docs/concepts/services-networking/network-policies/) to provide simple, scalable and secure virtual networking. +Two of the most popular options are [Flannel](https://github.com/coreos/flannel#flannel) and [Calico](https://docs.projectcalico.org/v2.0/getting-started/kubernetes/). Flannel is a networking overlay that meets the functionality of the Kubernetes networking model by supplying a layer 3 network fabric, and is relatively easy to set up. Calico enables networking and networking policy through the [NetworkPolicy API](https://kubernetes.io/docs/concepts/services-networking/network-policies/) to provide "simple, scalable and secure virtual networking." Calico is also a layer 3 network fabric. For more information on the Kubernetes networking model and ways to implement it, consult the [cluster networking documentation](https://kubernetes.io/docs/concepts/cluster-administration/networking/). From 16cedc3d38b605407af5cb377833f489d756e36f Mon Sep 17 00:00:00 2001 From: Andy Stevens Date: Thu, 21 Mar 2019 11:34:28 -0400 Subject: [PATCH 08/43] More Vale Fixes --- ci/vale/dictionary.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ci/vale/dictionary.txt b/ci/vale/dictionary.txt index 5642895c4f2..3c0578a1d52 100644 --- a/ci/vale/dictionary.txt +++ b/ci/vale/dictionary.txt @@ -196,6 +196,7 @@ craigslist crashingdaily createdt createfromstackscript +cri cron crond cronie @@ -395,6 +396,7 @@ foodcritic fortran fpm fragging +frakti framesets freedns friendster From 34732cf486847c0f2a9b8b74d12b7471c4d0a0db Mon Sep 17 00:00:00 2001 From: Andy Stevens Date: Thu, 21 Mar 2019 11:48:49 -0400 Subject: [PATCH 09/43] [Update] Use mysqldump to back up mysql or mariadb From a Disqus comment. Add an escape character to the cron job. --- .../mysql/use-mysqldump-to-back-up-mysql-or-mariadb/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/databases/mysql/use-mysqldump-to-back-up-mysql-or-mariadb/index.md b/docs/databases/mysql/use-mysqldump-to-back-up-mysql-or-mariadb/index.md index e4968a74ada..2dcede5d7e4 100644 --- a/docs/databases/mysql/use-mysqldump-to-back-up-mysql-or-mariadb/index.md +++ b/docs/databases/mysql/use-mysqldump-to-back-up-mysql-or-mariadb/index.md @@ -81,7 +81,7 @@ password = MySQL root user's password 3. Create the cron job file. Below is an example cron job to back up the entire database management system every day at 1am: {{< file "/etc/cron.daily/mysqldump" >}} -0 1 * * * /usr/bin/mysqldump --defaults-extra-file=/home/example_user/.my.cnf -u root --single-transaction --quick --lock-tables=false --all-databases > full-backup-$(date +%F).sql +0 1 * * * /usr/bin/mysqldump --defaults-extra-file=/home/example_user/.my.cnf -u root --single-transaction --quick --lock-tables=false --all-databases > full-backup-$(date +\%F).sql {{< /file >}} For more information on cron, see the [cron(8)](https://linux.die.net/man/8/cron) and [cron(5)](https://linux.die.net/man/5/crontab) manual pages. From 0e26a6bcd3012020f22aa694eadaa1b3165bad93 Mon Sep 17 00:00:00 2001 From: Andy Stevens Date: Fri, 22 Mar 2019 06:58:06 -0400 Subject: [PATCH 10/43] Updates Remove reference to NGINX, add Daemonsets and CronJobs to Next Steps. --- .../beginners-guide-to-kubernetes/index.md | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/docs/applications/containers/beginners-guide-to-kubernetes/index.md b/docs/applications/containers/beginners-guide-to-kubernetes/index.md index 71fcd51cb93..304162dee13 100644 --- a/docs/applications/containers/beginners-guide-to-kubernetes/index.md +++ b/docs/applications/containers/beginners-guide-to-kubernetes/index.md @@ -91,9 +91,9 @@ Each manifest has four necessary parts: - Metadata about the resource. - Though not required by all objects, a spec which describes the desired behavior of the resource is necessary for most objects and controllers. -In the case of this example, the API in use is `v1`, and the `kind` is a Pod. The metadata field is used for applying a name, labels, and annotations. Names are used to differentiate resources, while labels are used to group like resources. Labels will come into play more when defining [Services](#services) and [Deployments](#deployment). Annotations are for attaching arbitrary data to the resource. +In the case of this example, the API in use is `v1`, and the `kind` is a Pod. The metadata field is used for applying a name, labels, and annotations. Names are used to differentiate resources, while labels are used to group like resources. Labels will come into play more when defining [Services](#services) and [Deployments](#deployments). Annotations are for attaching arbitrary data to the resource. -The spec is where the desired state of the resource is defined. In this case a Pod with a single NGINX container is desired, so the `containers` field is supplied with a name, 'nginx-container', and an image, the latest version of NGINX. The image is pulled from [Docker Hub](https://hub.docker.com), as that is the default container registry for Kubernetes. +The spec is where the desired state of the resource is defined. In this case a Pod with a single Apache container is desired, so the `containers` field is supplied with a name, 'apache-container', and an image, the latest version of Apache. The image is pulled from [Docker Hub](https://hub.docker.com), as that is the default container registry for Kubernetes. For more information on the type of fields you can supply in a Pod manifest, refer to the [Kubernetes Pod API documentation](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.13/#pod-v1-core). @@ -207,8 +207,8 @@ spec: emptyDir: {} containers: - - name: nginx - image: nginx + - name: apache-container + image: httpd volumeMounts: - name: apache-storage-volume mountPath: /data/apache-data @@ -277,9 +277,9 @@ For more information on Namespaces, visit the [Kubernetes Namespaces API documen A Controller is a control loop that continuously watches the Kubernetes API and tries to manage the desired state of certain aspects of the cluster. There are a number of controllers. Below is a short reference of the most popular controllers you might interact with. -### ReplicaSet +### ReplicaSets -As has been mentioned, Kubernetes allows an application to scale horizontally. A *ReplicaSet* is one of the controllers responsible for keeping a given number of replica Pods running. If one Pod goes down in a ReplicaSet, another will be created to replace it. In this way, Kubernetes is *self-healing*. However, for most use cases it is recommended to use a [Deployment](#deployment) instead of a ReplicaSet. +As has been mentioned, Kubernetes allows an application to scale horizontally. A *ReplicaSet* is one of the controllers responsible for keeping a given number of replica Pods running. If one Pod goes down in a ReplicaSet, another will be created to replace it. In this way, Kubernetes is *self-healing*. However, for most use cases it is recommended to use a [Deployment](#deployments) instead of a ReplicaSet. Below is an example of a ReplicaSet: @@ -343,7 +343,7 @@ In the above example, four of the Pods have already terminated, and one is in th For more information on ReplicaSets, view the [Kubernetes ReplicaSets API documentation](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.13/#replicaset-v1-apps). -### Deployment +### Deployments A *Deployment* can manage a ReplicaSet, so it shares the ability to keep a defined number of replica pods up and running. A Deployment can also update those Pods to resemble the desired state by means of rolling updates. For example, if you wanted to update a container image to a newer version, you would create a Deployment, and the controller would update the container images one by one until the desired state is achieved. This ensures that there is no downtime when updating or altering your Pods. @@ -408,7 +408,7 @@ You'll see a long list of details, of which the container image is included: For more information on Deployments, visit the [Kubernetes Deployments API documentation](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.13/#deployment-v1-apps) -### Job +### Jobs A *Job* is a controller that manages a Pod that is created for a single, or set, of task. This is handy if you need to create a Pod that performs a single function or calculates a value. The deletion of the Job will delete the Pod. @@ -474,7 +474,7 @@ Networking in Kubernetes was designed to make it simple to port existing apps fr Though the rules of the Kubernetes networking model are simple, the implementation of those rules is an advanced topic. Because Kubernetes does not come with its own implementation, it is up to the user to provide a networking model. -Two of the most popular options are [Flannel](https://github.com/coreos/flannel#flannel) and [Calico](https://docs.projectcalico.org/v2.0/getting-started/kubernetes/). Flannel is a networking overlay that meets the functionality of the Kubernetes networking model by supplying a layer 3 network fabric, and is relatively easy to set up. Calico enables networking and networking policy through the [NetworkPolicy API](https://kubernetes.io/docs/concepts/services-networking/network-policies/) to provide "simple, scalable and secure virtual networking." Calico is also a layer 3 network fabric. +Two of the most popular options are [Flannel](https://github.com/coreos/flannel#flannel) and [Calico](https://docs.projectcalico.org/v2.0/getting-started/kubernetes/). Flannel is a networking overlay that meets the functionality of the Kubernetes networking model by supplying a layer 3 network fabric, and is relatively easy to set up. Calico enables networking and networking policy through the [NetworkPolicy API](https://kubernetes.io/docs/concepts/services-networking/network-policies/) to provide simple virtual networking. For more information on the Kubernetes networking model and ways to implement it, consult the [cluster networking documentation](https://kubernetes.io/docs/concepts/cluster-administration/networking/). @@ -483,5 +483,7 @@ For more information on the Kubernetes networking model and ways to implement it There are a number of advanced topics in Kubernetes. Below are a few you might find useful as you progress in Kubernetes: - [StatefulSets](https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/) can be used when creating stateful applications. +- [DaemonSets](https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/) can be used to ensure each Node is running a certain Pod. This is useful for log collection, monitoring, and cluster storage. - [Horizontal Pod Autoscaling](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/) can automatically scale your deployments based on CPU usage. +- [CronJobs](https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/) can schedule [Jobs](#jobs) to run at certain times. - [ResourceQuotas](https://kubernetes.io/docs/concepts/policy/resource-quotas/) are helpful when working with larger groups where there is a concern that some teams might take up too many resources. \ No newline at end of file From a6c7d32199a90d03715e1f59dcb3258bce4c388e Mon Sep 17 00:00:00 2001 From: Andy Stevens Date: Fri, 22 Mar 2019 08:55:32 -0400 Subject: [PATCH 11/43] [Update] How to Install a LEMP Server on Ubuntu 18.04 A Disqus comment suggested we bold the mention of substituting index.html for index.php for WordPress installs to make it more apparent. --- .../lemp/how-to-install-a-lemp-server-on-ubuntu-18-04/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/web-servers/lemp/how-to-install-a-lemp-server-on-ubuntu-18-04/index.md b/docs/web-servers/lemp/how-to-install-a-lemp-server-on-ubuntu-18-04/index.md index e68fe0ea8d1..ea5403c78e2 100644 --- a/docs/web-servers/lemp/how-to-install-a-lemp-server-on-ubuntu-18-04/index.md +++ b/docs/web-servers/lemp/how-to-install-a-lemp-server-on-ubuntu-18-04/index.md @@ -133,7 +133,7 @@ server { - NGINX is listening on port `80` for incoming connections to `example.com` or `www.example.com`. - - The site is served out of `/var/www/html/example.com/public_html` and its index page (`index.html`) is a simple `.html` file. If your index page will use PHP like WordPress does, substitute `index.html` for `index.php`. + - The site is served out of `/var/www/html/example.com/public_html` and its index page (`index.html`) is a simple `.html` file. **If your index page will use PHP like WordPress does, substitute `index.html` for `index.php`.** - `try_files` tells NGINX to verify that a requested file or directory [actually exists](https://nginx.org/en/docs/http/ngx_http_core_module.html#try_files) in the site's root filesystem before further processing the request. If it does not, a `404` is returned. From e7d6e9d54a88e139102117e958a2493783dfa442 Mon Sep 17 00:00:00 2001 From: Faisal Misle Date: Sun, 24 Mar 2019 02:03:12 -0500 Subject: [PATCH 12/43] updated for 18.04 as well as formatting changes --- .../index.md | 51 +++++++++--------- ...box-choose-email-and-domain-ubuntu1804.png | Bin 0 -> 93157 bytes ...il-in-a-box-choose-hostname-ubuntu1804.png | Bin 0 -> 85018 bytes ...il-in-a-box-choose-timezone-ubuntu1804.png | Bin 0 -> 106038 bytes ...-panel-system-status-checks-ubuntu1404.png | Bin 57693 -> 82753 bytes 5 files changed, 27 insertions(+), 24 deletions(-) create mode 100644 docs/email/how-to-create-an-email-server-with-mail-in-a-box/mail-in-a-box-choose-email-and-domain-ubuntu1804.png create mode 100644 docs/email/how-to-create-an-email-server-with-mail-in-a-box/mail-in-a-box-choose-hostname-ubuntu1804.png create mode 100644 docs/email/how-to-create-an-email-server-with-mail-in-a-box/mail-in-a-box-choose-timezone-ubuntu1804.png diff --git a/docs/email/how-to-create-an-email-server-with-mail-in-a-box/index.md b/docs/email/how-to-create-an-email-server-with-mail-in-a-box/index.md index f9c84c19e1c..444403aa829 100644 --- a/docs/email/how-to-create-an-email-server-with-mail-in-a-box/index.md +++ b/docs/email/how-to-create-an-email-server-with-mail-in-a-box/index.md @@ -6,14 +6,15 @@ description: 'This guide shows how to install and run Mail-in-a-Box, a simple, c keywords: ["install mail-in-a-box", "webmail control panel", "caldav", "cardav", " TLS certificate"] license: '[CC BY-ND 4.0](https://creativecommons.org/licenses/by-nd/4.0)' published: 2017-08-29 -modified: 2017-08-30 +modified: 2019-03-19 modified_by: - name: Alexandru Andrei + name: Faisal Misle title: How to Create an Email Server with Mail-in-a-Box contributor: name: Alexandru Andrei external_resources: - '[Mail-in-a-Box Official Website](https://mailinabox.email/)' +- '[Mail-in-a-Box Forums](https://discourse.mailinabox.email/)' --- @@ -21,18 +22,18 @@ external_resources: If you chose to host your own email server, but after reading through [Running a Mail Server](/docs/email/running-a-mail-server/) you got discouraged by the complexity of this process, then there's another solution: Mail-in-a-Box. The name is fitting since the software manages to pack everything you need from a mail server, in one single allegorical box. It includes: -* Postfix, as the Simple Mail Transfer Protocol (SMTP) server. -* Dovecot, as the Internet Message Access Protocol (IMAP) server; it's what allows you to sync mail with your phone, read/send messages, delete them, etc. +* Postfix, as the *Simple Mail Transfer Protocol* (SMTP) server. +* Dovecot, as the *Internet Message Access Protocol* (IMAP) server; it's what allows you to sync mail with your phone, read/send messages, delete them, etc. * CardDAV/CalDAV implemented through Nextcloud (a fork of OwnCloud that includes more features); this enables you to sync your address book and calendar events. * Z-push to implement the Exchange ActiveSync protocol so that mail can be "pushed" to your phone as soon as it arrives on the server. * Roundcube webmail, which helps you manage your email by using a web browser. -* Nsd4 Domain Name System (DNS) server; this saves you the hassle of manually adding DNS entries to configure *Sender Policy Framework* (*SPF*), *DomainKeys Identified Mail* (*DKIM*) and *Domain-based Message Authentication, Reporting and Conformance* (*DMARC*), features used to battle spam on the Internet; properly configured, these increase the likelihood that your server will be seen as "legit" by other servers +* Nsd4 *Domain Name System* (DNS) server; this saves you the hassle of manually adding DNS entries to configure *Sender Policy Framework* (SPF), *DomainKeys Identified Mail* (DKIM) and *Domain-based Message Authentication, Reporting and Conformance* (DMARC), features used to battle spam on the Internet; properly configured, these increase the likelihood that your server will be seen as "legit" by other servers * A backup service * A control panel, also accessible through the web browser, that: * Greets you with a comprehensive system status check that makes you aware of any possible problems with your server and offers advice on how to fix them; * Lets you add or remove mailboxes, change passwords, backup data, change DNS settings; * Does a great job at explaining what each setting does and how it should be used. It also includes examples on how to interact with its *Application Programming Interface* (API) so that you can automate tasks, such as creating a mailbox through your own application/website (e.g., user registers on your website to get an email account) -* And more: if you're interested in the details, you can read about the components here: [Mail-in-a-Box Components](https://github.com/mail-in-a-box/mailinabox#the-box) +* If you're interested in the details, you can read about the components here: [Mail-in-a-Box Components](https://github.com/mail-in-a-box/mailinabox#the-box) The preconfigured box of software is also fairly security-conscious and you can read more about it here: [Security features enabled in Mail-in-a-Box](https://github.com/mail-in-a-box/mailinabox/blob/master/security.md) @@ -44,23 +45,25 @@ The preconfigured box of software is also fairly security-conscious and you can 3. It's highly recommended that you follow the instructions on [Hardening SSH access](/docs/security/securing-your-server/#harden-ssh-access) but **only** the steps regarding SSH; other steps might clash with what Mail-in-a-Box will set up (e.g., it implements its own `fail2ban` rules). -If you insist on using a password for root instead of a private key, at least use a **very good password**. Bots constantly scan the Internet for SSH servers and try random passwords. Some are more aggressive than others, and while `fail2ban` helps block IPs, there's always the next bot (with a different IP) that will visit and have another try. Keep in mind that strings such as "h4x0r123," while they may look strong because they mix letters and numbers, are actually very weak. +If you insist on using a password for root instead of a private key, at least use a **very good password**. Bots constantly scan the Internet for SSH servers and try random passwords. Some are more aggressive than others, and while `fail2ban` helps block IPs, there's always the next bot (with a different IP) that will visit and have another try. Keep in mind that strings such as *h4x0r123*, while they may look strong because they mix letters and numbers, are actually very weak. -4. Wherever you see `example.com` in this tutorial, replace it with your domain name, and leave the prefix as it is. That is, don't change `box` to something else. +{{< note >}} +Wherever you see `example.com` in this tutorial, replace it with your domain name, and leave the prefix as it is. That is, don't change `box` to something else. Also, `203.0.113.1` is used as an example IP; your outputs should reflect your server IP instead. +{{< /note >}} -## Launch Ubuntu 14.04 Server +## Launch Ubuntu 18.04 Server {{< caution >}} Use this server exclusively for Mail-in-a-Box. Installing extra software might cause unexpected behavior. {{< /caution >}} -Although Ubuntu 16.04 is available, Mail-in-a-Box has not been prepared or tested in that environment so you'll need to use the 14.04 release which still receives security fixes until April 2019. - Choose a server with at least 1GB of RAM. If you plan to host many users (mailboxes) and/or expect a high volume of email traffic, you can start out with 2GB or more. Don't forget to boot the server. +Make sure you select Ubuntu 18.04 as the *Operating System* (OS), as starting with version 0.40 only Ubuntu 18.04 is supported. + ## Configure Your Domain Name -You'll have to check with the company where you've registered your domain name to see how you can change your nameservers and add glue records. Either search for this information on Google, the site's knowledge base, or ask their support to help you. +You'll have to check with your registrar, the company where you've registered your domain name, to see how you can change your nameservers and add glue records. Either search for this information on Google, the site's knowledge base, or ask their support to help you. Here's what you'll need to do: @@ -74,7 +77,7 @@ Here's what you'll need to do: ns1.box.example.com 203.0.113.1 ns2.box.example.com 203.0.113.1 -You might have noticed you're using the same IP in both entries. There are a few registrars that have a problem with this, so in case you're unlucky, you won't be able to save these settings and will have to contact their support team. +You might have noticed you're using the same IP in both entries. There are a few registrars that have a problem with this, so in case you're unlucky, you won't be able to save these settings and will have to contact their support team. Alternatively, you can skip using your box as a DNS host, and keep your registrar's DNS host. You will find all the needed records in the **System -> External DNS** tab of the administration console, once you've completed installation. Also note that some registrars may only require you to enter `ns1.box` as they autocomplete the rest of your hostname, `.example.com`. Carefully examine the page to see which variant you should use. @@ -110,31 +113,31 @@ If you notice a reboot is needed (usually when the Linux kernel is upgraded), ty curl -s https://mailinabox.email/setup.sh | sudo bash -It will start to download software and after a while greet you with a *Text User Interface* (*TUI*), which is a way to present a more user-friendly install wizard under the limitations of a terminal. You can navigate the menus with the arrow keys and simply press `ENTER` to make the desired selections. +It will start to download software and after a while greet you with a *Text User Interface* (TUI), which is a way to present a more user-friendly install wizard under the limitations of a terminal. You can navigate the menus with the arrow keys and simply press `ENTER` to make the desired selections. -Every step is thoroughly explained in the terminal output. The first steps are easy to follow. But here are the more interesting ones: +Every step is thoroughly explained in the terminal output. ### Install Wizard Steps 1. When you're prompted to choose an email address, delete the pre-filled value and replace it with `your_name`@example.com. You can replace `your_name` with whatever you desire, as long as it's a valid username. - ![Choose Main Email Address and Domain](mail-in-a-box-choose-email-and-domain-ubuntu1404.png) + ![Choose Main Email Address and Domain](mail-in-a-box-choose-email-and-domain-ubuntu1804.png) 2. In the next step, the hostname should look like this: - ![Choose Hostname](mail-in-a-box-choose-hostname-ubuntu1404.png) + ![Choose Hostname](mail-in-a-box-choose-hostname-ubuntu1804.png) Now, the install wizard should continue to download and configure software packages. Just wait for it to do its magic. 3. At the next step, you'll be prompted to choose your timezone. Use the arrow keys to make the desired selection and press `ENTER`. - ![Choose Timezone](mail-in-a-box-choosing-timezone-ubuntu1404.png) + ![Choose Timezone](mail-in-a-box-choose-timezone-ubuntu1804.png) Once again, Mail-in-a-Box will continue to pull in required packages and auto-configure them. Wait for it to finish, it will take longer this time. -4. When package auto-configuration is complete, you'll be prompted to install a *Transport Layer Security* (*TLS*) certificate. If Let's Encrypt cannot verify that you own your domain (i.e., DNS changes haven't yet propagated to its servers), then this step will be automatically skipped, but you can still request your certificate later from the control panel of Mail-in-a-Box. +4. When it finishes installing the packages, the script will prompt you to choose a password for the administrative account. Choose a good password since this is the most powerful account that can make any change in the control panel. This will also be the password to the email account you set up in Step 1. -5. At the next step, you'll choose a password for the administrative account. Choose a good password since this is the most powerful account that can make any change in the control panel. +5. When package auto-configuration is complete, you'll be prompted to install a *Transport Layer Security* (TLS) certificate. If Let's Encrypt cannot verify that you own your domain (i.e., DNS changes haven't yet propagated to its servers), then this step will be automatically skipped, but you can still request your certificate later from the control panel of Mail-in-a-Box. 6. At this point the script has finished its job and you'll be prompted with this message in the terminal output: @@ -173,19 +176,19 @@ Since it's very likely that a Let's Encrypt TLS certificate hasn't been installe dig example.com - When you see this in the output, `203.0.113.1` (the IP address of your server), you can continue; otherwise try again later: + When you see your server IP in the A record, you can continue; otherwise try again later. ;; ANSWER SECTION: example.com. 1724 IN A 203.0.113.1 -2. In the top-left menu you'll notice an element called **System**. Click on it and then select **TLS (SSL) Certificates**. Now click on the blue button that says **Provision** and follow the instructions. +2. In the top-left menu you'll notice an element called **System**. Click on it and then select **TLS (SSL) Certificates**. Now click on the blue button that says **Provision** and within a few minutes the certificate status should change to **Signed & valid**. ![Control Panel - TLS Certificates Page](mail-in-a-box-control-panel-tls-certificates-ubuntu1404.png) -3. Follow this guide, [How to Configure Reverse DNS on a Linode Server](/docs/networking/dns/configure-your-linode-for-reverse-dns/), to set up a pointer record (PTR). This step is important to execute and pass some antispam checks. Without it, some of the other mail servers will flag your outbound email as spam or will consider it suspicious that your IP doesn't point to your domain name. +3. Follow this guide, [How to Configure Reverse DNS on a Linode Server](/docs/networking/dns/configure-your-linode-for-reverse-dns/), to set up a *pointer record* (PTR). Make sure you set it to `box.example.com`. This step is very important to execute and pass some antispam checks. Without it, a lot of mail servers will flag your outbound email as spam, will consider it suspicious that your IP doesn't point to your domain name and sometimes even reject it. ## Conclusion -As you can see, it's very convenient when everything for an email server is packaged in one place and automagically configured. But convenience often has a price. Mail-in-a-box's centralization - that makes it easy to manage everything - also creates a single point of failure. There is a safety net though: email servers are intelligent enough to retry sending you their data for a few days, in case your server is unavailable. +As you can see, it's very convenient when everything for an email server is packaged in one place and automagically configured. But convenience often has a price. Mail-in-a-box's centralization - that makes it easy to manage everything - also creates a single point of failure. There is a safety net though: email servers are intelligent enough to retry sending you their data for a few days, in case your server is unavailable. But if you can't afford the delay, you should look at ways to make your setup more reliable. A beginner friendly approach is to set up a monitoring system that will notify you quickly in case of problems. Later on, you can look into secondary (slave) nameservers, secondary MX entries, cloning and syncing Mail-in-a-Box machines, so they can take over in case of failure and floating IPs. diff --git a/docs/email/how-to-create-an-email-server-with-mail-in-a-box/mail-in-a-box-choose-email-and-domain-ubuntu1804.png b/docs/email/how-to-create-an-email-server-with-mail-in-a-box/mail-in-a-box-choose-email-and-domain-ubuntu1804.png new file mode 100644 index 0000000000000000000000000000000000000000..1580d5f2e275ec2c86f0dbf39c272dd9f784f438 GIT binary patch literal 93157 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%0DMOqiDobT0r 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 H^uYT+sW8Z6 literal 0 HcmV?d00001 diff --git a/docs/email/how-to-create-an-email-server-with-mail-in-a-box/mail-in-a-box-choose-hostname-ubuntu1804.png b/docs/email/how-to-create-an-email-server-with-mail-in-a-box/mail-in-a-box-choose-hostname-ubuntu1804.png new file mode 100644 index 0000000000000000000000000000000000000000..c69c02e28cc1923ce59a76b6a78b4709d84077eb GIT binary patch literal 85018 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

IguMyyVd=Ev}h%?sIqc0?y!H^dD-9dO?W*KOcZ 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

{EEc-s~Bpm3%hsg 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Π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 MG`efyXN>Ru1vv6FQvd(} literal 0 HcmV?d00001 diff --git a/docs/email/how-to-create-an-email-server-with-mail-in-a-box/mail-in-a-box-control-panel-system-status-checks-ubuntu1404.png b/docs/email/how-to-create-an-email-server-with-mail-in-a-box/mail-in-a-box-control-panel-system-status-checks-ubuntu1404.png index 93f1ce04647523aae4f2acc1030a346e42f5a4b9..b40e30cd76a1404932810dff93cd6475fa9d969b 100644 GIT binary patch literal 82753 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 literal 57693 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 From 26ae8a9f1b9ed4090db8f632cc5c022ca1415b43 Mon Sep 17 00:00:00 2001 From: Faisal Misle Date: Sun, 24 Mar 2019 02:36:30 -0500 Subject: [PATCH 13/43] trimming trailing spaces --- .../index.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/email/how-to-create-an-email-server-with-mail-in-a-box/index.md b/docs/email/how-to-create-an-email-server-with-mail-in-a-box/index.md index 444403aa829..305399d0ec4 100644 --- a/docs/email/how-to-create-an-email-server-with-mail-in-a-box/index.md +++ b/docs/email/how-to-create-an-email-server-with-mail-in-a-box/index.md @@ -77,7 +77,7 @@ Here's what you'll need to do: ns1.box.example.com 203.0.113.1 ns2.box.example.com 203.0.113.1 -You might have noticed you're using the same IP in both entries. There are a few registrars that have a problem with this, so in case you're unlucky, you won't be able to save these settings and will have to contact their support team. Alternatively, you can skip using your box as a DNS host, and keep your registrar's DNS host. You will find all the needed records in the **System -> External DNS** tab of the administration console, once you've completed installation. +You might have noticed you're using the same IP in both entries. There are a few registrars that have a problem with this, so in case you're unlucky, you won't be able to save these settings and will have to contact their support team. Alternatively, you can skip using your box as a DNS host, and keep your registrar's DNS host. You will find all the needed records in the **System -> External DNS** tab of the administration console, once you've completed installation. Also note that some registrars may only require you to enter `ns1.box` as they autocomplete the rest of your hostname, `.example.com`. Carefully examine the page to see which variant you should use. @@ -115,7 +115,7 @@ If you notice a reboot is needed (usually when the Linux kernel is upgraded), ty It will start to download software and after a while greet you with a *Text User Interface* (TUI), which is a way to present a more user-friendly install wizard under the limitations of a terminal. You can navigate the menus with the arrow keys and simply press `ENTER` to make the desired selections. -Every step is thoroughly explained in the terminal output. +Every step is thoroughly explained in the terminal output. ### Install Wizard Steps @@ -185,7 +185,7 @@ Since it's very likely that a Let's Encrypt TLS certificate hasn't been installe ![Control Panel - TLS Certificates Page](mail-in-a-box-control-panel-tls-certificates-ubuntu1404.png) -3. Follow this guide, [How to Configure Reverse DNS on a Linode Server](/docs/networking/dns/configure-your-linode-for-reverse-dns/), to set up a *pointer record* (PTR). Make sure you set it to `box.example.com`. This step is very important to execute and pass some antispam checks. Without it, a lot of mail servers will flag your outbound email as spam, will consider it suspicious that your IP doesn't point to your domain name and sometimes even reject it. +3. Follow this guide, [How to Configure Reverse DNS on a Linode Server](/docs/networking/dns/configure-your-linode-for-reverse-dns/), to set up a *pointer record* (PTR). Make sure you set it to `box.example.com`. This step is very important to execute and pass some antispam checks. Without it, a lot of mail servers will flag your outbound email as spam, will consider it suspicious that your IP doesn't point to your domain name and sometimes even reject it. ## Conclusion From 0b6e7ab7b534f9ecefb6f130324c68808b473a39 Mon Sep 17 00:00:00 2001 From: Bo Date: Tue, 26 Mar 2019 10:23:01 -0400 Subject: [PATCH 14/43] Changed Linode images introductory paragraph to better reflect some limitations when created images from a Linode. --- docs/platform/disk-images/linode-images/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/platform/disk-images/linode-images/index.md b/docs/platform/disk-images/linode-images/index.md index 6c220f26266..e69356b92ed 100644 --- a/docs/platform/disk-images/linode-images/index.md +++ b/docs/platform/disk-images/linode-images/index.md @@ -16,7 +16,7 @@ classic_manager_link: platform/disk-images/linode-images-classic-manager/ ![Linode Images](linode-images.jpg) -*Linode Images* allows you to take snapshots of your disks, and then deploy them to any Linode under your account. This can be useful for bootstrapping a master image for a large deployment, or retaining a disk for a configuration that you may not need running, but wish to return to in the future. Linode Images will be retained whether or not you have an active Linode on your account, which also makes them useful for long term storage of a private template that you may need in the future. There is no additional charge to store Images for Linode users, with a limit of 2GB per Image and 3 Images per account. +*Linode Images* allows you to take snapshots of your disks, and then deploy them to any Linode under your account. This can be useful for bootstrapping a master image for a large deployment, or retaining a disk for a configuration that you may not need running, but wish to return to in the future. Linode Images will be retained whether or not you have an active Linode on your account, which also makes them useful for long term storage of a private template that you may need in the future. There is no additional charge to store Images for Linode users. Images are limited to 2GB per Image and 3 Images per account. Additionally, images can only be created on disks with ext3 or ext4 filesystems with a single partition. {{< note >}} When saving a Linode image, it is the aspects of the Linode that are on the **disk** that are saved, not any additional aspects such as IP addresses, fully qualified domain names, and MAC addresses. From df2d49bafbda13797da48ef5b33e6ccf6fd2f47e Mon Sep 17 00:00:00 2001 From: rdaniels Date: Wed, 27 Mar 2019 13:29:57 -0400 Subject: [PATCH 15/43] Copy edit --- .../beginners-guide-to-kubernetes/index.md | 62 +++++++++---------- 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/docs/applications/containers/beginners-guide-to-kubernetes/index.md b/docs/applications/containers/beginners-guide-to-kubernetes/index.md index 304162dee13..0127e71fecc 100644 --- a/docs/applications/containers/beginners-guide-to-kubernetes/index.md +++ b/docs/applications/containers/beginners-guide-to-kubernetes/index.md @@ -17,16 +17,16 @@ external_resources: - '[Kubernetes Concepts Documentation](https://kubernetes.io/docs/concepts/)' --- -*Kubernetes*, often referred to as *k8s*, is an open source container orchestration system that helps deploy and manage containerized applications. Developed by Google starting in 2014 and written in the Go language, Kubernetes is quickly becoming the standard way to architect horizontally scalable applications. This guide will explain the major parts and concepts of Kubernetes. +*Kubernetes*, often referred to as *k8s*, is an open source container orchestration system that helps deploy and manage containerized applications. Developed by Google starting in 2014 and written in the Go language, Kubernetes is quickly becoming the standard way to architect horizontally-scalable applications. This guide will explain the major parts and concepts of Kubernetes. ## Containers -Kubernetes is a container orchestration tool and therefore needs a container runtime installed to work. In practice the default container runtime for Kubernetes is [Docker](https://www.docker.com/), though other runtimes like [rkt](https://coreos.com/rkt/) and [LXD](https://linuxcontainers.org/lxd/introduction/) will also work. With the advent of the [Container Runtime Interface (CRI)](https://github.com/kubernetes/community/blob/master/contributors/devel/sig-node/container-runtime-interface.md), which hopes to standardize the way Kubernetes interacts with containers, other options like [containerd](https://containerd.io/), [cri-o](https://cri-o.io/), and [Frakti](https://github.com/kubernetes/frakti) have also become available. This guide assumes you have a working knowledge of containers and the examples will all use Docker as the container runtime. +Kubernetes is a container orchestration tool and, therefore, needs a container runtime installed to work. In practice, the default container runtime for Kubernetes is [Docker](https://www.docker.com/), though other runtimes like [rkt](https://coreos.com/rkt/), and [LXD](https://linuxcontainers.org/lxd/introduction/) will also work. With the advent of the [Container Runtime Interface (CRI)](https://github.com/kubernetes/community/blob/master/contributors/devel/sig-node/container-runtime-interface.md), which hopes to standardize the way Kubernetes interacts with containers, other options like [containerd](https://containerd.io/), [cri-o](https://cri-o.io/), and [Frakti](https://github.com/kubernetes/frakti) have also become available. This guide assumes you have a working knowledge of containers and the examples will all use Docker as the container runtime. ## Kubernetes API -Kubernetes is built around a robust RESTful API. Every action taken in Kubernetes, be it inter-component communication or user command, interacts in some fashion with the Kubernetes API. The goal of the API is to help facilitate the desired state of the Kubernetes cluster. If you want X instances of your application running and have Y currently active, the API will take the required steps to get to X, whether this means creating or destroying resources. To create this desired state, you create *objects*, which are normally represented by YAML files called *manifests*, and apply them through the command line with the **kubectl** tool. +Kubernetes is built around a robust RESTful API. Every action taken in Kubernetes, be it inter-component communication or user command, interacts in some fashion with the Kubernetes API. The goal of the API is to help facilitate the desired state of the Kubernetes cluster. If you want X instances of your application running and have Y currently active, the API will take the required steps to get to X, whether this means creating, or destroying resources. To create this desired state, you create *objects*, which are normally represented by YAML files called *manifests*, and apply them through the command line with the **kubectl** tool. ## kubectl @@ -34,38 +34,38 @@ kubectl is a command line tool used to interact with the Kubernetes cluster. It ## Kubernetes Master, Nodes, and Control Plane -At the highest level of Kubernetes there exist two kinds of servers, a *Master* and a *Node*. These servers can be Linodes, VMs, or physical servers. Together, these servers form a *cluster*. +At the highest level of Kubernetes, there exist two kinds of servers, a *Master* and a *Node*. These servers can be Linodes, VMs, or physical servers. Together, these servers form a *cluster*. ### Nodes Kubernetes Nodes are worker servers that run your application. The number of Nodes is determined by the user, and they are created by the user. In addition to running your application, each Node runs two processes: -- **kubelet** receives PodSpec files that describe the desired state of a [Pod](#pods) from the API server, and ensures the Pods that those files represent are healthy and running on the Node. -- **kube-proxy** is a networking proxy that proxies the UDP, TCP and SCTP networking of each Node, and provides load balancing. This is only used to connect to [Services](#services). +- **kubelet** receives PodSpec files that describe the desired state of a [Pod](#pods) from the API server, and ensures the Pods that those files represented are healthy, and running on the Node. +- **kube-proxy** is a networking proxy that proxies the UDP, TCP, and SCTP networking of each Node, and provides load balancing. This is only used to connect to [Services](#services). ### Kubernetes Master -The Kubernetes Master is a normally a separate server responsible for maintaining the desired state of the cluster by telling the Nodes how many instances of your application it should run and where. The Kubernetes Master runs three processes: +The Kubernetes Master is normally a separate server responsible for maintaining the desired state of the cluster. It does this by telling the Nodes how many instances of your application it should run and where. The Kubernetes Master runs three processes: - **kube-apiserver** is the front end for the Kubernetes API server. - **kube-controller-manager** is a daemon that manages the Kubernetes control loop. For more on Controllers, see the [Controllers section](#controllers). -- **kube-scheduler** is a function that looks for newly created Pods that have no Nodes and assigns them a Node based on a host of requirements. For more information on kube-scheduler, consult the [Kubernetes kube-scheduler documentation](https://kubernetes.io/docs/reference/command-line-tools-reference/kube-scheduler/). +- **kube-scheduler** is a function that looks for newly created Pods that have no Nodes, and assigns them a Node based on a host of requirements. For more information on kube-scheduler, consult the [Kubernetes kube-scheduler documentation](https://kubernetes.io/docs/reference/command-line-tools-reference/kube-scheduler/). -Additionally, the Kubernetes Master runs the database **etcd**. etcd is a highly available key-value store that provides the backend database for Kubernetes. +Additionally, the Kubernetes Master runs the database **etcd**. Etcd is a highly available key-value store that provides the backend database for Kubernetes. -Together kube-apiserver, kube-controller-manager, kube-scheduler, and etcd form what is known as the *control plane*. The control plane is responsible for making decisions about the cluster and pushing it toward the desired state. +Together, kube-apiserver, kube-controller-manager, kube-scheduler, and etcd form what is known as the *control plane*. The control plane is responsible for making decisions about the cluster, and pushing it toward the desired state. ## Kubernetes Objects -In Kubernetes there are a number of objects that are abstractions of your Kubernetes system's desired state. These objects represent your application, its networking, and disk resources -- all of which together form your application. +In Kubernetes, there are a number of objects that are abstractions of your Kubernetes system's desired state. These objects represent your application, its networking, and disk resources -- all of which together form your application. ### Pods -In Kubernetes all containers exist within *Pods*. Pods are the smallest unit of the Kubernetes architecture, and can be viewed as a kind of wrapper for your container. Each Pod is given its own IP address with which it can interact with other Pods within the cluster. +In Kubernetes, all containers exist within *Pods*. Pods are the smallest unit of the Kubernetes architecture, and can be viewed as a kind of wrapper for your container. Each Pod is given its own IP address with which it can interact with other Pods within the cluster. -Usually a Pod contains only one container, but a Pod can contain multiple containers if those containers need to share resources. If there is more than one container in a Pod, these containers can communicate with one another via localhost. +Usually, a Pod contains only one container, but a Pod can contain multiple containers if those containers need to share resources. If there is more than one container in a Pod, these containers can communicate with one another via localhost. -Pods in Kubernetes are "mortal," which means that they are created and destroyed depending on the needs of the application. For instance, you might have a web app backend that sees a spike in CPU usage. This might cause the cluster to scale up the amount of backend Pods from two to ten, in which case eight new Pods would be created. Once the traffic subsides, the Pods might scale back to two, in which case eight pods would be destroyed. +Pods in Kubernetes are "mortal," which means that they are created, and destroyed depending on the needs of the application. For instance, you might have a web app backend that sees a spike in CPU usage. This might cause the cluster to scale up the amount of backend Pods from two to ten, in which case eight new Pods would be created. Once the traffic subsides, the Pods might scale back to two, in which case eight pods would be destroyed. It is important to note that Pods are destroyed without respect to which Pod was created first. And, while each Pod has its own IP address, this IP address will only be available for the life-cycle of the Pod. @@ -86,14 +86,14 @@ spec: Each manifest has four necessary parts: -- The version of the API in use. -- The kind of resource you'd like to define. -- Metadata about the resource. +- The version of the API in use +- The kind of resource you'd like to define +- Metadata about the resource - Though not required by all objects, a spec which describes the desired behavior of the resource is necessary for most objects and controllers. In the case of this example, the API in use is `v1`, and the `kind` is a Pod. The metadata field is used for applying a name, labels, and annotations. Names are used to differentiate resources, while labels are used to group like resources. Labels will come into play more when defining [Services](#services) and [Deployments](#deployments). Annotations are for attaching arbitrary data to the resource. -The spec is where the desired state of the resource is defined. In this case a Pod with a single Apache container is desired, so the `containers` field is supplied with a name, 'apache-container', and an image, the latest version of Apache. The image is pulled from [Docker Hub](https://hub.docker.com), as that is the default container registry for Kubernetes. +The spec is where the desired state of the resource is defined. In this case, a Pod with a single Apache container is desired, so the `containers` field is supplied with a name, 'apache-container', and an image, the latest version of Apache. The image is pulled from [Docker Hub](https://hub.docker.com), as that is the default container registry for Kubernetes. For more information on the type of fields you can supply in a Pod manifest, refer to the [Kubernetes Pod API documentation](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.13/#pod-v1-core). @@ -138,10 +138,10 @@ To delete the Pod, issue the `delete` command: *Services* group identical Pods together to provide a consistent means of accessing them. For instance, you might have three Pods that are all serving a website, and all of those Pods need to be accessible on port 80. A Service can ensure that all of the Pods are accessible at that port, and can load balance traffic between those Pods. Additionally, a Service can allow your application to be accessible from the internet. Each Service is given an IP address and a corresponding local DNS entry. Additionally, Services exist across Nodes. If you have two replica Pods on one Node and an additional replica Pod on another Node, the service can include all three Pods. There are four types of Service: -- **ClusterIP**: exposes the Service internally to the cluster. This is the default setting for a Service. -- **NodePort**: exposes the Service to the internet from the IP address of the Node at the specified port number. You can only use ports in the 30000-32767 range. -- **LoadBalancer**: this will create a load balancer assigned to a fixed IP address in the cloud, so long as the cloud provider supports it. In the case of Linode, this is the responsibility of the [Linode Cloud Controller Manager](https://github.com/linode/linode-cloud-controller-manager), which will create a NodeBalancer for the cluster. This is the best way to expose your cluster to the internet. -- **ExternalName**: maps the service to a DNS name by returning a CNAME record redirect. ExternalName is good for directing traffic to outside resources, such as a database that is hosted on another cloud. +- **ClusterIP**: Exposes the Service internally to the cluster. This is the default setting for a Service. +- **NodePort**: Exposes the Service to the internet from the IP address of the Node at the specified port number. You can only use ports in the 30000-32767 range. +- **LoadBalancer**: This will create a load balancer assigned to a fixed IP address in the cloud, so long as the cloud provider supports it. In the case of Linode, this is the responsibility of the [Linode Cloud Controller Manager](https://github.com/linode/linode-cloud-controller-manager), which will create a NodeBalancer for the cluster. This is the best way to expose your cluster to the internet. +- **ExternalName**: Maps the service to a DNS name by returning a CNAME record redirect. ExternalName is good for directing traffic to outside resources, such as a database that is hosted on another cloud. Below is an example of a Service manifest: @@ -379,7 +379,7 @@ You'll see a confirmation that the images have been updated: deployment.apps/apache-deployment image updated -To see for yourself that the images have updated, you can grab the a Pod name from the `get pods` list: +To see for yourself that the images have updated, you can grab the Pod name from the `get pods` list: kubectl get pods @@ -410,7 +410,7 @@ For more information on Deployments, visit the [Kubernetes Deployments API docum ### Jobs -A *Job* is a controller that manages a Pod that is created for a single, or set, of task. This is handy if you need to create a Pod that performs a single function or calculates a value. The deletion of the Job will delete the Pod. +A *Job* is a controller that manages a Pod that is created for a single, or set, of task. This is handy if you need to create a Pod that performs a single function, or calculates a value. The deletion of the Job will delete the Pod. Below is an example of a Job that simply prints "Hello World!" and ends: @@ -438,7 +438,7 @@ To create the Job, issue the `create` command: kubectl create -f my-job.yaml -To inspect see if the job has run, or is running, issue the `get jobs` command: +To see if the job has run, or is running, issue the `get jobs` command: kubectl get jobs @@ -447,7 +447,7 @@ You should see output like the following: NAME COMPLETIONS DURATION AGE hello-world 1/1 9s 8m23s -To get the Pod of the job, issue the `get pods` command: +To get the Pod of the Job, issue the `get pods` command: kubectl get pods @@ -460,7 +460,7 @@ You can use the name of the Pod to inspect its output by consulting the log file kubectl get logs hello-world-4jzdm -To delete the Job and its Pod, issue the `delete` command: +To delete the Job, and its Pod, issue the `delete` command: kubectl delete job hello-world @@ -468,15 +468,15 @@ To delete the Job and its Pod, issue the `delete` command: Networking in Kubernetes was designed to make it simple to port existing apps from VMs to containers, and subsequently, Pods. The basic requirements of the Kubernetes networking model are: -1. Pods can communicate with each other across Nodes without the use of [NAT](https://whatismyipaddress.com/nat). -2. Agents on a Node, like kubelet, can communicate with all of a Node's Pods. +1. Pods can communicate with each other across Nodes without the use of [NAT](https://whatismyipaddress.com/nat) +2. Agents on a Node, like kubelet, can communicate with all of a Node's Pods 3. In the case of Linux, Pods in a Node's host network can communicate to all other Pods without NAT. Though the rules of the Kubernetes networking model are simple, the implementation of those rules is an advanced topic. Because Kubernetes does not come with its own implementation, it is up to the user to provide a networking model. -Two of the most popular options are [Flannel](https://github.com/coreos/flannel#flannel) and [Calico](https://docs.projectcalico.org/v2.0/getting-started/kubernetes/). Flannel is a networking overlay that meets the functionality of the Kubernetes networking model by supplying a layer 3 network fabric, and is relatively easy to set up. Calico enables networking and networking policy through the [NetworkPolicy API](https://kubernetes.io/docs/concepts/services-networking/network-policies/) to provide simple virtual networking. +Two of the most popular options are [Flannel](https://github.com/coreos/flannel#flannel) and [Calico](https://docs.projectcalico.org/v2.0/getting-started/kubernetes/). Flannel is a networking overlay that meets the functionality of the Kubernetes networking model by supplying a layer 3 network fabric, and is relatively easy to set up. Calico enables networking, and networking policy through the [NetworkPolicy API](https://kubernetes.io/docs/concepts/services-networking/network-policies/) to provide simple virtual networking. -For more information on the Kubernetes networking model and ways to implement it, consult the [cluster networking documentation](https://kubernetes.io/docs/concepts/cluster-administration/networking/). +For more information on the Kubernetes networking model, and ways to implement it, consult the [cluster networking documentation](https://kubernetes.io/docs/concepts/cluster-administration/networking/). ## Next Steps From f89f0700b0348d103ed06749c044cbf450099965 Mon Sep 17 00:00:00 2001 From: rdaniels Date: Wed, 27 Mar 2019 14:38:46 -0400 Subject: [PATCH 16/43] Copy edit --- .../index.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/email/how-to-create-an-email-server-with-mail-in-a-box/index.md b/docs/email/how-to-create-an-email-server-with-mail-in-a-box/index.md index 305399d0ec4..35099c3726a 100644 --- a/docs/email/how-to-create-an-email-server-with-mail-in-a-box/index.md +++ b/docs/email/how-to-create-an-email-server-with-mail-in-a-box/index.md @@ -63,7 +63,7 @@ Make sure you select Ubuntu 18.04 as the *Operating System* (OS), as starting wi ## Configure Your Domain Name -You'll have to check with your registrar, the company where you've registered your domain name, to see how you can change your nameservers and add glue records. Either search for this information on Google, the site's knowledge base, or ask their support to help you. +You'll have to check with your registrar, the company where you've registered your domain name with, to see how you can change your nameservers, and add glue records. Either search for this information on Google, the site's knowledge base, or ask their support to help you. Here's what you'll need to do: @@ -185,10 +185,10 @@ Since it's very likely that a Let's Encrypt TLS certificate hasn't been installe ![Control Panel - TLS Certificates Page](mail-in-a-box-control-panel-tls-certificates-ubuntu1404.png) -3. Follow this guide, [How to Configure Reverse DNS on a Linode Server](/docs/networking/dns/configure-your-linode-for-reverse-dns/), to set up a *pointer record* (PTR). Make sure you set it to `box.example.com`. This step is very important to execute and pass some antispam checks. Without it, a lot of mail servers will flag your outbound email as spam, will consider it suspicious that your IP doesn't point to your domain name and sometimes even reject it. +3. Follow this guide, [How to Configure Reverse DNS on a Linode Server](/docs/networking/dns/configure-your-linode-for-reverse-dns/), to set up a *pointer record* (PTR). Make sure you set it to `box.example.com`. This step is very important to execute and pass some antispam checks. Without it, a lot of mail servers will flag your outbound email as spam, will consider it suspicious that your IP doesn't point to your domain name, and sometimes even reject it. ## Conclusion -As you can see, it's very convenient when everything for an email server is packaged in one place and automagically configured. But convenience often has a price. Mail-in-a-box's centralization - that makes it easy to manage everything - also creates a single point of failure. There is a safety net though: email servers are intelligent enough to retry sending you their data for a few days, in case your server is unavailable. +As you can see, it's very convenient when everything for an email server is packaged in one place, and automagically configured. But convenience often has a price. Mail-in-a-box's centralization - that makes it easy to manage everything - also creates a single point of failure. There is a safety net though: email servers are intelligent enough to retry sending you their data for a few days, in case your server is unavailable. -But if you can't afford the delay, you should look at ways to make your setup more reliable. A beginner friendly approach is to set up a monitoring system that will notify you quickly in case of problems. Later on, you can look into secondary (slave) nameservers, secondary MX entries, cloning and syncing Mail-in-a-Box machines, so they can take over in case of failure and floating IPs. +But if you can't afford the delay, you should look at ways to make your setup more reliable. A beginner friendly approach is to set up a monitoring system that will notify you quickly in case of problems. Later on, you can look into secondary (slave) nameservers, secondary MX entries, cloning and syncing Mail-in-a-Box machines, so they can take over in case of failure, and floating IPs. From 47dac6bc57e530d17d2a9fc669374f5fda833c1f Mon Sep 17 00:00:00 2001 From: Zhen Tian Date: Tue, 16 Apr 2019 23:40:43 +0800 Subject: [PATCH 17/43] typo https protocol --- docs/platform/tokyo2-migration/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/platform/tokyo2-migration/index.md b/docs/platform/tokyo2-migration/index.md index 2f6308af8e0..df9c377551d 100644 --- a/docs/platform/tokyo2-migration/index.md +++ b/docs/platform/tokyo2-migration/index.md @@ -25,7 +25,7 @@ The Tokyo 2 data center provides access to features that are not available in To ## When will My Linodes be Migrated? -The [Linode Classic Manager](https://http://manager.linode.com) will display the scheduled dates and times for the migrations of your Tokyo 1 Linodes. If you visit the Classic Manager before this schedule is set by Linode, the information will not be displayed. +The [Linode Classic Manager](https://manager.linode.com) will display the scheduled dates and times for the migrations of your Tokyo 1 Linodes. If you visit the Classic Manager before this schedule is set by Linode, the information will not be displayed. When your migration schedule first becomes visible in the Classic Manager, you will receive a support ticket from Linode to let you know. This ticket will be sent to you at least two months in advance of the start of your first migration. Your different Linodes will be scheduled to migrate on different dates and times. **Linode will not be able to adjust this schedule of migrations.** @@ -143,4 +143,4 @@ Having a short TTL means that your users will be directed to your new IP address ## Contact Linode Support -If you have any issues when migrating or cloning to Tokyo 2, or if you have any questions about this process, please [contact Linode Support](/docs/platform/billing-and-support/support/#contacting-linode-support). Technical questions about your Linux deployment's configuration are often outside the scope of support. For any out-of-scope issues, we also recommend searching and asking technical questions in the [Linode Community Site](/community/questions/). \ No newline at end of file +If you have any issues when migrating or cloning to Tokyo 2, or if you have any questions about this process, please [contact Linode Support](/docs/platform/billing-and-support/support/#contacting-linode-support). Technical questions about your Linux deployment's configuration are often outside the scope of support. For any out-of-scope issues, we also recommend searching and asking technical questions in the [Linode Community Site](/community/questions/). From 618d38cf4c787f6c1efece57351bb826c2171ef2 Mon Sep 17 00:00:00 2001 From: Andy Stevens Date: Wed, 17 Apr 2019 10:45:30 -0400 Subject: [PATCH 18/43] More grammar fixes --- .../containers/beginners-guide-to-kubernetes/index.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/applications/containers/beginners-guide-to-kubernetes/index.md b/docs/applications/containers/beginners-guide-to-kubernetes/index.md index 0127e71fecc..520652c1f21 100644 --- a/docs/applications/containers/beginners-guide-to-kubernetes/index.md +++ b/docs/applications/containers/beginners-guide-to-kubernetes/index.md @@ -40,7 +40,7 @@ At the highest level of Kubernetes, there exist two kinds of servers, a *Master* Kubernetes Nodes are worker servers that run your application. The number of Nodes is determined by the user, and they are created by the user. In addition to running your application, each Node runs two processes: -- **kubelet** receives PodSpec files that describe the desired state of a [Pod](#pods) from the API server, and ensures the Pods that those files represented are healthy, and running on the Node. +- **kubelet** receives descriptions of the desired state of a [Pod](#pods) from the API server, and ensures the Pod is healthy, and running on the Node. - **kube-proxy** is a networking proxy that proxies the UDP, TCP, and SCTP networking of each Node, and provides load balancing. This is only used to connect to [Services](#services). ### Kubernetes Master @@ -221,7 +221,7 @@ There are a number of different Volume types you could create in addition to `em ### Namespaces -Namespaces are virtual clusters that exist within the Kubernetes cluster that help to group and organize objects. Every cluster has at least three namespaces: `default`, `kube-system`, and `kube-public`. When interacting with the cluster it is important to know which Namespace the object your are looking for is in, as many commands will default to only showing you what exists in the `default` namespace. Resources created without an explicit namespace will be added to the `default` namespace. +Namespaces are virtual clusters that exist within the Kubernetes cluster that help to group and organize objects. Every cluster has at least three namespaces: `default`, `kube-system`, and `kube-public`. When interacting with the cluster it is important to know which Namespace the object you are looking for is in, as many commands will default to only showing you what exists in the `default` namespace. Resources created without an explicit namespace will be added to the `default` namespace. Namespaces consist of alphanumeric characters, dashes (`-`), and periods (`.`). @@ -390,7 +390,7 @@ To see for yourself that the images have updated, you can grab the Pod name from apache-deployment-574c8c4874-nn7dl 1/1 Running 0 8m36s apache-deployment-574c8c4874-pndgp 1/1 Running 0 8m33s -Issue the `describe` command to view the all of the available details of the Pod: +Issue the `describe` command to view all of the available details of the Pod: kubectl describe pod apache-deployment-574c8c4874-pndgp @@ -410,7 +410,7 @@ For more information on Deployments, visit the [Kubernetes Deployments API docum ### Jobs -A *Job* is a controller that manages a Pod that is created for a single, or set, of task. This is handy if you need to create a Pod that performs a single function, or calculates a value. The deletion of the Job will delete the Pod. +A *Job* is a controller that manages a Pod that is created for a single, or set, of tasks. This is handy if you need to create a Pod that performs a single function, or calculates a value. The deletion of the Job will delete the Pod. Below is an example of a Job that simply prints "Hello World!" and ends: @@ -451,7 +451,7 @@ To get the Pod of the Job, issue the `get pods` command: kubectl get pods -You should see a output like the following: +You should see an output like the following: NAME READY STATUS RESTARTS AGE hello-world-4jzdm 0/1 Completed 0 9m44s From 118ec2e522f88d36c80463d1df1c9db7d9f83927 Mon Sep 17 00:00:00 2001 From: evinjenioso Date: Wed, 17 Apr 2019 16:40:40 -0400 Subject: [PATCH 19/43] Added note for additional /etc/fstab flags --- .../index.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/docs/platform/block-storage/how-to-use-block-storage-with-your-linode/index.md b/docs/platform/block-storage/how-to-use-block-storage-with-your-linode/index.md index cc3fbb4c7d0..2760443e9cb 100644 --- a/docs/platform/block-storage/how-to-use-block-storage-with-your-linode/index.md +++ b/docs/platform/block-storage/how-to-use-block-storage-with-your-linode/index.md @@ -70,6 +70,19 @@ There is currently a soft limit of 100 TB of Block Storage Volume per account. FILE_SYSTEM_PATH /mnt/BlockStorage1 ext4 defaults 0 2 + +{{< note >}} +If you plan on detaching the volume regularly or moving it between other Linodes, you may want to consider adding the flags `noatime` and `nofail` to the **/etc/fstab** entry. + +* `noatime` - This will save space and time by preventing writes made to the filesystem for data being read on the volume. +* `nofail` - If the volume is not attached, this will allow your server to boot/reboot normally without hanging at dependency failures if the volume is not attached. + +Example: + + FILE_SYSTEM_PATH /mnt/BlockStorage1 ext4 defaults,noatime,nofail 0 2 + +{{}} + ### Attach a Volume from Your Account's Volume List 1. Click on the **Volumes** link in the sidebar to see your account's Volume list: From 61c43881cab2653d0832e366e4d374377c16e3ad Mon Sep 17 00:00:00 2001 From: evinjenioso Date: Wed, 17 Apr 2019 16:50:03 -0400 Subject: [PATCH 20/43] fixed indent --- .../how-to-use-block-storage-with-your-linode/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/platform/block-storage/how-to-use-block-storage-with-your-linode/index.md b/docs/platform/block-storage/how-to-use-block-storage-with-your-linode/index.md index 2760443e9cb..aa7a0f6c431 100644 --- a/docs/platform/block-storage/how-to-use-block-storage-with-your-linode/index.md +++ b/docs/platform/block-storage/how-to-use-block-storage-with-your-linode/index.md @@ -71,7 +71,7 @@ There is currently a soft limit of 100 TB of Block Storage Volume per account. FILE_SYSTEM_PATH /mnt/BlockStorage1 ext4 defaults 0 2 -{{< note >}} + {{< note >}} If you plan on detaching the volume regularly or moving it between other Linodes, you may want to consider adding the flags `noatime` and `nofail` to the **/etc/fstab** entry. * `noatime` - This will save space and time by preventing writes made to the filesystem for data being read on the volume. @@ -81,7 +81,7 @@ Example: FILE_SYSTEM_PATH /mnt/BlockStorage1 ext4 defaults,noatime,nofail 0 2 -{{}} + {{}} ### Attach a Volume from Your Account's Volume List From 8bd604a6484d49f66d82560b172906fb55bbfad8 Mon Sep 17 00:00:00 2001 From: evinjenioso Date: Wed, 17 Apr 2019 16:55:04 -0400 Subject: [PATCH 21/43] removed trailing whitespace --- .../how-to-use-block-storage-with-your-linode/index.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/platform/block-storage/how-to-use-block-storage-with-your-linode/index.md b/docs/platform/block-storage/how-to-use-block-storage-with-your-linode/index.md index aa7a0f6c431..97dcfd64f7d 100644 --- a/docs/platform/block-storage/how-to-use-block-storage-with-your-linode/index.md +++ b/docs/platform/block-storage/how-to-use-block-storage-with-your-linode/index.md @@ -72,13 +72,13 @@ There is currently a soft limit of 100 TB of Block Storage Volume per account. {{< note >}} -If you plan on detaching the volume regularly or moving it between other Linodes, you may want to consider adding the flags `noatime` and `nofail` to the **/etc/fstab** entry. +If you plan on detaching the volume regularly or moving it between other Linodes, you may want to consider adding the flags `noatime` and `nofail` to the **/etc/fstab** entry. -* `noatime` - This will save space and time by preventing writes made to the filesystem for data being read on the volume. +* `noatime` - This will save space and time by preventing writes made to the filesystem for data being read on the volume. * `nofail` - If the volume is not attached, this will allow your server to boot/reboot normally without hanging at dependency failures if the volume is not attached. Example: - + FILE_SYSTEM_PATH /mnt/BlockStorage1 ext4 defaults,noatime,nofail 0 2 {{}} From 950ff4b64c60c3119309644e801526e993bd7e38 Mon Sep 17 00:00:00 2001 From: leslitagordita Date: Mon, 22 Apr 2019 15:29:05 -0400 Subject: [PATCH 22/43] Add IPv6 transfer quota info --- .../billing-and-support/network-transfer-quota/index.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/platform/billing-and-support/network-transfer-quota/index.md b/docs/platform/billing-and-support/network-transfer-quota/index.md index f08d3a32cb5..af2e0be5cb6 100644 --- a/docs/platform/billing-and-support/network-transfer-quota/index.md +++ b/docs/platform/billing-and-support/network-transfer-quota/index.md @@ -39,6 +39,10 @@ The transfer quota only considers traffic on your Linodes' public addresses. Tra All inbound traffic to your Linodes is free and will not count against your quota--only traffic that your Linodes emit on their public addresses is counted. +{{< note >}} +Linode does not offer private IPv6 address allocations. Our IPv6 accounting was designed so that local IPv6 traffic does not count against your transfer quota, so you can use your default IPv6 address as if it were a private IP address. +{{}} + ## Transfer Resets, Proration, and Overages Your transfer quota is reset at the beginning of each month. From 010dac9d9af17a95f00d4ac89ff0aef88c626d5d Mon Sep 17 00:00:00 2001 From: Andy Stevens Date: Wed, 24 Apr 2019 14:47:53 -0400 Subject: [PATCH 23/43] [Update] How to Upgrade to Ubuntu 18.04 LTS Removed `-d` flag from `do-release-upgrade` command and explanation. --- docs/security/upgrading/upgrade-to-ubuntu-18-04/index.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/security/upgrading/upgrade-to-ubuntu-18-04/index.md b/docs/security/upgrading/upgrade-to-ubuntu-18-04/index.md index 08f06fa5123..65fa86ae9a5 100644 --- a/docs/security/upgrading/upgrade-to-ubuntu-18-04/index.md +++ b/docs/security/upgrading/upgrade-to-ubuntu-18-04/index.md @@ -103,13 +103,13 @@ Prompt=lts {{< /file >}} -3. You're now ready to begin the upgrade to Ubuntu 18.04 LTS. Since Ubuntu encourages upgrades for LTS distributions to `.1` (like `18.04.1`), use the `-d` option to force it to recognize the new version: +1. You're now ready to begin the upgrade to Ubuntu 18.04 LTS. - do-release-upgrade -d + do-release-upgrade Follow the on-screen instructions to complete the installation process. -4. Because Linode offers internal package mirrors for Ubuntu, you may see some combination of the following messages: +2. Because Linode offers internal package mirrors for Ubuntu, you may see some combination of the following messages: * **No valid mirror found** From 876d24e49da0b16871ac5b317ce70184f3fb720c Mon Sep 17 00:00:00 2001 From: Andy Stevens Date: Thu, 25 Apr 2019 08:53:27 -0400 Subject: [PATCH 24/43] [Update] Getting Started with the Linode API Update Cloud and Classic versions of the guide to correct links to the API documentation. --- .../index.md | 10 +++++----- .../getting-started-with-the-linode-api/index.md | 14 +++++++------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/docs/platform/api/getting-started-with-the-linode-api-classic-manager/index.md b/docs/platform/api/getting-started-with-the-linode-api-classic-manager/index.md index 4f6a8683c73..f42cd96eaff 100644 --- a/docs/platform/api/getting-started-with-the-linode-api-classic-manager/index.md +++ b/docs/platform/api/getting-started-with-the-linode-api-classic-manager/index.md @@ -12,7 +12,7 @@ modified_by: published: 2018-04-03 title: Getting Started with the Linode API external_resources: - - '[API Documentation](https://developers.linode.com/v4/introduction)' + - '[API Documentation](https://developers.linode.com/api/v4/)' - '[Linode CLI](https://github.com/linode/linode-cli)' - '[Linode API Python Library](https://github.com/linode/python-linode-api)' cloud_manager_link: platform/api/getting-started-with-the-linode-api/ @@ -35,10 +35,10 @@ This guide will help you get set up to run this example. Note that if you run th Only authorized users can add Linodes and make changes to your account, and each request must be authenticated with an access token. -The easiest way to get a token is through the [beta Linode Manager](https://cloud.linode.com). +The easiest way to get a token is through the [Linode Cloud Manager](https://cloud.linode.com). {{< note >}} -If you are building an application which will need to authenticate multiple users (for example, a custom interface to Linode's infrastructure for your organization), you can set up an [OAuth authentication flow](https://developers.linode.com/v4/access) to generate tokens for each user. +If you are building an application which will need to authenticate multiple users (for example, a custom interface to Linode's infrastructure for your organization), you can set up an [OAuth authentication flow](https://developers.linode.com/api/v4/) to generate tokens for each user. {{< /note >}} ### Create an API Token @@ -133,7 +133,7 @@ If you prefer a smaller number of items per page, you can override the default v ### Filter Results -The API also supports filtering lists of results. Filters are passed using the `X-Filter` header and use JSON format. You can filter on almost any field that appears in a response object and the [API documentation](https://developers.linode.com/v4/introduction) specifies which fields are filterable. +The API also supports filtering lists of results. Filters are passed using the `X-Filter` header and use JSON format. You can filter on almost any field that appears in a response object and the [API documentation](https://developers.linode.com/api/v4/) specifies which fields are filterable. The following query uses the `deprecated` and `vendor` fields to return all current Debian images: @@ -177,4 +177,4 @@ More complex searches are possible through the use of logical operators. Use `or curl https://api.linode.com/v4/images/ -H "{"+or": [{"vendor":"Debian"}, {"vendor":"Ubuntu"}]}" -See the [Linode API documentation](https://developers.linode.com/v4/filtering) for a full list of supported operators. +See the [Linode API documentation](https://developers.linode.com/api/v4/) for a full list of supported operators. diff --git a/docs/platform/api/getting-started-with-the-linode-api/index.md b/docs/platform/api/getting-started-with-the-linode-api/index.md index 95dc8edfa63..62fbe1db056 100644 --- a/docs/platform/api/getting-started-with-the-linode-api/index.md +++ b/docs/platform/api/getting-started-with-the-linode-api/index.md @@ -12,7 +12,7 @@ modified_by: published: 2018-04-03 title: Getting Started with the Linode API external_resources: - - '[API Documentation](https://developers.linode.com/v4/introduction)' + - '[API Documentation](https://developers.linode.com/api/v4/introduction)' - '[Linode CLI](https://github.com/linode/linode-cli)' - '[Linode API Python Library](https://github.com/linode/python-linode-api)' aliases: ['platform/api/getting-started-with-the-linode-api-new-manager/'] @@ -38,22 +38,22 @@ Only authorized users can add Linodes and make changes to your account, and each The easiest way to get a token is through the [Cloud Manager](https://cloud.linode.com). {{< note >}} -If you are building an application which will need to authenticate multiple users (for example, a custom interface to Linode's infrastructure for your organization), you can set up an [OAuth authentication flow](https://developers.linode.com/v4/access) to generate tokens for each user. +If you are building an application which will need to authenticate multiple users (for example, a custom interface to Linode's infrastructure for your organization), you can set up an [OAuth authentication flow](https://developers.linode.com/api/v4/) to generate tokens for each user. {{< /note >}} ### Create an API Token 1. Log in to the Cloud Manager. -1. Click on your username at the top of the screen and select **My Profile**. +2. Click on your username at the top of the screen and select **My Profile**. ![Select My Profile.](get-started-with-linode-api-select-my-profile.png "Select My Profile.") -1. Select the **API Tokens** tab: +3. Select the **API Tokens** tab: ![Select API Tokens tab in My Profile Settings.](get-started-with-linode-api-my-profile-small.png "Select the API Tokens tab in My Profile Settings.") -1. Click on **Add a Personal Access Token** and choose the access rights you want users authenticated with the new token to have. +4. Click on **Add a Personal Access Token** and choose the access rights you want users authenticated with the new token to have. ![Add a Personal Access Token](get-started-with-linode-api-new-token.png "Add a Personal Access Token") @@ -143,7 +143,7 @@ If you prefer a smaller number of items per page, you can override the default v ### Filter Results -The API also supports filtering lists of results. Filters are passed using the `X-Filter` header and use JSON format. You can filter on almost any field that appears in a response object and the [API documentation](https://developers.linode.com/v4/introduction) specifies which fields are filterable. +The API also supports filtering lists of results. Filters are passed using the `X-Filter` header and use JSON format. You can filter on almost any field that appears in a response object and the [API documentation](https://developers.linode.com/api/v4/) specifies which fields are filterable. The following query uses the `deprecated` and `vendor` fields to return all current Debian images: @@ -187,4 +187,4 @@ More complex searches are possible through the use of logical operators. Use `or curl https://api.linode.com/v4/images/ -H "{"+or": [{"vendor":"Debian"}, {"vendor":"Ubuntu"}]}" -See the [Linode API documentation](https://developers.linode.com/v4/filtering) for a full list of supported operators. +See the [Linode API documentation](https://developers.linode.com/api/v4/) for a full list of supported operators. From 99bcbd85ab24be5bd7bfcc4962855576844641da Mon Sep 17 00:00:00 2001 From: "Andrew R. M" Date: Thu, 25 Apr 2019 16:59:14 +0000 Subject: [PATCH 25/43] Update NixOS guide for 19.03 --- .../custom-kernels-distros/install-nixos-on-linode/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/tools-reference/custom-kernels-distros/install-nixos-on-linode/index.md b/docs/tools-reference/custom-kernels-distros/install-nixos-on-linode/index.md index 218e49b55f3..deae533603e 100644 --- a/docs/tools-reference/custom-kernels-distros/install-nixos-on-linode/index.md +++ b/docs/tools-reference/custom-kernels-distros/install-nixos-on-linode/index.md @@ -8,7 +8,7 @@ keywords: ["custom distro", "NixOS", "advanced Linux", "kvm"] license: '[CC BY-ND 4.0](https://creativecommons.org/licenses/by-nd/4.0)' modified_by: name: Andrew Miller -modified: 2018-10-29 +modified: 2019-04-25 title: Install and Configure NixOS on a Linode external_resources: - '[NixOS](https://nixos.org/nixos/manual/)' @@ -64,7 +64,7 @@ The [NixOS manual](https://nixos.org/nixos/manual/) is the main reference for Ni In your browser, navigate to the [NixOS download page](https://nixos.org/nixos/download.html) and copy the URL from the **Minimal installation CD, 64-bit Intel/AMD** link. -[Boot your Linode into rescue mode](/docs/troubleshooting/rescue-and-rebuild#booting-into-rescue-mode) with the installer disk mounted as `/dev/sda`. Once in rescue mode, run the following command, replacing the URL with the latest 64-bit minimal installation image copied from the [NixOS download page](https://nixos.org/nixos/download.html). This example installs NixOS 18.09: +[Boot your Linode into rescue mode](/docs/troubleshooting/rescue-and-rebuild#booting-into-rescue-mode) with the installer disk mounted as `/dev/sda`. Once in rescue mode, run the following command, replacing the URL with the latest 64-bit minimal installation image copied from the [NixOS download page](https://nixos.org/nixos/download.html). This example installs NixOS 19.03: # Bind the URL you grabbed from the download page to a bash variable iso= From eaabb9782113c7e9891c8db32b41daf05029c4e3 Mon Sep 17 00:00:00 2001 From: Ryan Syracuse Date: Thu, 25 Apr 2019 16:38:27 -0400 Subject: [PATCH 26/43] Added IP Swap Note --- docs/platform/disk-images/clone-your-linode/index.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/platform/disk-images/clone-your-linode/index.md b/docs/platform/disk-images/clone-your-linode/index.md index 27acbefa0d7..0499aebd76c 100644 --- a/docs/platform/disk-images/clone-your-linode/index.md +++ b/docs/platform/disk-images/clone-your-linode/index.md @@ -46,3 +46,7 @@ You will not be able to choose a plan for your clone that is smaller than the pl 1. The cloning process will begin. Depending on the size of your Linode, it may take some time. You will see a status bar above the Linode you cloned with the percentage of completion. 1. While your Linode is being cloned, your new clone will appear on the Linodes page in a powered off state. Once the cloning process is complete you will need to manually power on your new Linode. + + {{< note >}} + You may want to swap your IP address from the Linode you originally created to your cloned Linode in order to have your clone function over the network without making any configuration changes. To complete this, you'd just need to follow this [guide](/docs/platform/manager/remote-access/#swapping-ip-addresses). +{{}} From e0ecea5a017bad581947df2eb81fe71731539c73 Mon Sep 17 00:00:00 2001 From: Ryan Syracuse Date: Fri, 26 Apr 2019 16:38:42 -0400 Subject: [PATCH 27/43] Added raw disk caveat --- .../disk-images/linode-images-classic-manager/index.md | 3 ++- docs/platform/disk-images/linode-images/index.md | 3 +-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/platform/disk-images/linode-images-classic-manager/index.md b/docs/platform/disk-images/linode-images-classic-manager/index.md index 08fe4007b8b..7e93b750ea1 100644 --- a/docs/platform/disk-images/linode-images-classic-manager/index.md +++ b/docs/platform/disk-images/linode-images-classic-manager/index.md @@ -45,7 +45,8 @@ While an image can be captured while your Linode is running, we would recommend [![Host Job Queue](host-job-queue.png)](host-job-queue.png) {{< note >}} -Linode Images are limited to 2048MB of data per disk. You will need to ensure that data within your disk does not exceed this size limit. +Linode Images are limited to 2048MB of data per disk. You will need to ensure that data within your disk does not exceed this size limit. Additionally, Linode Images cannot be created if you are using raw disks or disks that have been formatted using custom filesystems. + {{< /note >}} Once the job in the host queue has completed, your Linode's disk has been captured and stored. diff --git a/docs/platform/disk-images/linode-images/index.md b/docs/platform/disk-images/linode-images/index.md index 6c220f26266..1ceef9b1107 100644 --- a/docs/platform/disk-images/linode-images/index.md +++ b/docs/platform/disk-images/linode-images/index.md @@ -43,8 +43,7 @@ While an image can be captured while your Linode is running, we would recommend ![Image creation status under the bell notifications.](images-image-being-created.png "Image creation status under the bell notifications.") {{< note >}} -Linode Images are limited to 2048MB of data per disk. You will need to ensure that data within your disk does not exceed this size limit. -{{< /note >}} +Linode Images are limited to 2048MB of data per disk. You will need to ensure that data within your disk does not exceed this size limit. Additionally, Linode Images cannot be created if you are using raw disks or disks that have been formatted using custom filesystems. {{< /note >}} Once the job has completed, your Linode's disk has been captured and stored. From 9fad986d84056058fc4676c138d3f9a2bc130331 Mon Sep 17 00:00:00 2001 From: Ryan Syracuse Date: Tue, 30 Apr 2019 15:21:47 -0400 Subject: [PATCH 28/43] Added e2fsck -f step --- .../how-to-use-block-storage-with-your-linode/index.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/docs/platform/block-storage/how-to-use-block-storage-with-your-linode/index.md b/docs/platform/block-storage/how-to-use-block-storage-with-your-linode/index.md index cc3fbb4c7d0..62ddc5e4cb9 100644 --- a/docs/platform/block-storage/how-to-use-block-storage-with-your-linode/index.md +++ b/docs/platform/block-storage/how-to-use-block-storage-with-your-linode/index.md @@ -172,11 +172,15 @@ Storage Volumes **cannot** be sized down, only up. Keep this in mind when sizing umount /dev/disk/by-id/scsi-0Linode_Volume_BlockStorage1 -1. Assuming you have an ext2, ext3, or ext4 partition, resize it to fill the new Volume size: +1. Assuming you have an ext2, ext3, or ext4 partition,first run a file system check: + + e2fsck -f /dev/disk/by-id/scsi-0Linode_Volume_BlockStorage1 + +1. Then resize it to fill the new Volume size: resize2fs /dev/disk/by-id/scsi-0Linode_Volume_BlockStorage1 -1. Mount it back onto the filesystem: +1. Mount your volume back onto the filesystem: mount /dev/disk/by-id/scsi-0Linode_Volume_BlockStorage1 /mnt/BlockStorage1 From 41697ca06d81846f5215210794efb5ea654728f8 Mon Sep 17 00:00:00 2001 From: Ryan Syracuse Date: Wed, 1 May 2019 11:18:40 -0400 Subject: [PATCH 29/43] mailinabox ubuntu18 --- .../index.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/email/how-to-create-an-email-server-with-mail-in-a-box/index.md b/docs/email/how-to-create-an-email-server-with-mail-in-a-box/index.md index 35099c3726a..9f5b4acb2c8 100644 --- a/docs/email/how-to-create-an-email-server-with-mail-in-a-box/index.md +++ b/docs/email/how-to-create-an-email-server-with-mail-in-a-box/index.md @@ -63,7 +63,7 @@ Make sure you select Ubuntu 18.04 as the *Operating System* (OS), as starting wi ## Configure Your Domain Name -You'll have to check with your registrar, the company where you've registered your domain name with, to see how you can change your nameservers, and add glue records. Either search for this information on Google, the site's knowledge base, or ask their support to help you. +You'll have to check with your registrar, the company where you've registered your domain name with, to see how you can change your nameservers and add glue records. Either search for this information on Google, the site's knowledge base, or ask their support to help you. Here's what you'll need to do: @@ -77,7 +77,7 @@ Here's what you'll need to do: ns1.box.example.com 203.0.113.1 ns2.box.example.com 203.0.113.1 -You might have noticed you're using the same IP in both entries. There are a few registrars that have a problem with this, so in case you're unlucky, you won't be able to save these settings and will have to contact their support team. Alternatively, you can skip using your box as a DNS host, and keep your registrar's DNS host. You will find all the needed records in the **System -> External DNS** tab of the administration console, once you've completed installation. +You might have noticed you're using the same IP in both entries. There are a few registrars that have a problem with this, so you may not be able to save these settings and will have to contact their support team. Alternatively, you can skip using your box as a DNS host, and keep your registrar's DNS host. You will find all the needed records in the **System -> External DNS** tab of the administration console, once you've completed installation. Also note that some registrars may only require you to enter `ns1.box` as they autocomplete the rest of your hostname, `.example.com`. Carefully examine the page to see which variant you should use. @@ -93,7 +93,7 @@ You should see your nameservers at the end of the output: example.com. 300 IN NS ns2.box.example.com. dig: couldn't get address for 'ns1.box.example.com': no more -At this point you can continue. If you don't see the required data, then come back later and check - again. If after one hour it's still missing, then contact your registrar's support team. +At this point you can continue. If you don't see the required data, then come back later and check again. If after one hour it's still missing, then contact your registrar's support team. ## Install Mail-in-a-Box @@ -185,10 +185,10 @@ Since it's very likely that a Let's Encrypt TLS certificate hasn't been installe ![Control Panel - TLS Certificates Page](mail-in-a-box-control-panel-tls-certificates-ubuntu1404.png) -3. Follow this guide, [How to Configure Reverse DNS on a Linode Server](/docs/networking/dns/configure-your-linode-for-reverse-dns/), to set up a *pointer record* (PTR). Make sure you set it to `box.example.com`. This step is very important to execute and pass some antispam checks. Without it, a lot of mail servers will flag your outbound email as spam, will consider it suspicious that your IP doesn't point to your domain name, and sometimes even reject it. +3. Follow this guide, [How to Configure Reverse DNS on a Linode Server](/docs/networking/dns/configure-your-linode-for-reverse-dns/), to set up a *pointer record* (PTR). Make sure you set it to `box.example.com`. This step is very important to execute and pass some antispam checks. Without it, a lot of mail servers will flag your outbound email as spam and will consider it suspicious that your IP doesn't point to your domain name, and sometimes even reject it. ## Conclusion -As you can see, it's very convenient when everything for an email server is packaged in one place, and automagically configured. But convenience often has a price. Mail-in-a-box's centralization - that makes it easy to manage everything - also creates a single point of failure. There is a safety net though: email servers are intelligent enough to retry sending you their data for a few days, in case your server is unavailable. +As you can see, it's very convenient when everything for an email server is packaged in one place and automatically configured. But convenience often has a price. Mail-in-a-box's centralization - that makes it easy to manage everything - also creates a single point of failure. There is a safety net though: email servers are intelligent enough to retry sending you their data for a few days, in case your server is unavailable. -But if you can't afford the delay, you should look at ways to make your setup more reliable. A beginner friendly approach is to set up a monitoring system that will notify you quickly in case of problems. Later on, you can look into secondary (slave) nameservers, secondary MX entries, cloning and syncing Mail-in-a-Box machines, so they can take over in case of failure, and floating IPs. +If you can't afford the delay, you should look at ways to make your setup more reliable. A beginner friendly approach is to set up a monitoring system that will notify you quickly in case of problems. Later on, you can look into secondary (slave) nameservers, secondary MX entries, cloning and syncing Mail-in-a-Box machines, and floating IPs. From bc4c02b3300e8c6d9f677331916c3f10378178c4 Mon Sep 17 00:00:00 2001 From: Ryan Syracuse Date: Wed, 1 May 2019 15:17:51 -0400 Subject: [PATCH 30/43] New find files image --- .../find-files-title.jpg | Bin 324943 -> 1430668 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/tools-reference/tools/find-files-in-linux-using-the-command-line/find-files-title.jpg b/docs/tools-reference/tools/find-files-in-linux-using-the-command-line/find-files-title.jpg index 359a2dcf5d670d3ce51948bb198cc3474d6a9c65..920d03bb6c4aa211f9bda1458ed251a188025e43 100644 GIT binary patch literal 1430668 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