Jump to content

Ubuntu Server All-In-One


Recommended Posts

It's time to focus on the most popular Linux distro.

I've shared the following repositories on GitHub:

  • Optimizing Ubuntu 22.04 for Low Latency and High Performance
    • This guide will walk you through the steps for optimizing your Ubuntu 22.04 system for low latency and high performance.
      • The optimizations aim to improve the performance of a Linux-based system by modifying various network settings. Some of the changes include increasing the maximum number of open file descriptors, increasing the maximum number of processes, enabling TCP time-wait reuse, adjusting TCP keepalive time, setting the local port range for TCP connections, and increasing the maximum number of allowed concurrent network connections. Additionally, the values for the system's network buffer sizes are also increased to improve network performance. The optimizations aim to improve the system's overall stability and responsiveness in handling high network traffic.
  • MariaDB installation and optimization on Ubuntu
    • This guide explains how to install and optimize MariaDB on Ubuntu
      • Checking if the script is run as root
      • Checking if the script has been run before
      • Updating package lists and upgrading packages
      • Installing MariaDB if it's not already installed
      • Prompting the user to select an optimization level (either to use up to 50% of total RAM and CPU, or up to 100% if MariaDB is the sole service on the server)
      • Backing up the original MariaDB configuration file
      • Calculating hardware-based settings (based on total memory and CPU cores)
      • Configuring MariaDB performance settings based on the chosen optimization level and hardware
      • Restarting the MariaDB service if the user agrees
  • MariaDB Management Script for Ubuntu
    • This shell script provides a simple way to manage MariaDB on Ubuntu 22.04 or newer.
      • Creating, deleting, and flushing MariaDB users.
      • Creating, deleting, and updating databases.
      • Importing and exporting SQL files.
  • Webmin Installation Guide for Ubuntu Server 22.04
    • Webmin is a web-based system administration tool for Unix/Linux systems that allows users to manage their system resources and services through a web interface. It provides a graphical user interface (GUI) for many common administrative tasks and simplifies the management of a Linux system for both novice and experienced users.
      • System configuration: Webmin provides a GUI for configuring many aspects of your system, including network settings, user accounts, system services, and hardware settings.
      • Package management: Webmin makes it easy to manage software packages on your system. You can view and install available packages, update installed packages, and configure package repositories.
      • Server management: Webmin supports a variety of server applications, including Apache, MySQL, and PostgreSQL. You can configure server settings, manage virtual hosts and databases, and view server logs.
      • File management: Webmin includes a file manager that allows you to browse and manage files on your system, including copying, moving, and deleting files.
      • Monitoring: Webmin provides real-time monitoring of system resources such as CPU usage, memory usage, and disk space. You can also set up alerts to be notified when resource usage exceeds specified thresholds.
      • Security: Webmin includes a variety of security features, including SSL/TLS encryption for web traffic, authentication and authorization for user accounts, and firewall configuration.

 

Your feedback is welcome.

 

Edited by Trance
  • Like 2
  • Thanks 1
  • Upvote 2
Link to comment
Share on other sites

have small problems when try to apply this setings to ubuntu server 22.04:

 

:~# echo 2000000 > /sys/module/nf_conntrack/parameters/hashsize
-bash: /sys/module/nf_conntrack/parameters/hashsize: No such file or directory

:~# echo 0 > /proc/sys/net/netfilter/nf_conntrack_helper
-bash: /proc/sys/net/netfilter/nf_conntrack_helper: No such file or directory

 

and after use sysctl -p

 

sysctl: cannot stat /proc/sys/net/netfilter/nf_conntrack_tcp_loose: No such file or directory

sysctl: cannot stat /proc/sys/net/netfilter/nf_conntrack_max: No such file or directory

sysctl: setting key "net.ipv4.tcp_rmem": Invalid argument
sysctl: setting key "net.ipv4.tcp_wmem": Invalid argument

Link to comment
Share on other sites

47 minutes ago, Cz3siek said:

have small problems when try to apply this setings to ubuntu server 22.04:

 

:~# echo 2000000 > /sys/module/nf_conntrack/parameters/hashsize
-bash: /sys/module/nf_conntrack/parameters/hashsize: No such file or directory

:~# echo 0 > /proc/sys/net/netfilter/nf_conntrack_helper
-bash: /proc/sys/net/netfilter/nf_conntrack_helper: No such file or directory

 

and after use sysctl -p

 

sysctl: cannot stat /proc/sys/net/netfilter/nf_conntrack_tcp_loose: No such file or directory

sysctl: cannot stat /proc/sys/net/netfilter/nf_conntrack_max: No such file or directory

sysctl: setting key "net.ipv4.tcp_rmem": Invalid argument
sysctl: setting key "net.ipv4.tcp_wmem": Invalid argument

 

Thanks for pointing out that I forgot to add the installation of conntrack in my GitHub repository, as it is already integrated into this repository.

To install conntrack, you can use the following command:

sudo apt-get install conntrack -y


