Alina Swietochowska | 18 October 2012
The demand for command line-driven Linux training has always been strongest at the entry point level, where IT professionals realise that GUI applications, whilst adequate for end-user work, are not sufficiently powerful or efficient for server administration or development work. Lately, the interest in the more advanced topics and technologies has increased markedly. Hence the new additions to our QA Authored portfolio...
First, earlier this year, we have introduced two advanced courses: Deploying a Linux Server and Securing a Linux Server (both of them as a follow up to the already existing Essentials of Linux Administration and the Advanced Linux Administration courses).
This blog is here to introduce the development of a brand new course, which will address the specific requirement for training professionals involved in one of the most significant Linux market areas: a deployment of a LAMP stack and design of a commercial web server.
LAMP is short for Linux, Apache, MySQL and PHP. It describes an application stack used in design and deployment of dynamic, secure and highly scalable web sites based on Apache2 web-server, running on a Linux operating system server, with PHP5 (mod_php) and MySQL database support.
Provisioning a LAMP stack
There are many alternatives for hosting a web server (locally, using a dedicated server, using a provider or indeed delegate the whole operation into cloud). There are also several techniques for installing and deploying the LAMP software stack itself. Some distributions provide a GUI front end to installation, or even an installation from the command line, reduced to a single instruction (the example being the taskselinstall lamp-servercommand in Ubuntu). These basic methods are often sufficient to get started - as the first taste of a web server.
For a serious deployment though, a more in-depth understanding of the involved technologies is definitely required. The learning curve can be daunting and steep, as there is a fine line between the types of expertise involved.
A successful and secure deployment relies on the general system administration skills, as well as database and software development ability. Finally, broader skills in system architecture and design also play a big role. These skills are important in placing LAMP deployment correctly within the appropriate IT infrastructure.
Introducing LAMP course
Our LAMP course is being designed to be based around a realistic case study. It will be a 5-day course with plenty of hands-on, to provide a comprehensive introduction to the use of LAMP technologies, in order to build a dynamic, commercial web site.
We will work with a Red Hat-based Linux system (probably CentOS 6.3) as a basis for hands-on exercises. Having said that, all discussions and installation steps are generic, and not closely tied to a specific Linux distribution.
The aims for the course will be to ensure that attendees learn how to:
- Install and configure Apache, MySQL and PHP onto a base Linux platform
- Configure apache to support virtual hosting, authenticated login, and SSL
- Design, create and populate a relational database using MySQL
- Design and run database queries and updates using SQL
- Keep web servers and web applications secure
- Create web pages and web forms using HTML and CSS
- Use PHP for server-side processing and database access within a web application
The course should be ready for roll-out by the end of this year, with the first run planned early for the early 2013.
And what are we planning after that? Well, we are planning to tackle Virtualisation, followed closely by Cloud Technologies. 2013 looks exciting for Open Source!