فناوران آنیسا "خانه ی لینوکس ایران" برای اولین بار در ایران دوره های جدید و قدرتمند Open Technology DevOps Engineer را برای علاقه مندان و شاغلین حوزه ی لینوکس و متن باز برگزار می نماید.

این دوره  ها در حوزه های زیر آموزش های لازم را به متخصصین لینوکس و متن باز ارائه می کنند:

  • مدیریت پیکربندی با Ansible
  • مدیریت پیکربندی و تنظیمات با Puppet
  • مهندسی نرم افزار با Git & Jenkins
  • مدیریت Container با Docker

قابل توجه است که موسسه LPI نیز این مباحث را در دوره LPIC-OT DevOps Engineer خود که در پاییز 2017  اعلام می گردد، قرار داده است. ما افتخار داریم که به عنوان پیشرو در آموزش دانش لینوکس روز دنیا، این دوره های فوق حرفه ای را کاملتر و حتی زودتر از موسسه بین المللی LPI در ایران، ارائه می کنیم.
مخاطبان این دوره ها:

این دوره از سری دوره های تخصصی OT DevOps Engineer در Container Management   در فناوران آنیسا "خانه لینوکس ایران" است که به آموزش عملی  یادگیری مفاهیم و کاربرد های Docker و انطباق آن با سایر ابزار ها در حوزه DevOps می پردازد.

قابل توجه است که موسسه LPI نیز این مبحاحث را در دوره LPIC-OT DevOps Engineer خود که در پاییز 2017  اعلام می گردد، قرار داده است.

DevOps یک ساختار و روش فکری است که در آن سرعت، پایداری و کیفیت از ارکان اصلی آن به شمار می روند. در این چرخه لازم است تا فاصله بین تیم های توسعه دهنده نرم افزار و عملیات و پشتیبانی به حداقل برسد.  یک دیدگاه جهت نیل به این هدف این است تا تیم توسعه دهنده و عملیات در یک بستر یکسان کار کنند و شبهاتی که در خصوص کارکرد متفاوت یک نرم افزار یکسان در محیط های مختلف وجود دارد از بین برود. چنین راهکاری هرچند به وسیله امکانات و تکنولوژی های مجازی سازی تا حدی رفع شد، ولی کندی این روش موجب شد تا Container ها بتوانند خودنمایی کنند. در میان Container های مختلفی که وجود دارند، Docker نقشی بسیار اساسی در دنیای امروز تکنولوژی دارد. سهولت استفاده از آن، امکانات بسیار زیاد و پیشرفته و سازگاری آن با نرم افزار کنترل چرخه Continuous Integration موجب شده است تا به عنوان رکن اساسی و پرکاربرد در میان Container ها، تلقی شود.

در راستای ترویج DevOps Mindset و آموزش تکنولوژی های پرکاربرد در DevOps، فناوران آنیسا دوره آموزشی Docker را برگزار می کند.

محتوای دوره:

در این دوره به کلیات Container ها اشاره ای خواهد شد. سپس به صورت عملی به یادگیری مفاهیم و کاربرد های Docker و انطباق آن با سایر ابزار ها در حوزه DevOps خواهیم پرداخت.

مخاطبان دوره:

  • Linux System Administrators
  • Developers

پیش نیاز : دانش در حد LPIC-2

مدت دوره : 40 ساعت

تاریخ برگزاری: لطفا به بخش تقویم آموزشی مراجعه بفرمایید.

 

 

Docker Basics and installation

Introduction to containers and containerized applications

Container Ecosystem

Components of Docker and Docker Architecture

Installing the Docker Engine

Docker images and repositories

 

Managing Containers

Creating our first Docker container

Docker Commands

Viewing and monitoring running containers

Docker Service and engine

Securing Containers using TLS

 

Docker Images

Building Docker images

Docker Registeries

Storing and retrieving Docker images from Docker Hub

Creating images using DOCKERFILE

Building containers from images

 

Networking

Networking Docker containers

Docker Network Internals

Implementing and configuring docker network

libnetwork

 

Docker Storage and Volumes

Data persistence with Volumes

Managing Docker Data volumes

 

Docker Security

Docker Security best practices

 

Docker Compose and Clustering(SWARM)

 Scenario

A single container static website

Setting up a container running Nginx

Launching a static site

Update our static site from Git

 

 


این دوره از سری دوره های تخصصی OT DevOps Engineer در فناوران آنیسا "خانه لینوکس ایران" است که به آموزش مدیریت پیکربندی با Puppet  و چگونگی استفاده از این ابزار پرکاربرد و قدرتمند می پردازد. قابل توجه است که موسسه LPI نیز این مباحث را در دوره LPIC-OT DevOps Engineer خود که در پاییز 2017  اعلام می گردد، قرار داده است.

 

