Introduction
Get Started
Workshop OS Templates
AHV Windows Templates
Requirements
Uploading Installation Media
Creating a Virtual Machine
Installing Windows
Installing Nutanix Guest Tools
Updates and Sysprep
Copying Template to Image Service
Creating VMs in AHV from Disk Images
Workshop Setup Guide
Configuring HPOC Prism Element
Requirements
Connectivity & HPOC Info:
Overview
Configure Prism Element for Workshop
Step 1 — Configure Storage Containers
Step 2 — Setup user VM network
Step 3 — Image Configuration
Step 4 — Configure Data Services IP
Step 5 — UI Settings
Step 6 — Setup Authentication and Role Mapping (If Active Directory is needed for your Workshop)
Configuring HPOC Prism Central
This Setup Guide is designed with these assumptions
Connectivity Instructions:
Overview
Configure Prism Central for Workshop
Step 1 — Install Prism Central
Step 2 — Register Prism Central
Step 3 — UI Settings
Step 4 — Setup Authentication and Role Mapping
Step 5 — Configure Self-Service Admin Management
Step 6 — Enable App Management
Step 7 — Create Project for use in Calm
Step 8 — Go forth and Create / Demo / Build / Have Fun
Install and Configure Active Directory on Windows 2012R2 Domain Controller
Connectivity Instructions:
Overview
Step 1a — Deploying the Windows 2012R2 Server from scratch
Step 1b — Deploying the Windows 2012R2 Server from Pre-Deployed HPOC Image
Step 2 — Configuring Windows Server Settings
Step 3 — Installing Domain Services Role (AD)
Step 4 — Configuring Domain Services Role (AD)
Step 5 — Adding Workshop Users & Group
Workshops
Orchestration and Automation
Software Development Lifecycle (SDLC)
SDLC Introduction
Stages and Best Practices of SDLC
Waterfall Development Model
Spiral Development Model
Iterative Development Model
Agile Development Model
Test Driven Development Model
Application Lifecycle Management (ALM)
Overview
Application Portfolio Management
Application Lifecycle Management
Governance
Development
Operations
Application Release Management
Application Performance Management
Summary
DevOps
Introduction
Benefits of DevOps
DevOps Practices
Summary
Orchestration/Change Management Tools - Comparison
Introduction
Difference between Orchestrate & Automate
Puppet Overview
Chef Overview
Ansible Overview
Puppet+Chef+Ansible: Installation & Ease of Use
Puppet+Chef+Ansible: User Interface
Puppet+Chef+Ansible: Code Base
Puppet+Chef+Ansible: Scalability
Summary
Containers
Overview
Containers vs. VMs
Virtual Machines
Containers
Enter Docker
Fundamental Docker Concepts
Docker Engine
Docker Client
Docker Daemon
Dockerfile
Docker Image
Union File Systems
Layered systems
Volumes
Docker Containers
Double-clicking on “containers”
Summary:
Kubernetes
Overview
Kubernetes and the Need for Containers
Container Proliferation - The Need for Orchestration
Kubernetes Architecture
Use Cases
Benefits of Kubernetes
Summary
Calm Overview
Overview
WHAT: NuCalm Components
WHY: NuCalm Reasoning
Key Terms
Key Actors / Dramatis Persona
AppStore / Marketplace
Functions of an AppStore
Publishers
Calm Deep Dive
NuCalm Entities in Aplos
NuCalm Components
Engine Design
App Call Flows
app_blueprints
Macros
Built-in macros
Implementation
Calm to Epsilon object mapping
Dependencies
Handling Secrets
Deployment Details
General DevOps Questions
Version Control System (VCS) Questions
Continuous Integration questions
Continuous Testing Questions:
Automate testing - DevOps questions
Configuration Management Questions
What is puppet - DevOps questions
Chef architecture - DevOps questions
Continuous Monitoring Questions
Containerization and Virtualization Questions
Containers - DevOps questions
Additional Questions
Lab 1 - Blueprint (MySQL)
Connectivity Instructions:
Lab Overview
Calm Glossary
Part 1: Accessing and Navigating Calm
Tabbed Navigation
Blueprint Editor Overview
Part 2: Your Entry Level Blueprint
Create Blueprint Workflow
Setting Variables
Adding A DB Service
Package Configuration
Part 3: Launching the Blueprint
Summary
Lab 2 - Blueprint (LAMP)
Connectivity Instructions
Lab Overview
Part 1: Accessing and Navigating Calm
Part 2: Creating a Web Server
Create Service
Package Configuration
Scale-out AppService
Part 3: - Create HA Proxy Load Balancer
Create Service
Package Configuration
Lab 4 - Marketplace Part 1
Connectivity Instructions:
Calm Glossary
Lab Overview
Part 1: Accessing and Navigating Calm
Part 2: Marketplace Control - Publish Blueprints
Part 3: Marketplace - Clone Blueprint
Part 4: Edit + Debug + Launch Cloned Blueprint
Lab 5 - REST APIs
Connectivity Instructions:
Lab Overview
Requirements:
Create a CentOS Server v7 VM
Create a Development Runtime
Configure Postman (Optional)
Accessing the REST API’s
Issuing List Requests
Issuing GET/UUID Requests
Issuing a Import Blueprint Request
Issuing an Update Blueprint Request
Issuing a Launch Blueprint Request
Issuing a Delete Application Request
Automation of REST Endpoints
Lab 6 - Ansible
Ansible Architecture
Ansible Production Modules
Developing an Ansible module
Introduction
REST APIs and Python libraries in Ansible modules
Creating REST calls in an Ansible module
Summary
Connectivity Instructions:
Lab Overview
Introduction
Step 1 - Environment Setup
Step 2 — Installing Ansible
Step 3 — Configuring Ansible Hosts
Step 4 — Using Simple Ansible Commands
Step 5 - Preparing The System for Development - Installing Python
Updating The Default CentOS Applications
Preparing The System for Development Installations
How to Install Development Tools using YUM on CentOS
Step 6 - Run Ansible Playbook to Deploy LAMP stack
Summary:
Lab 7 - Docker
Connectivity Instructions:
Lab Overview
Requirements:
Glossary:
Create Dockerfile:
Create the Application:
Build the Application
Run the Application
Image sharing
Publish the image
Lab 8 - Marketplace Part 2
Connectivity Instructions:
Calm Glossary
Lab Overview
Part 1: Accessing and Navigating Calm
Part 2: Blueprint Workspace - Publish Blueprints
Part 3: Marketplace Manager - Approve Blueprint
Part 4: Edit Project Workspace
Part 5: Launch Blueprint from the Marketplace
Mission - Kubernetes & Jenkins
Connectivity Instructions:
Container Deployment & Management using Calm and K8S.
Standup a CI/CD Pipeline.
Citrix XenDesktop on AHV
Requirements
Lab 1 - Cluster Configuration
Overview
Configuring Storage Container
Configuring VM Network
Takeaways
Lab 2 - Domain Controller Install
Overview
Creating the VM
Enabling Nutanix Guest Tools
Configuring IP and Hostname
Installing Active Directory
Creating User Accounts
Creating Organizational Units
Creating Security Groups
Updating IPAM Settings
Takeaways
Lab 3 - XenDesktop Install
Overview
Creating the VM (via CLI)
Enable Nutanix Guest Tools (via CLI)
Preparing XenDesktop VM
Installing XenDesktop
Installing MCS Plugin for AHV
Configuring XenDesktop Site
Takeaways
Lab 4 - Windows 10 Gold Image
Overview
Creating the VM
Enabling Nutanix Guest Tools
Installing Applications
Installing Virtual Delivery Agent
Creating Gold Image Snapshot
Takeaways
Lab 5 - Delivering Persistent Desktops
Overview
Creating the Machine Catalog
Creating the Delivery Group
Connecting to the Desktop
Takeaways
Lab 6 - Delivering Non-Persistent Desktops
Overview
Creating the Machine Catalog
Creating the Delivery Group
Connecting to the Desktop
Takeaways
Lab 7 - User Profiles With AFS
Overview
Deploy Acropolis File Services
Configuring Share Permissions
Configuring Citrix User Profile Management
Testing Profiles and Folder Redirection
Takeaways
Lab 8 - Updating Machine Catalogs
Overview
Adding More Desktops
Updating the Gold Image
Takeaways
Optional Lab
- Testing Environment Resiliency
Overview
Updating CVM Firewall Rules
Configuring VM Affinity
Enabling HA Memory Reservation
Staging Connections
Executing Order 66
Restoring Balance to the Force
Takeaways
Optional Lab
- Self-Service File Level Restore
Overview
Protecting the VMS
Staging the Test
Performing Self Service Restore
Takeaways
Optional
- Making Domain Users Local Admins
Optional Lab
- Delivering Applications And Server Desktops
Overview
Creating the XenApp VM (via CLI)
Enabling Nutanix Guest Tools
Installing Applications
Installing Virtual Delivery Agent
Creating Gold Image Snapshot
Creating the Machine Catalog
Creating the Delivery Group
Connecting to the Applications/Desktop
Takeaways
Optional Lab
- Remote Access With NetScaler VPX
Overview
Deploying NetScaler Virtual Appliance
Configuring Root Certificate Authority
Configuring Server SSL Certificate
Configuring NetScaler for XenDesktop
Importing NetScaler Configuration
Configuring MyDesktop DNS Record
Installing Root Certificate on your Client
Connecting to the Desktop
Enabling HTML5 Access
Takeaways
Introduction
Get Started
Workshop OS Templates
Workshop Setup Guide
Workshops
Orchestration and Automation
Software Development Lifecycle (SDLC)
Application Lifecycle Management (ALM)
DevOps
Orchestration/Change Management Tools - Comparison
Containers
Kubernetes
Calm Overview
Calm Deep Dive
General DevOps Questions
Lab 1 - Blueprint (MySQL)
Lab 2 - Blueprint (LAMP)
Lab 4 - Marketplace Part 1
Lab 5 - REST APIs
Lab 6 - Ansible
Lab 7 - Docker
Lab 8 - Marketplace Part 2
Mission - Kubernetes & Jenkins
Citrix XenDesktop on AHV
Orchestration and Automation
¶
Software Development Lifecycle (SDLC)
SDLC Introduction
Stages and Best Practices of SDLC
Waterfall Development Model
Spiral Development Model
Iterative Development Model
Agile Development Model
Test Driven Development Model
Application Lifecycle Management (ALM)
Overview
Application Portfolio Management
Application Lifecycle Management
Governance
Development
Operations
Application Release Management
Application Performance Management
Summary
DevOps
Introduction
Benefits of DevOps
DevOps Practices
Summary
Orchestration/Change Management Tools - Comparison
Introduction
Difference between Orchestrate & Automate
Puppet Overview
Chef Overview
Ansible Overview
Puppet+Chef+Ansible: Installation & Ease of Use
Puppet+Chef+Ansible: User Interface
Puppet+Chef+Ansible: Code Base
Puppet+Chef+Ansible: Scalability
Summary
Containers
Overview
Containers vs. VMs
Virtual Machines
Containers
Enter Docker
Fundamental Docker Concepts
Docker Engine
Docker Client
Docker Daemon
Dockerfile
Docker Image
Union File Systems
Layered systems
Volumes
Docker Containers
Double-clicking on “containers”
Summary:
Kubernetes
Overview
Kubernetes and the Need for Containers
Container Proliferation - The Need for Orchestration
Kubernetes Architecture
Use Cases
Benefits of Kubernetes
Summary
Calm Overview
Overview
WHAT: NuCalm Components
WHY: NuCalm Reasoning
Key Terms
Key Actors / Dramatis Persona
AppStore / Marketplace
Functions of an AppStore
Publishers
Calm Deep Dive
NuCalm Entities in Aplos
NuCalm Components
Engine Design
App Call Flows
app_blueprints
Macros
Built-in macros
Implementation
Calm to Epsilon object mapping
Dependencies
Handling Secrets
Deployment Details
General DevOps Questions
Version Control System (VCS) Questions
Continuous Integration questions
Continuous Testing Questions:
Automate testing - DevOps questions
Configuration Management Questions
What is puppet - DevOps questions
Chef architecture - DevOps questions
Continuous Monitoring Questions
Containerization and Virtualization Questions
Containers - DevOps questions
Additional Questions
Lab 1 - Blueprint (MySQL)
Connectivity Instructions:
Lab Overview
Calm Glossary
Part 1: Accessing and Navigating Calm
Tabbed Navigation
Blueprint Editor Overview
Part 2: Your Entry Level Blueprint
Create Blueprint Workflow
Setting Variables
Adding A DB Service
Package Configuration
Part 3: Launching the Blueprint
Summary
Lab 2 - Blueprint (LAMP)
Connectivity Instructions
Lab Overview
Part 1: Accessing and Navigating Calm
Part 2: Creating a Web Server
Create Service
Package Configuration
Scale-out AppService
Part 3: - Create HA Proxy Load Balancer
Create Service
Package Configuration
Lab 4 - Marketplace Part 1
Connectivity Instructions:
Calm Glossary
Lab Overview
Part 1: Accessing and Navigating Calm
Part 2: Marketplace Control - Publish Blueprints
Part 3: Marketplace - Clone Blueprint
Part 4: Edit + Debug + Launch Cloned Blueprint
Lab 5 - REST APIs
Connectivity Instructions:
Lab Overview
Requirements:
Create a CentOS Server v7 VM
Create a Development Runtime
Configure Postman (Optional)
Accessing the REST API’s
Issuing List Requests
Issuing GET/UUID Requests
Issuing a Import Blueprint Request
Issuing an Update Blueprint Request
Issuing a Launch Blueprint Request
Issuing a Delete Application Request
Automation of REST Endpoints
Lab 6 - Ansible
Ansible Architecture
Ansible Production Modules
Developing an Ansible module
Introduction
REST APIs and Python libraries in Ansible modules
Creating REST calls in an Ansible module
Summary
Connectivity Instructions:
Lab Overview
Introduction
Step 1 - Environment Setup
Step 2 — Installing Ansible
Step 3 — Configuring Ansible Hosts
Step 4 — Using Simple Ansible Commands
Step 5 - Preparing The System for Development - Installing Python
Updating The Default CentOS Applications
Preparing The System for Development Installations
How to Install Development Tools using YUM on CentOS
Step 6 - Run Ansible Playbook to Deploy LAMP stack
Summary:
Lab 7 - Docker
Connectivity Instructions:
Lab Overview
Requirements:
Glossary:
Create Dockerfile:
Create the Application:
Build the Application
Run the Application
Image sharing
Publish the image
Lab 8 - Marketplace Part 2
Connectivity Instructions:
Calm Glossary
Lab Overview
Part 1: Accessing and Navigating Calm
Part 2: Blueprint Workspace - Publish Blueprints
Part 3: Marketplace Manager - Approve Blueprint
Part 4: Edit Project Workspace
Part 5: Launch Blueprint from the Marketplace
Mission - Kubernetes & Jenkins
Connectivity Instructions:
Container Deployment & Management using Calm and K8S.
Standup a CI/CD Pipeline.