General Information
Trainer Profile
Mr. Sarath is a seasoned technology development executive and consultant with over
Ten years of experience. These areas include: “Building Highly Available and Scalable
Web architectures in the Cloud”, “On Premise and Public Cloud Infrastructure
Automation”, “Cloud based infrastructure design”, “deployment and operations”,
“Enterprise platform design, architecture, deployment and operations”, “Distributed
Computing for data and analytics platforms”, “Building PAS solutions in on premise
Private Cloud”, “Devops and Automation at scale”.
Mr. Sarath is the author of Slashroot. Slashroot.in is a technical blog site platform for learning technology and system administration related stuff.
Description
Devops is a recent movement in the IT industry that has brought developers and IT operations team close to each other. It is also often characterized by Operations team making use of tools and techniques used by developers for their work. With the emergence and widespread adoption of devops, much of what used to be considered infrastructure is now part of the code. It’s a different breed of engineers that makes Agile Infrastructure and deployment possible!!.
Learning Linux System Administration in depth is the primary stepping stone and an inevitable component in reaching the target of Professional Devops. With this training module, we help you achieve just that!
Step | Module | Description |
---|---|---|
1 | ALPD 100 | Linux System |
Administration From | ||
Basics to Expert Level. | ||
2 | ALPD 200 | Devops Tools And |
Infrastructure Automation |
Note: Both the modules can be opted individually. But we recommend Taking the full ALPD package (ALPD 100 + ALPD 200)
Course Deliverables
Classroom Training: Apart from the core conceptual knowledge that we deliver. All examples and practicals will be demonstrated practically on servers (Nothing will be just Theary!).
Lab: Students can create and destroy virtual machines on demand, to practice things learned in the class.
MODULE TOPICS (ALPD 100)
Heading | Topics | ||
---|---|---|---|
Introduction to Linux And Getting | 1. | Introduction | |
Started | 1.1. | History | |
1.2. | The Linux Filesystem | ||
1.3. | Linux Distributions and | ||
Derivatives | |||
1.4. | Linux Booting Process, | ||
GRUB and Run Levels | |||
2. | Getting Started | ||
2.1. | Installing Linux (Ubuntu) | ||
2.2. | Initial System | ||
Configuration(hostname, IP, | |||
dns) | |||
2.3. | Knowing the Environment | ||
2.4. | Terminal – Bash Shell | ||
2.5. | Bash command line | ||
redirections and regular | |||
expressions with grep | |||
CommandLine Essentials And | |||
Administration | 3. | Command line Continued. | |
3.1. | Create, Delete, Move | ||
Directories. | |||
3.2. | Text Editors (vi, vim and | ||
nano) | |||
3.3. | Essential Commands in | ||
Linux with its use cases. | |||
3.4. | File and Directory | ||
Permissions | |||
3.5. | Hard Links & Soft Links | ||
3.6. | Managing Users and Groups | ||
3.7. | Networking Commands | ||
3.8. | The Super User (sudo) |
3.9. | Package Management in | ||
Linux | |||
4. | General System Administration. | ||
4.1. | Working with Linux File | ||
Systems(MBR, GPT, EXT | |||
File Systems, XFS File | |||
Systems) | |||
4.2. | Mounting File System, UUID | ||
and labeling | |||
4.3. | Configure Networking | ||
4.4. | Starting and Stopping | ||
Services, and Understanding | |||
Init Scripts | |||
4.5. | Network File Systems | ||
4.6. | Scheduling Tasks using | ||
Cron | |||
4.7. | Working With Package | ||
Repositories Like Yum and | |||
aptget | |||
4.8. | Configuring Network | ||
Services Like HTTP, FTP, | |||
SSL, SSH, NTP, SMTP. | |||
Advanced System Administration & | 5. | Advanced System Administration | |
Monitoring | 5.1. | Getting Started with | |
IPTABLES host level firewall | |||
5.2. | Advanced IPTABLES | ||
configuration | |||
5.3. | Configuring System Routes | ||
and Network Address | |||
Translation | |||
5.4. | Creating and Delivering | ||
Reports for System | |||
Monitoring | |||
5.5. | Modifying System Level | ||
Kernel Parameters | |||
5.6. | Configuring System Logging | ||
and Remote Logging | |||
5.7. | Installing and Configuring | ||
Authoritative, Caching only, | |||
Forward Only, DNS Server | |||
Using Bind | |||
5.8. | Administering Relational | ||
Database Servers (MySQL & | |||
PostGreSQL, MariaDB) | |||
5.9. | DNS infrastructure In depth | ||
(master slave, DNS zone | |||
transfer using HMAC/MD5, | |||
forwarding DNS) |
5.10. | Load Balancing Concepts | ||
For HTTP and TCP | |||
5.11. | Automatic Installation Of | ||
Servers (Kickstart, PXE, | |||
Cobbler etc) | |||
5.12. | Database Master and Slave | ||
with Backups(MySQL and | |||
Postgres) | |||
5.13. | General Backup | ||
mechanisms and Bacula. | |||
5.14. | Hardening Linux (Encrypted | ||
Access, Host Based | |||
Firewalls) | |||
6. | System Monitoring And Performance Tuning | ||
6.1. | Collecting Performance and | ||
resource metrics from Linux. | |||
6.2. | Monitoring and benchmark | ||
tools(vmstat, mpstat, iostat, | |||
top) | |||
6.3. | Analyzing performance | ||
bottlenecks (Run Queue, | |||
Interrupts, Context | |||
Switching, CPU and Memory | |||
Utilization, System Activity | |||
Monitoring) | |||
6.4. | Performance Tuning the | ||
Linux operating system | |||
6.5. | Performance Tuning Linux | ||
Networks(TCP/IP tuning in | |||
sysctl) | |||
6.6. | Linux System IO Monitoring | ||
6.7. | Architecture Monitoring And | ||
Alerting with Nagios | |||
6.8. | Graphing Performance | ||
Metrics using Ganglia and | |||
Cacti. | |||
Centralized Logging & Getting Started | 7. | Centralized Logging | |
with Automation | 7.1. | Understanding Syslog | |
7.2. | Centralized Syslog | ||
7.3. | Setting up Elasticsearch | ||
Cluster for Storing Logs | |||
7.4. | Getting started with | ||
Logstash | |||
7.5. | Shipping Log Events to | ||
Central Logstash server | |||
7.6. | Filtering Log messages for | ||
easy searching | |||
7.7. | Fluentd Centralized Logging 7.8. Scaling Logstash and Alerting | ||
7.8. | Scaling Logstash and Alerting | ||
8 | Getting Started with Scripting automation using Python and Bash | ||
8.1 | 8.1. Introduction to Shell programming and Scripting using Bash | ||
8.2 | Bash Flow Controls, Command Line Options, Input & Output Processing | ||
8.3 | Getting Started with Python Scripting | ||
8.4 | Python Language components(conditional statements, Lists, Arrays, Loops, and Functions) | ||
8.5 | Python Modules, Input and Output, working with files. |
MODULE TOPICS (ALPD 200)
Heading | Topics | |
Version Controlling | 9. Getting Started with Version | |
Controlling | ||
9.1. | Introduction To Git and its | |
working Principles | ||
9.2. | Introduction To SVN and its | |
Working Principles | ||
9.3. | Configuring and | |
Administering a Central Git | ||
repository | ||
9.4. | Working with Branches and | |
Tags | ||
9.5. | Setting up a web based | |
OpenSource Git Server | ||
9.6. | Administering SVN Server | |
using HTTP Authentication | ||
Puppet | 10. Configuration Management Using |
Puppet | |||
10.1. | Introduction To | ||
Configuration Management. | |||
10.2. | Getting Started with Puppet | ||
Master and Puppet Agents | |||
10.3. | Building Hosts with Puppet | ||
10.4. | Writing Puppet | ||
Modules(Example Module | |||
for Configuring Users and | |||
SSH keys) | |||
10.5. | Externalizing Puppet | ||
Configuration using ENC | |||
10.6. | Hiera and Puppet | ||
10.7. | Puppet Dashboard | ||
10.8. | Puppet Modules in Depth | ||
10.9. | Puppet Reporting | ||
Chef | 11. | Configuration Management Using | |
Chef | |||
11.1. | Introduction To Chef and Its | ||
work flow | |||
11.2. | Understanding Chef | ||
components | |||
11.3. | Installing and Configuring a | ||
chef server and doing a first | |||
chef run on an agent | |||
11.4. | Getting Familiar with knife | ||
and chef solo | |||
11.5. | Writing Chef Cookbooks | ||
11.6. | Chef Best Practices for large | ||
scale deployments | |||
11.7. | Using Roles and | ||
Environments in Chef | |||
Docker | 12. | Docker Container Virtualization. | |
12.1. | Introduction to Docker | ||
12.2. | Installing And Configuring | ||
Docker in Linux | |||
12.3. | Running Docker Containers | ||
and run command options | |||
12.4. | Container interactions with | ||
Base system | |||
12.5. | Writing Dockerfiles to build | ||
Docker images | |||
12.6. | Working with Docker | ||
registries | |||
12.7. | Orchestration with Docker | ||
Compose, Docker Swarm | |||
and Consul |
Ansible | 13. | Ansible Provisioning | |
13.1. | Installing and configuring | ||
Ansible | |||
13.2. | Working with Ansible | ||
Playbooks | |||
13.3. | Describing Servers using | ||
Inventory | |||
13.4. | Running Ansible at scale | ||
Continuous Integration and Build | 14. | Jenkins Build Automation | |
Management Using Jenkins | 14.1. | Installing and configuring | |
Jenkins in Linux | |||
14.2. | Continuous Integration | ||
Fundamentals | |||
14.3. | Configuring Jenkins | ||
Environment and tools | |||
14.4. | Setting up build jobs and | ||
triggers | |||
14.5. | Jenkins and Docker image | ||
Building | |||
14.6. | Parametrized and | ||
Multiconfiguration builds |
Duration: 80 Hours
Course Fee: $1000
For more details, visit our site www.solwinsys.com
Email at trainings@solwinsys.com
Phone: 908 666 7411