|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/redhat-ansible-training-rhel9/
课程评论:没有评论
本课程“Red Hat Automation with Ansible - RHEL 9 (RH294)”是系统管理员、DevOps 工程师以及希望自动化 Linux 任务的用户的完整指南。 **核心内容概览:** * **Ansible 环境设置 (AWS):** 学习在 AWS EC2 实例上设置 Ansible 控制节点,安装 Ansible,配置两个托管客户端节点,并实现无密码 SSH 连接。 * **Ansible Inventory 管理:** 深入了解静态和动态清单,添加主机条目(包括自定义端口和用户),使用主机范围,并掌握 `ansible-navigator` 的安装、模式和使用。 * **Ansible 配置文件:** 学习如何配置 Ansible 的基本设置,包括用户特定配置和清单文件路径。 * **Ansible Playbook 基础:** 理解 Ansible Playbook 的概念、语法和格式,并实践创建、运行 Playbook,以及使用 `ansible-navigator` 和启用 EE。 * **Ansible 变量与 Facts:** 学习定义组变量、主机变量,在 Playbook 中使用变量,并掌握覆盖变量的方法,包括使用字典和捕捉输出。 * **Ansible 密钥管理:** 学习使用 Ansible Vault 进行文件加密、密码文件加密以及修改加密文件,以安全地管理敏感信息。 * **Ansible 任务控制:** 掌握使用循环(loops)迭代任务,包括列表和字典,以及如何使用条件判断 (conditionals) 来控制任务的执行。 * **Ansible 文件部署:** 学习使用 Ansible 的各种文件模块(如 `copy`, `fetch`, `lineinfile`, `blockinfile`)来部署文件。 * **Jinja2 模板:** 利用 Jinja2 模板动态生成配置文件,结合控制结构、变量和 Ansible Facts。 * **复杂 Playbook 管理:** 学习使用主机模式选择目标主机,以及 `include`、`import` 和 `import_playbook` 的区别与应用。 * **Ansible 角色与 Collections:** 理解角色的结构,并通过一个完整的自动化服务器加固项目来实践角色的创建和使用,并学习如何从 Ansible Galaxy 安装和使用外部角色(例如 `geerlingguy.nginx`)。 * **Ansible 故障排除:** 学习分析 Ansible 日志文件,使用 `debug` 模块,处理错误,并利用 `check_mode` 进行 Playbook 的测试执行。 本课程通过大量的动手实验和场景驱动的练习,帮助学习者全面掌握使用 Ansible 实现自动化任务的各项技能。
Welcome to RedHat Automation with Ansible - RHEL 9 (RH294).If you're a system administrator, DevOps engineer, or just someone who wants to automate Linux-based tasks, this course is your complete guide to learning Ansible - one of the most powerful tools in IT automation.Here's what you'll learn:Ansible Setup in AWS EnvironmentGetting Started with This SectionSet Up an EC2 Instance as an Ansible Control NodeInstall Ansible on Control NodeSet Up Two Client Machines as Managed NodesEnable SSH communicationAdd Same User to All MachinesGenerate SSH Key for Password-Free AccessCreate Host Group in Inventory FileTest Connection Using Ad-Hoc CommandsGuided Exercise - 1Guided Exercise - 2Mastering Ansible Inventory and ansible-navigator: A Step-by-Step guideGetting Started with This SectionUnderstanding Ansible InventoryStatic vs Dynamic Inventory in AnsibleHow to Add Host Entries in InventoryAdding Hosts with Custom Ports and UsersUsing Host Ranges in Ansible InventoryGetting Started with Ansible Navigator: Installation, Modes, and UsageAnsible Navigator: Quick OverviewNavigator Modes Explained: Run, Inventory, Collections & Moreansible-navigator vs ansible-playbook: Key DifferencesInstalling ansible-navigatorSetting Up ansible-navigatorView Inventory with ansible-navigator (stdout mode)Explore Inventory in TUI Mode Using ansible-navigatorManaging Ansible Configuration FilesConfiguring Ansible BasicsSetting Up User-Specific Ansible ConfigurationDefining Inventory File Path in Ansible ConfigWorking with ansible-navigator Configuration FileAnsible Navigator - Scenario Based Guided LabGetting Started with this SectionHands-On Lab 1Hands-On Lab 2Hands-On Lab 3Hands-On Lab 4Implementing an Ansible PlaybookGetting Started with this SectionWhat is an Ansible PlaybookAnsible Playbook Syntax and FormattingLab Exercise: Creating Your First Ansible PlaybookLab Exercise: Run Playbook Using Ansible NavigatorLab Exercise: Ansible Navigator with EE EnabledLab Exercise: Directory Creation Using PlaybookAnsible Variable and FactsGetting Started with this SectionIntroduction to Ansible VariablesValid and Invalid Variable NamesDefining Group Variables in Ansible InventoryDefining Group Variables via group_varsDefining Host VariablesDefining Variables in Ansible PlaybooksOverriding Variables with ansible playbookOverriding Variables with ansible-navigatorUse Dictionaries as Variables in AnsibleHands-On: Use DictionariesCapturing Output with Registered VariablesHands-On: Capturing Output with registerManaging Secrets in AnsibleIntroduction to Ansible Vault and Secret StorageAnsible Vault: File EncryptionAnsible Vault: Using Password Files for EncryptionAnsible Vault: Modify Encrypted FilesHands-On 1: Secure User Creation with Ansible VaultHands-On 2: Secure User Creation with Ansible VaultHands-On 3: Secure User Creation with Ansible VaultHands-On 4: Secure User Creation with Ansible VaultHands-On 5: Secure User Creation with Ansible VaultTask Control Implementation in AnsibleGetting Started with this SectionTask Iteration with Loops in AnsibleHands-On: Installing Multiple Packages Using LoopsLoop with a Variable ListHands-On: Iterating Variable Lists with LoopsAnsible Loops with List of DictionariesHands-On 1: Looping Through Dictionary ListsHands-On 2: Looping Through Dictionary ListsEarlier-style Loop Keywords: with_items, with_dict etcHands-On 1: Register with Loop in AnsibleHands-On 2: Register with Loop in AnsibleImplementing Conditional Task ControlRunning Tasks ConditionallyHands-On: Install Apache Only if RAM > 2GBHands-On: Run Task Only if OS is DebianHands-On: Run Task When web_enabled is TrueHands-On: Run Task if RAM > 2GB AND OS is CentOSHands-On: Run Task if OS is Ubuntu OR DebianDeploying Files to Managed HostsDescribing File ModulesHands-On: Create a DirectoryHands-On: Copy a File to RemoteHands-On: Fetch File From Remote to LocalHands-On: Insert Line Using lineinfile ModuleHands-On: Insert Config Block Using blockinfile ModuleDeploying Custom files with Jinja2 TemplatesIntroduction to Jinja Templating in AnsibleControl Structures with Loops and VariablesHands-On: Control StructuresUsing Ansible Facts in Jinja2 TemplatesGuided Exercise - 1Guided Exercise - 2Guided Exercise - 3Managing Complex Plays and PlaybooksSelecting Hosts with Host PatternsHands-On: Defining Ansible Host PatternsHands-On: Defining Ansible Host PatternsIncluding and Importing FilesInclude vs Import in AnsibleImport_playbook in AnsibleHands-On 1: Include and Import Files - Apache SetupHands-On 2: Include and Import Files - Apache SetupHands-On 3: Include and Import Files - Apache SetupGuided Exercise: Apache Web Server AutomationOverview of the ProjectHands-On Practice 1Hands-On Practice 2Modular Playbook Design with Roles and CollectionsDescribing Role StructureHands-On Project: Automate Server HardeningHands-On: Roles for User and Timezone SetupHands-On: Role for Firewall Custom Port AccessHands-On: Role for SSH ConfigurationHands-On: Use Roles in a PlaybookHands-On: Execute the PlaybookHands-On: Verify Changes on Client NodeUsing External Ansible Roles from Ansible GalaxyOverview: Using External Roles from GalaxyHands-On: Install External Role geerlingguy.nginxHands-On: Create a Playbook with External RoleHands-On: Run Playbook with ansible-playbookHands-On: Run Playbook with ansible-navigatorTroubleshooting in Ansible: Debugging and Error HandlingAnalyzing Ansible Log FilesUsing the debug Module for TroubleshootingHandling Errors Gracefully in AnsibleDebugging Techniques in AnsibleUsing check_mode to Test Playbook ExecutionLast Lecture