امروزه تولید نرم افزار و استقرار آن در محیط عملیاتی، شکلی جدید به خود گرفته است که در آن سعی میشود سرعت، دقت و استمرار تولید نسخ جدید نرم افزار با ویژگی های جدید در اولویت قرار بگیرند. در دنیای مدرن، کل زیرساخت سیستم های توسعه و تولید نرم افزار مبتنی بر کد است که به آن Infrastructure As Code گفته می شود و اصلی ترین قسمت آن ابزارهای مدیریت پیکربندی هستند. مدیریت پیکربندی یکی از ارکان اصلی و غیر قابل انکار در حوزه فعالیت ها و تخصص مورد نیاز DevOps است. هدف اصلی در پیاده سازی و استقرار DevOps در یک سیستم تولید و پشتیبانی نرم افزار، خودکار سازی همه سرویس ها و اجزای چرخه تولید نرم افزار است.

مهندسان سیستم های سنتی برخی از وظایف خود را به وسیله ابزارهای سنتی موجود در لینوکس، خودکار سازی می کردند اما امروزه با سیستم های بسیار گسترده و پیچیده ای روبرو هستیم که بسیاری از آن ها مبتنی بر رایانش ابری می باشند. لذا استفاده از ابزار های سنتی خودکار سازی، نه تنها از بهره وری و سرعت انجام عملیات ما خواهند کاست، بلکه در بسیاری موارد با سیستم ها و نرم افزارهای کنترل رایانش ابری سازگار نیستند.

ابزارهایی که در مدیریت پیکربندی استفاده می شوند این قابلیت را دارند که یک زیر ساخت و چرخه تولید نرم افزار را از ابتدا تا انتها ایجاد کنند، در حداقل زمان ممکن تعدادی ماشین را با تنظیمات مورد نیاز به چرخه تولید و بهره برداری نرم افزار اضافه کنند و کلیه تنظیمات زیرساختی و سیستمی کلیه ماشین ها را تغییر دهند. به همین منظور فناوران آنیسا در نظر دارد تا در دوره مدیریت پیکربندی به وسیله Puppet  چگونگی استفاده از این ابزار پرکاربرد و قدرتمند را به علاقه مندان ارائه کند.

 

محتوای دوره:

در این دوره در ابتدا نگاهی به مقدمات IAC خواهیم داشت، سپس به سراغ کلیات ساختاری Puppet خواهیم رفت و به مرور به بررسی و استفاده از قابلیت های کاربردی Puppet در قالب کار عملی و کارگاهی شبیه به محیط واقعی خواهیم پرداخت.

مخاطبان دوره:

  • کارشناسان و مدیران سیستم های مبتنی بر لینوکس که علاقه مدند در حوزه فعالیت های DevOps وارد شوند.
  • برنامه نویسان علاقه مند به حوزه فعالیت های DevOps

اهداف دوره:

  • آشنایی با اهمیت و توانمندی Puppet در حوزه DevOps
  • ساختار و نحوه عملکرد Puppet Ecosystem

PuppetDB, Hiera, MCollective, Facter

  • نحوه استقرار مدیریت پیکربندی در چرخه ساختار DevOps
  • ایجاد محیط و ساختار عملیاتی، نصب و استقرار سرویس ها و تنظیمات سیستم ها
  • تولید کد به زبان DSL جهت پیاده سازی مدل ساختار مبتنی بر کد

پیش نیاز : دانش در حد LPIC-2

مدت دوره : 40 ساعت

تاریخ برگزاری: لطفا به بخش تقویم آموزشی مراجعه بفرمایید.

 

Introduction
Configuration Management, Orchestration and DevOps
Importance of automation
Infrastructure As Code
Introduction to Puppet
Importance of Puppet in DevOps
Different Components of Puppet's architecture
Puppet DSL

Setting Up your environment
Introduction to Git
Using Git to manage your codes and workflows
Using Virtualbox and Vagrant
Using Vagrant to build up your environment
Installing and Using Geppetto
Installing and Confuring Puppet
Install Puppet Server
Install Puppet nodes
Register Puppet nodes to a puppet server

Implement Puppet Manifests and Modules
Manifest files
Files and Templates
Custom Facts
Hiera and Custom facts
Types and Providers
Classification
Create modules with classes, name spaces, vars, and conditions
Create modules to install software on nodes
Puppet Modules

Puppet Ecosystem
PuppetDB
Hiera
Nodes and Hiera(Node Classification using Hiera)
MCollective
Facter