it's possible that your system has some restrictions on the maximum allowed values for net.ipv4.tcp_rmem and net.ipv4.tcp_wmem, try to lower the values. It's basically min, default, max - receive buffer space for TCP connections.

 

Which configuration did you try to apply?

P.S. I've updated the GitHub repo.

Edited by Trance
Link to comment
Share on other sites

for 64 gb, now will try manage some smaller value for net.ipv4.tcp_wmem, will apply here when start working

problem solved, and the problem was too many characters:
net.ipv4.tcp_rmem = "4096 87380 33554432"
net.ipv4.tcp_wmem = "4096 87380 33554432"
and it should be:
net.ipv4.tcp_rmem = 4096 87380 33554432
net.ipv4.tcp_wmem = 4096 87380 33554432

Link to comment
Share on other sites

49 minutes ago, Cz3siek said:

for 64 gb, now will try manage some smaller value for net.ipv4.tcp_wmem, will apply here when start working

problem solved, and the problem was too many characters:
net.ipv4.tcp_rmem = "4096 87380 33554432"
net.ipv4.tcp_wmem = "4096 87380 33554432"
and it should be:
net.ipv4.tcp_rmem = 4096 87380 33554432
net.ipv4.tcp_wmem = 4096 87380 33554432

 

Cool.

Link to comment
Share on other sites

On 3/2/2023 at 2:15 PM, Trance said:

Webmin Installation Guide for Ubuntu Server 22.04

  • Webmin is a web-based system administration tool for Unix/Linux systems that allows users to manage their system resources and services through a web interface. It provides a graphical user interface (GUI) for many common administrative tasks and simplifies the management of a Linux system for both novice and experienced users.
    • System configuration: Webmin provides a GUI for configuring many aspects of your system, including network settings, user accounts, system services, and hardware settings.
    • Package management: Webmin makes it easy to manage software packages on your system. You can view and install available packages, update installed packages, and configure package repositories.
    • Server management: Webmin supports a variety of server applications, including Apache, MySQL, and PostgreSQL. You can configure server settings, manage virtual hosts and databases, and view server logs.
    • File management: Webmin includes a file manager that allows you to browse and manage files on your system, including copying, moving, and deleting files.
    • Monitoring: Webmin provides real-time monitoring of system resources such as CPU usage, memory usage, and disk space. You can also set up alerts to be notified when resource usage exceeds specified thresholds.
    • Security: Webmin includes a variety of security features, including SSL/TLS encryption for web traffic, authentication and authorization for user accounts, and firewall configuration.

 

I've added Webmin Installation Guide - a web-based system administration tool.
 

image.png

image.png

image.png

Edited by Trance
  • Upvote 1
Link to comment
Share on other sites

On 3/11/2023 at 12:06 AM, Trance said:

I have refreshed the GitHub repositories referenced in the main topic to enhance the coherence between the guides.

 

Now is more clear , thanks.

Link to comment
Share on other sites

  • 2 weeks later...

Hello again me, I am little boring so when install on some not used any more laptop Ubuntu and train your tutorial I stack on Webmin installation on add sign for keys i get this message:

 

sudo apt-key add -
Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)).

so i used way from Webmin tutorial, and works perfect :

 

Webmin Linux install Guide

Link to comment
Share on other sites

15 hours ago, Cz3siek said:

Hello again me, I am little boring so when install on some not used any more laptop Ubuntu and train your tutorial I stack on Webmin installation on add sign for keys i get this message:

 

sudo apt-key add -
Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)).

so i used way from Webmin tutorial, and works perfect :

 

Webmin Linux install Guide


Amazing.

Link to comment
Share on other sites

On 3/2/2023 at 9:15 PM, Trance said:

MariaDB installation and optimization on Ubuntu

  • This guide explains how to install and optimize MariaDB on Ubuntu
    • Checking if the script is run as root
    • Checking if the script has been run before
    • Updating package lists and upgrading packages
    • Installing MariaDB if it's not already installed
    • Prompting the user to select an optimization level (either to use up to 50% of total RAM and CPU, or up to 100% if MariaDB is the sole service on the server)
    • Backing up the original MariaDB configuration file
    • Calculating hardware-based settings (based on total memory and CPU cores)
    • Configuring MariaDB performance settings based on the chosen optimization level and hardware
    • Restarting the MariaDB service if the user agrees

 

This commit introduces a Bash script to optimize MariaDB installations on Debian-based systems:

 

Quote

1: Optimizes MariaDB to use up to 50% of total RAM and CPU.
2: Optimizes MariaDB to use up to 100% of total RAM and CPU.
Use option 2 only if MariaDB is the sole service running on your server.

 

Added MariaDB Management Script for Ubuntu:
 

Quote

1. Manage Users
    1. Create new user
    2. Delete a user
    3. Flush all users (except root)
2. Manage Databases
    1. Create new database
    2. Delete a database
    3. Update a database
3. Import SQL file
4. Export SQL file

 

Edited by Trance
  • Like 1
  • Upvote 1
Link to comment
Share on other sites

  • Trance changed the title to Ubuntu Server All-In-One
  • Trance featured this topic

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...