Apache is the most widely used web server, with over 65% market share. It supports multiple modules for processing requests in different ways, and allows virtual hosting of multiple websites from one server. Key configuration files are located in /etc/httpd, and the daemon runs from /usr/sbin/httpd. Virtual hosting can be configured through name-based or port-based virtual hosts in the httpd.conf file. Apache also supports modules for PHP, databases like MySQL and PostgreSQL, and technologies like Mono for ASP.NET on Linux.
2. Apache - An Overview
● Most widely used web server
on the planet
● Created by the creators of
http protocol
● Over 65% market share
● New protocol (waka) is
coming up – Apache 3.0
3. Apache – Features
● Multiple MPM
– Prefork – Spawn process before they needed
– Worker – For pure multi-threaded applications
– Event – New, for multi-threaded applications
● Dynamic Module Loading
– No need for recompilation, run time extensibility
● Virtual Hosting
– Multiple web site on a single IP
6. Apache - Howto
● Installing apache
● Basic Configuration
● Enable / Disable Modules
● Start / Stop / Monitor the web server
● Configure PHP
● Configure a test server with PHP and Apache
7. Virtual Hosting
Types of virtual hosts How to configure
# vi /etc/httpd/conf/httpd.conf
– Name based
NameVirtualHost *:80
– Port Based
<VirtualHost *:80>
– Port Based
DocumentRoot /tmp/example.com
ServerName server.example.com
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /tmp/test.com
ServerName server.test.com
</VirtualHost>
8. Mono
● An open Source C#
and .NET development
environment for Linux
● mod_mono : Apache
2.0/2.2 module that
provides ASP.NET
support for the web's
favorite server, Apache.
10. Reverse Proxies
● Used for
● Caching
● Security
● Encryption
● Load Distribution
● Examples
● Nginx
● Varnish
● Squid
11. Databases
● Installing MySQL
● Create a database
● Install management
tools – phpMyAdmin
● Install PostgreSQL
● Create a database
● Install management
tools – phpPgAdmin
12. noSQL
● Not an RDBMS
● No Table Schema
● No joints
● Very High Scalability – Horizontal
● Used in high performance parallel computing
● Examples
- Big Table, CouchDB, Cassandra,
MongoDB
13. Types of file systems
● Disk File Systems
- Ext4, Ext3, ZFS, NTFS
● FUSE – File System in User Space
- SSHFS, GlusterFS
● Distributed / Parallel File Systems
- Luster, Google FS, Hadoop, MogileFS
● Cluster File Systems
- GFS, OCFS, GPFS, CFS
14. Working on remote Server
● Ssh (secure shell)
● Configure ssh server
● Automatic login
● Secure copy of files
● Remote command execution
● Rsync
– Sync files between hosts
– Widely used for backup
15. Cloud Computing
What is cloud computing
– You will get “Everything” As A Service
– Pay as per usage
– Dynamic Elasticity and Scalability
– High availability
Major Players
– Amazon
– RackSpace
Open Source Initiatives
– Open Stack
– Eucalyptus
– Open Nebula
16. Virtualization
What is Virtualization
Running multiple “instances” of OSs on a single machine
Types of virtualization
Full virtualization
Para virtualization
Advantages of virtulaization
Effective resource usage
Manageability
TCO
17. Linux Industry adoption
● 99% of the Cloud platforms runs on Linux
● By 2014 Cloud will be a USD 10 Billion Business
● Mobile Application
● Andriod – Will dominate all other competition in coming future
(Gartner Survey)
● All mission critical application
● Banking and Finance
● Military
● Space
● Agriculture
● Health
18. Careers In Linux
As a programmer
● Java, Python, C, C++, Perl, SCALA, Ruby
● MapReduce, Hyper Tables
As Administrator, Architect etc
● Certification
– Red Hat (RHCE, RHCSS, RHCA)
– Novell (CLP, CLE)
– LPI (Level - 1, Level – 2, Level - 3)