Git and Puppet
Create and perform simple management of a Git Repository
Add files to a Git Repository
Apply Changes and commit changed files to a Git Repository

The Foreman
Install The Foreman
Connect Foreman to Puppet
Node Classification using Foreman
Puppet Reports in The Foreman


این دوره از سری دوره های تخصصی OT DevOps Engineer در فناوران آنیسا "خانه لینوکس ایران" است .

در این دوره سرفصل های پراهمیت Git و Jenkins  در حوزه مهندسی نرم افزار به شکل صورت مساله و راه حل های کاربردی مورد بررسی قرار می گیرند تا مفاهیم به شکلی واقعی به دانشجویان آموزش داده شود.

قابل توجه است که موسسه LPI نیز این مبحاحث را در دوره LPIC-OT DevOps Engineer خود که در پاییز 2017  اعلام می گردد، قرار داده است.

 Git به ساده ترین تعریف ممکن ابزاری است جهت مدیریت نسخه های نرم افزار تولید شده و مخزن کد نرم افزار که می توان آن را به کاربرد های دیگری همچون کنترل نسخه در ابزار های مدیریت پیکربندی نیز بسط داد. از اینرو Git نه تنها در حوزه برنامه نویسی و تولید نرم افزار کاربرد دارد، بلکه به شکل گسترده ای در پیاده سازی Infrastructure As Code مورد استفاده قرار می گیرد و یکی از تخصص های مورد نیاز در حوزه DevOps می باشد.

از سوی دیگر به جرات میتوان گفت Continuous Integration و ابزارهایی که در این حوزه مورد استفاده قرار میگیرند این توانایی را دارند تا کل چرخه خودکار سازی، تولید و بهره برداری و استقرار را کنترل و مدیریت کنند.Jenkins  یکی از قدرتمندترین و پرکاربرد ترین ها در این مجموعه است. اگر می خواهید چرخه تولید نرم افزار و انتشار آن به صورت خودکار کنترل شود، بدون شک نیاز به این ابزار خواهید داشت.

 

 مخاطبان دوره:

  • Linux Administrators
  • Software Developers and Engineers
  • DevOps

پیش نیاز :

  • دانش لینوکس در سطح LPIC-2
  • آشنایی و تجربه کار با Configuration Management نظیر Puppet یا Ansible
  • آشنایی با Docker

مدت دوره : 48 ساعت

تاریخ برگزاری: لطفا به بخش تقویم آموزشی مراجعه بفرمایید.

 

 

Part 1: Git

Intro of Version Control systems

Git Introduction
Perspective of Git
Role of Git in Modern technology space

Git as VCS
Git Structure and core layers of versioning operation

Environment setup for Git
Setup LAB environment on Linux

Repository in Git
Setting up a Git repository
Git help system
Configuring metadata of a repository

Staging

Branching

Collaboration using Git
Merging repositories

Conflicts

Managing and trace changes on code

Github
Creating git repo on github
Github via SSH

Git Workflow


Cloning a Repository
A local repo
A remote repo

 

Part 2: Jenkins

Introduction
CI & CD Fundamentals
Importance of CI
Build Maturity
Build Cycles

Jenkins features and architectures
Architecture
Terms
Master & Slave architecture

Installation
Installing Jenkins in Master/Slave Mode
Running Jenkins behind Nginx reverse proxy
Running Jenkins behind Apache reverse proxy
Choosing a launch method
Managing Jenkins Service

Managing Jenkins
Node Administration
Labels, groups, and load balancing
Securing Jenkins
Managing Credentials
Managing Plugins

Jobs and Views
Jobs in Jenkins
Managing jobs in Jenkins
Executing jobs
Creating Views
Managing Views

Software Deployment and Delivery
Architecting build outputs
Definitive Media Library(DML)
Publishing to a Docker Container
Automating Deployments
Build Pipelines
Upstreams and Downstreams

Jenkins and Docker
Integrating Jenkins and Docker
Integrating Jenkins with Ansible
Integrating Jenkins with Puppet

این دوره از سری دوره های تخصصی OT DevOps Engineer در فناوران آنیسا "خانه لینوکس ایران" است که به آموزش مدیریت پیکربندی با Ansible  و چگونگی استفاده از این ابزار پرکاربرد و قدرتمند می پردازد. قابل توجه است که موسسه LPI نیز این مباحث را در دوره LPIC-OT DevOps Engineer خود که در پاییز 2017  اعلام می گردد، قرار داده است.

 

