Tuning the TCP stack | System Administrator

Transmission Control Protocol and Internet Protocol (TCP/IP) is a standard set of protocols used by every network-enabled device. TCP/IP defines the standards to communicate over a network. TCP/IP is a set of protocols and is divided in two parts: TCP and IP. IP defines the rules for IP addressing and routing packets over network and provides an identity IP address to each host on the network. TCP deals with the interconnection between two hosts and enables them to exchange data over network. TCP is a connection-oriented protocol and controls the ordering of packets, retransmission, error detection, and other reliability tasks.

TCP stack is designed to be very general in nature so that it can be used by anyone for any network conditions. Servers use the same TCP/IP stack as used by their clients. For this reason, the default values are configured for general uses and not optimized for high-load server environments. New Linux kernel provides a tool called sysctl that can be used to modify kernel parameters at runtime without recompiling the entire kernel. We can use sysctl to modify and TCP/IP parameters to match our needs.

In this recipe, we will look at various kernel parameters that control the network. It is not required to modify all parameters listed here. You can choose ones that are required and suitable for your system and network environment.

It is advisable to test these modifications on local systems before doing any changes on live environment. A lot of these parameters directly deal with network connections and related CPU and memory uses. This can result in connection drops and/or sudden increases in resource use. Make sure that you have read the documentation for the parameter before you change anything.

Also, it is a good idea to set benchmarks before and after making any changes to sysctl parameters. This will give you a base to compare improvements, if any. Again, benchmarks may not reveal all the effects of parameter changes. Make sure that you have read the respective documentation.

Continue reading “Tuning the TCP stack | System Administrator”

Advertisements

Mysql replication setup in linux

MySQL replication is a process that allows you to easily maintain multiple copies of a MySQL data by having them copied automatically from a master to a slave database. Replication enables data from one MySQL database server (the master) to be copied to one or more MySQL database servers (the slaves). Replication is asynchronous by default; slaves do not need to be connected permanently to receive updates from the master. Depending on the configuration, you can replicate all databases, selected databases, or even selected tables within a database.MySQL is one of the most popular open source relational database management system (RDBMS). When your traffic grows then you need to increase the instances of your mysql server and have to replicate the data on multiple servers. MYSQL provide 2 ways to replicate data, master – master and master – slave.

Continue reading “Mysql replication setup in linux”

Virtualization – Introduction – (Containerization)-setup-LXC

Introduction:-

What does Virtualization mean?

The simple explanation is that you create a virtual version of something that’s generally used for some type of execution. For example, if you were to partition a basic hard drive to create two hard drives, then they would be two ‘virtualized hard drives,’ as the hardware is technically a single hard drive that was digitally separated into two.Virtualization refers to the creation of a virtual resource such as a server, desktop, operating system, file, storage or network.

what are Containers?

Containers are a lightweight virtualization technology.In IT it is all about the need to run an application, not a virtual machine.In the end, it is the application user that has a need.This need is to run the application and no user will ever ask for a virtual machine.That is exactly one of the major design goals of the container technology.

A container is a virtualization method at the OS level.This allows multiple instances of an os to be running on the same kernel, which allows for a more efficient usage of available resources.

Try Container Online Click Here 

Continue reading “Virtualization – Introduction – (Containerization)-setup-LXC”