امروزه تولید نرم افزار و استقرار آن در محیط های عملیاتی، شکلی جدید به خود گرفته است که در آن سعی می شود سرعت، دقت و استمرار تولید نسخ جدید نرم افزار با ویژگی های جدید در اولویت قرار بگیرند. در دنیای مدرن، کل زیرساخت سیستم های توسعه و تولید نرم افزار مبتنی بر کد میباشند که به آن Infrastructure As Code گفته می شود و اصلی ترین قسمت آن ابزارهای مدیریت پیکربندی هستند. مدیریت پیکربندی یکی از ارکان اصلی و غیر قابل انکار در حوزه فعالیت ها و تخصص مورد نیاز DevOps است. هدف اصلی در پیاده سازی و استقرار DevOps در یک سیستم تولید و پشتیبانی نرم افزار، خودکار سازی همه سرویس ها و اجزای چرخه تولید نرم افزار است.

مهندسان سیستم های سنتی برخی از وظایف خود را به وسیله ابزارهای سنتی موجود در لینوکس، خودکار سازی می کردند اما امروزه با سیستم های بسیار گسترده و پیچیده ای روبه رو هستیم که بسیاری از آن ها مبتنی بر رایانش ابری هستند. لذا استفاده از ابزارهای سنتی خودکار سازی، نه تنها از بهره وری و سرعت انجام عملیات ما خواهند کاست، بلکه در بسیاری موارد با سیستم ها و نرم افزارهای کنترل رایانش ابری سازگار نیستند.

ابزارهایی که در مدیریت پیکربندی استفاده می شوند این قابلیت را دارند که یک زیر ساخت و چرخه تولید نرم افزار را از ابتدا تا انتها ایجاد کنند، در حداقل زمان ممکن تعدادی ماشین را با تنظیمات مورد نیاز به چرخه تولید و بهره برداری نرم افزار اضافه کنند و کلیه تنظیمات زیرساختی و سیستمی کلیه ماشین ها را تغییر دهند.

به همین منظور فناوران آنیسا دوره مدیریت پیکربندی به وسیله انسیبل (Ansible) چگونگی استفاده از این ابزار پرکاربرد و قدرتمند را به علاقه مندان ارائه می کند.

 

محتوای دوره:

در این دوره در ابتدا نگاهی به مقدمات IAC خواهیم داشت، سپس به سراغ کلیات ساختاری انسیبل خواهیم رفت و به مرور به بررسی و استفاده از قابلیت های کاربردی انسیبل در قالب کار عملی و کارگاهی شبیه به محیط واقعی خواهیم پرداخت.

مخاطبان دوره:

  • دانشجویان، کارشناسان، مشاوران و مدیران فناوری اطلاعات
  • توسعه دهندگان نرم افزار و DevOps

اهداف دوره:

  • آشنایی با مبانی و مفاهیم DevOps، مدیریت پیکربندی و مدل ساختار مبتنی بر کد
  • نحوه استقرار مدیریت پیکربندی در چرخه ساختار DevOps
  • ایجاد محیط و ساختار عملیاتی، نصب و استقرار سرویس ها و تنظیمات سیستم ها
  • تولید کد به زبان YAML جهت پیاده سازی مدل ساختار مبتنی بر کد

 

پیش نیاز : دانش در حد LPIC-2

مدت دوره : 40 ساعت

تاریخ برگزاری: لطفا به بخش تقویم آموزشی مراجعه بفرمایید.

 

Introduction
Configuration Management, Orchestration and DevOps
Infrastructure As Code
Introduction to Ansible
Ansible vs. Other CM tools
Introduction to YAML
Ansible and YAML to build your environment
Core Components of Ansible

Getting Setup
Pre-requisites
Introduction to Vagrant
Setting up Vagrant
Setup Ansible + Vagrant environment
Ansible Ad-hoc commands
Inventory, HOSTS, Ansible.cfg

Ansible Playbooks
Professional directory structure to keep ansible codes
:Playbooks
Facts, System Facts and using facts in playbooks -- 
  Variables and variable scopes, passing variables from command line -- 
  Managing a task, handlers, and tags in playbook -- 
  Error handling in playbooks -- 
Write and execute a playbook
Jinja2 Templates

Roles
Role based tasks
Pre Tasks, Post Tasks
Contolling Tasks
Conditions
Variable substitution
Notifications
Alternate Roles Path
Waiting for events

Ansible Modules
Introduction to Ansible Modules
Using most used modules in ansible codes

 Application Deployment using Ansible
Concerns before deploy codes to production once tested
Deploying a simple java web application on tomcat using ansible
Updating applications

Ansible Special features
Ansible Vault
Ansible Lookups
Asynchronous actions and polling
Rolling updates
Delegation and parallelism
Debugger
Dry-run mode

Real-world ansible
Automate CM
Building application deployment pipelines
Create a to-do-list