SlideShare a Scribd company logo
1 of 28
Download to read offline
IRONIC
OPENSTACK BAREMETAL PROVISIONING SERVICE
Hao Meng, Wang
IRC: Haomeng
whaom@cn.ibm.com
June, 2014
2
AGENDA
•
Bare Metal Provision Domain
•
Why Provision Bare Metal(BM)
•
Provision Methods & Scenarios
•
Key Technologies for BM Provision
•
PXE ROM & NBP
•
IPMI Functions
•
IPMI Block Diagram
•
IPMI + PXE Provising Workflow
•
Ironic
•
About Ironic
•
Architecture
•
Conceptual
•
Logical
•
Framework
•
Components
•
BM Provision Sequence Diagram
•
Data Model
•
Images used by Ironic
•
Commands
•
How to use Ironic
•
TripleO
3
Why Provision Bare Metal(BM)
•
Database/Hadoop hosting (some
databases run poorly in a hypervisor)
•
Single tenant, dedicated hardware for
performance, security, dependability and
other regulatory requirements
•
Computing tasks that require access to
hardware devices which can’t be
virtualized
•
High-performance computing(HPC) clusters, physical compute nodes
•
Or, rapidly deploying a cloud infrastructure self, TripleO or others
•
Cloud scaling out
•
X86_64, ARM, TILE-Gx16/36/64/100 systems
•
SoftLayer / Racespace Cloud supports bare-metal as service
4
Provision Methods & Scenarios
•
Methods
•
CLONE – ghost/dd
•
INSTALL – JumpStart/KickStart/OS Installer
•
CLONE + INSTALL
•
Scenarios
•
Diskful
•
HD/SSD
•
iSCSI/SAN disk
•
Diskless
•
RAM Disk
5
Key Technologies for BM Provision
•
PXE Preboot Execution Environment (PXE) is part of the Wired for Management (WfM) specification
developed by Intel and Microsoft. Booting computers via a network.
•
NBP Network Bootstrap Program (NBP) is equivalent to GRUB (GRand Unified Bootloader) or LILO
(LInux LOader) - loaders which are traditionally used in local booting. Like the boot program in a hard
drive environment, the NBP is responsible for loading the OS kernel into memory so that the OS can be
bootstrapped over a network.
•
IPMI Intelligent Platform Management Interface (IPMI) is a standardized computer system interface
used by system administrators for out-of-band management of computer systems and monitoring of
their operation.
•
DHCP Using PXE, the BIOS uses DHCP to obtain an IP address for the network interface and to
locate the server that stores the network bootstrap program (NBP).
•
TFTP Trivial File Transfer Protocol (TFTP) is a simple file transfer protocol that is generally used for
automated transfer of configuration or boot files between machines in a local environment. In a PXE
environment, TFTP is used to download NBP over the network using information from the DHCP
server.
•
iSCSI Internet Small Computer System Interface, uses this to 'dd' the image to target machnie
local disk
6
PXE ROM & NBP (bootloader,pxelinux.0)
PXE ROM Chip
7
NBP bootloader config file sample
default deploy
label deploy
kernel /tftpboot/76305cdf-a30a-453e-bc92-b3f869a27fd8/deploy_kernel
append initrd=/tftpboot/76305cdf-a30a-453e-bc92-b3f869a27fd8/deploy_ramdisk selinux=0
disk=cciss/c0d0,sda,hda,vda iscsi_target_iqn=iqn-76305cdf-a30a-453e-bc92-b3f869a27fd8
deployment_id=76305cdf-a30a-453e-bc92-b3f869a27fd8
deployment_key=UKKQZ3N2AOUJ45NZVB27L25XKR6I57V8 ironic_api_url=http://192.0.2.1:6385
troubleshoot=0 nofb nomodeset vga=normal
label boot
kernel /tftpboot/76305cdf-a30a-453e-bc92-b3f869a27fd8/kernel
append initrd=/tftpboot/76305cdf-a30a-453e-bc92-b3f869a27fd8/ramdisk root=UUID=319005ff-9177-45af-
87db-ada3a1f6dc9f ro nofb nomodeset vga=normal
8
IPMI Functions
•
power Shortcut to chassis power commands
•
chassis bootdev Set the boot device
•
sensor Print detailed sensor information
•
sol Configure and connect IPMIv2.0 Serial-over-LAN
•
...
9
IPMI Block Diagram
IPMI Port
10
IPMI NIC Port
11
“Ironic is an Incubated OpenStack project which aims to
provision bare metal (as opposed to virtual) machines by
leveraging common technologies such as PXE boot and IPMI
to cover a wide range of hardware, while supporting
pluggable drivers to allow vendor-specific functionality to be
added.”
http://docs.openstack.org/developer/ironic/
About Ironic
12
Conceptual Architecture
13
Logical Architecture
14
Framework
15
Ironic Components
•
Ironic-api
•
handles the remote api requests
•
Ironic-conductor
•
talk with physical machines
•
Nova compute driver
•
Implements the nova virt.ComputeDriver.
•
Direct the calls to Ironic
•
CLI client
•
Ironic deployment ramdisk agent
•
Built by diskimage-builder
•
Deploy by PXE, talk with Ironic-
conductor
RAMDISK Agent - https://github.com/openstack/diskimage-builder/tree/master/elements/deploy-ironic
16
Juno Teeth Agent
•
In Juno release, a new ramdisk agent will be introduced to Ironic by
RackSapce. (teeth agent) The new name is Ironic Python Agent
•
Supports:
•
Partition disks
•
Erase disks
•
Install bootloaders
•
Install an OS image
•
Update firmware
•
Configure RAID and more....
•
A new DeployInterface driver will be written to communicate with the new
Teeth agent.
17
Ironic BM Provision Sequence Diagram
18
Ironic Objects Model
19
Images used by Ironic
●
NBP
– Ironic.conf pxe_bootfile_name
– default pxelinux.0
●
Ironic Deployment Agent
– bm-deploy-kernel / bm-deploy-ramdisk
– BM flavor's extra_specs data –
baremetal:deploy_kernel_id/baremetal:deploy_ramdisk_id
●
User Image – to be deployed to bm
– user-image/
– user-image-vmlinuz
– user-image-initrd
– Images' kernel_id/ramdisk_id ext props
•
20
Ironic Commands
•
node-create - Create a new node.
•
node-delete - Delete a node.
•
node-get-console - return the connection information about the console.
•
node-list - list nodes.
•
node-set-console-mode - Enable or disable the console access.
•
node-set-power-state - Power the node on or off.
•
node-set-provision-state - Provision or tear down a node.
•
node-show - Show a node.
•
node-update - Upate a node.
•
node-validate - Validate the node driver interfaces.
21
Ironic Commands
•
port-create - Create a new port.
•
port-delete - Delete a port.
•
port-list - List ports.
•
port-show - Show a port.
•
port-update - Update a port.
•
chassis-create - Create a new chassis.
•
chassis-delete - Delete a chassis.
•
chassis-list - List chassis.
•
chassis-node-list - List the nodes contained in the chassis.
•
chassis-show - Show a chassis.
•
chassis-update - Update a chassis.
•
driver-list - List drivers.
•
driver-show - Show a driver.
22
How to use Ironic
•
Install Ironic - Try with devstack or TripleO's Devtest, it supports Ironic for long time
– http://docs.openstack.org/developer/ironic/dev/dev-quickstart.html#deploying-ironic-with-devstack
– https://wiki.openstack.org/wiki/Tuskar/Devtest
•
Setup the compute node's nova.conf
•
compute_driver = ironic.nova.virt.ironic.driver.IronicDriver
•
scheduler_host_manager = ironic.nova.scheduler.ironic_host_manager.IronicHostManager
•
Setup tftp folder and prepare pxe boot loader file
•
# cp pxelinux.0 /YOUR_TFTP_FOLDER/
•
Prepare the baremetal flavor
•
# nova flavor-create <name> <id> <ram> <disk> <vcpus>
•
# nova flavor-key baremetal set "cpu_arch"="$ARCH" "baremetal:deploy_kernel_id"="$deploy_kernel_id"
"baremetal:deploy_ramdisk_id"="$deploy_ramdisk_id"
•
Register these nodes with correct drivers
•
# ironic node-create driver=pxe_ipmitool
•
Register the ports information
•
# ironic port-create -a aa:bb:cc:dd:ee:ff -n 76305cdf-a30a-453e-bc92-b3f869a27fd8
•
Nova boot to kick off the baremetal provision
•
Check node's provision_state/power_state value
•
# ironic node-show 76305cdf-a30a-453e-bc92-b3f869a27fd8
23
TripleO
•
TripleO = OpenStack on OpenStack
•
INFO: May 2014 at the Atlanta Summit: both RedHat's (InStack) and HP's
(Helion) OpenStack distributions are now based on TripleO
24
TripleO – Covers full DevOps
TripleO = NovaBM/Ironic
+ os-collect-config
+ os-apply-config
+ os-refresh-config
+ os-cloud-config
+ diskimage-builder (dib)
+ tripleo-image-elements (dib)
+ tripleo-heat-elements (dib)
+ Tuskar(tuskar/tuskarui/python-tuskarclient)
25
TripleO – Block Diagram
v
26
PC
Seed VM
Undercloud
Overcloud
Controller
Overcloud
Compute
Overcloud
Compute
Workload
Workload Workload
$ heat stack-create
undercloud
$ heat stack-create
overcloud
$ heat stack-create
workload
Seed / under / over Clouds in TripleO
27
References
•
Ironic wiki - https://wiki.openstack.org/wiki/Ironic
•
PXE Spec - http://download.intel.com/design/archives/wfm/downloads/pxespec.pdf
•
IPMI overview - http://www.intel.com/content/dam/www/public/us/en/documents/product-
briefs/ipmi-overview.pdf
•
IPMI Spec - http://www.intel.com/content/www/us/en/servers/ipmi/ipmi-specifications.html
•
TripleO - https://wiki.openstack.org/wiki/TripleO
THANK YOU

More Related Content

What's hot

Red Hat OpenStack Deployment
Red Hat OpenStack DeploymentRed Hat OpenStack Deployment
Red Hat OpenStack DeploymentMichael Solberg
 
Openstack devops challenges
Openstack devops challenges Openstack devops challenges
Openstack devops challenges openstackindia
 
DevOps and OpenStack December 2012
DevOps and OpenStack December 2012DevOps and OpenStack December 2012
DevOps and OpenStack December 2012Matt Ray
 
Chef and OpenStack Workshop from ChefConf 2013
Chef and OpenStack Workshop from ChefConf 2013Chef and OpenStack Workshop from ChefConf 2013
Chef and OpenStack Workshop from ChefConf 2013Matt Ray
 
Introducing OpenStack for Beginners
Introducing OpenStack for Beginners Introducing OpenStack for Beginners
Introducing OpenStack for Beginners openstackindia
 
Mastering OpenStack - Episode 02 - Simple Architectures
Mastering OpenStack - Episode 02 - Simple ArchitecturesMastering OpenStack - Episode 02 - Simple Architectures
Mastering OpenStack - Episode 02 - Simple ArchitecturesRoozbeh Shafiee
 
Mastering OpenStack - Episode 01 - Simple Architectures
Mastering OpenStack - Episode 01 - Simple ArchitecturesMastering OpenStack - Episode 01 - Simple Architectures
Mastering OpenStack - Episode 01 - Simple ArchitecturesRoozbeh Shafiee
 
Demistifying open stack storage
Demistifying open stack storageDemistifying open stack storage
Demistifying open stack storageopenstackindia
 
Openstack – An introduction
Openstack – An introductionOpenstack – An introduction
Openstack – An introductionMuddassir Nazir
 
State of Linux Containers in OpenStack
State of Linux Containers in OpenStackState of Linux Containers in OpenStack
State of Linux Containers in OpenStackopenstackindia
 
OpenStack Kolla Introduction
OpenStack Kolla IntroductionOpenStack Kolla Introduction
OpenStack Kolla IntroductionDaneyon Hansen
 
Automating OpenStack Deployment with Fuel
Automating OpenStack Deployment with FuelAutomating OpenStack Deployment with Fuel
Automating OpenStack Deployment with FuelTomasz Zen Napierala
 
Mastering OpenStack - Episode 05 - Controller Nodes
Mastering OpenStack - Episode 05 - Controller NodesMastering OpenStack - Episode 05 - Controller Nodes
Mastering OpenStack - Episode 05 - Controller NodesRoozbeh Shafiee
 
Apache Provisionr (incubating) - Bucharest JUG 10
Apache Provisionr (incubating) - Bucharest JUG 10Apache Provisionr (incubating) - Bucharest JUG 10
Apache Provisionr (incubating) - Bucharest JUG 10Andrei Savu
 
Docker Meetup Bangalore - Docker + Openstack
Docker Meetup Bangalore - Docker + OpenstackDocker Meetup Bangalore - Docker + Openstack
Docker Meetup Bangalore - Docker + OpenstackAshish Billore
 
Deploying openstack using ansible
Deploying openstack using ansibleDeploying openstack using ansible
Deploying openstack using ansibleopenstackindia
 

What's hot (20)

Red Hat OpenStack Deployment
Red Hat OpenStack DeploymentRed Hat OpenStack Deployment
Red Hat OpenStack Deployment
 
Openstack devops challenges
Openstack devops challenges Openstack devops challenges
Openstack devops challenges
 
DevOps and OpenStack December 2012
DevOps and OpenStack December 2012DevOps and OpenStack December 2012
DevOps and OpenStack December 2012
 
Chef and OpenStack Workshop from ChefConf 2013
Chef and OpenStack Workshop from ChefConf 2013Chef and OpenStack Workshop from ChefConf 2013
Chef and OpenStack Workshop from ChefConf 2013
 
Introducing OpenStack for Beginners
Introducing OpenStack for Beginners Introducing OpenStack for Beginners
Introducing OpenStack for Beginners
 
OpenStack and Windows
OpenStack and WindowsOpenStack and Windows
OpenStack and Windows
 
Mastering OpenStack - Episode 02 - Simple Architectures
Mastering OpenStack - Episode 02 - Simple ArchitecturesMastering OpenStack - Episode 02 - Simple Architectures
Mastering OpenStack - Episode 02 - Simple Architectures
 
oVirt Introduction
oVirt IntroductionoVirt Introduction
oVirt Introduction
 
Mastering OpenStack - Episode 01 - Simple Architectures
Mastering OpenStack - Episode 01 - Simple ArchitecturesMastering OpenStack - Episode 01 - Simple Architectures
Mastering OpenStack - Episode 01 - Simple Architectures
 
Demistifying open stack storage
Demistifying open stack storageDemistifying open stack storage
Demistifying open stack storage
 
Openstack – An introduction
Openstack – An introductionOpenstack – An introduction
Openstack – An introduction
 
State of Linux Containers in OpenStack
State of Linux Containers in OpenStackState of Linux Containers in OpenStack
State of Linux Containers in OpenStack
 
OpenStack Kolla Introduction
OpenStack Kolla IntroductionOpenStack Kolla Introduction
OpenStack Kolla Introduction
 
Automating OpenStack Deployment with Fuel
Automating OpenStack Deployment with FuelAutomating OpenStack Deployment with Fuel
Automating OpenStack Deployment with Fuel
 
Mastering OpenStack - Episode 05 - Controller Nodes
Mastering OpenStack - Episode 05 - Controller NodesMastering OpenStack - Episode 05 - Controller Nodes
Mastering OpenStack - Episode 05 - Controller Nodes
 
Apache Provisionr (incubating) - Bucharest JUG 10
Apache Provisionr (incubating) - Bucharest JUG 10Apache Provisionr (incubating) - Bucharest JUG 10
Apache Provisionr (incubating) - Bucharest JUG 10
 
Docker Meetup Bangalore - Docker + Openstack
Docker Meetup Bangalore - Docker + OpenstackDocker Meetup Bangalore - Docker + Openstack
Docker Meetup Bangalore - Docker + Openstack
 
Deploying openstack using ansible
Deploying openstack using ansibleDeploying openstack using ansible
Deploying openstack using ansible
 
dodai_grizzly.pdf
dodai_grizzly.pdfdodai_grizzly.pdf
dodai_grizzly.pdf
 
OpenStack Neutron behind the Scenes
OpenStack Neutron behind the ScenesOpenStack Neutron behind the Scenes
OpenStack Neutron behind the Scenes
 

Viewers also liked

New Relic Plugin for Cassandra | Blue Medora
New Relic Plugin for Cassandra | Blue MedoraNew Relic Plugin for Cassandra | Blue Medora
New Relic Plugin for Cassandra | Blue MedoraBlue Medora
 
VMware vROps Management Pack for Hadoop
VMware vROps Management Pack for HadoopVMware vROps Management Pack for Hadoop
VMware vROps Management Pack for HadoopBlue Medora
 
VMware vROps Management Pack for Amazon DynamoDB
VMware vROps Management Pack for Amazon DynamoDBVMware vROps Management Pack for Amazon DynamoDB
VMware vROps Management Pack for Amazon DynamoDBBlue Medora
 
Analyzing SAP Performance with VMware vRealize Operations (vROps)
Analyzing SAP Performance with VMware vRealize Operations (vROps)Analyzing SAP Performance with VMware vRealize Operations (vROps)
Analyzing SAP Performance with VMware vRealize Operations (vROps)Blue Medora
 
Business Automation and Service Delivery Platform for Openstack based cloud p...
Business Automation and Service Delivery Platform for Openstack based cloud p...Business Automation and Service Delivery Platform for Openstack based cloud p...
Business Automation and Service Delivery Platform for Openstack based cloud p...RackNap
 
VMware vROps Management Pack for Amazon RDS
VMware vROps Management Pack for Amazon RDSVMware vROps Management Pack for Amazon RDS
VMware vROps Management Pack for Amazon RDSBlue Medora
 
Software Defined Datacenter
Software Defined DatacenterSoftware Defined Datacenter
Software Defined DatacenterSUSE España
 
DevOps: Arquitectura, Estrategia y Modelo
DevOps: Arquitectura, Estrategia y ModeloDevOps: Arquitectura, Estrategia y Modelo
DevOps: Arquitectura, Estrategia y ModeloSUSE España
 
Automate with Ansible basic (3/e)
Automate with Ansible basic (3/e)Automate with Ansible basic (3/e)
Automate with Ansible basic (3/e)Chu-Siang Lai
 
EMC World 2016 - code.05 Automating your Physical Data Center with RackHD
EMC World 2016 - code.05 Automating your Physical Data Center with RackHDEMC World 2016 - code.05 Automating your Physical Data Center with RackHD
EMC World 2016 - code.05 Automating your Physical Data Center with RackHD{code}
 
Network Automation: Ansible 101
Network Automation: Ansible 101Network Automation: Ansible 101
Network Automation: Ansible 101APNIC
 
Network Automation: Ansible 102
Network Automation: Ansible 102Network Automation: Ansible 102
Network Automation: Ansible 102APNIC
 
Container & kubernetes
Container & kubernetesContainer & kubernetes
Container & kubernetesTed Jung
 
Build cloud like Rackspace with OpenStack Ansible
Build cloud like Rackspace with OpenStack AnsibleBuild cloud like Rackspace with OpenStack Ansible
Build cloud like Rackspace with OpenStack AnsibleJirayut Nimsaeng
 
OpenStack Ansible for private cloud at Kaidee
OpenStack Ansible for private cloud at KaideeOpenStack Ansible for private cloud at Kaidee
OpenStack Ansible for private cloud at KaideeJirayut Nimsaeng
 
Understanding Kubernetes
Understanding KubernetesUnderstanding Kubernetes
Understanding KubernetesTu Pham
 
20170315 Cloud Accelerated Genomics - Tel Aviv / Phoenix
20170315 Cloud Accelerated Genomics - Tel Aviv / Phoenix20170315 Cloud Accelerated Genomics - Tel Aviv / Phoenix
20170315 Cloud Accelerated Genomics - Tel Aviv / PhoenixAllen Day, PhD
 
Automate with Ansible basic (2/e)
Automate with Ansible basic (2/e)Automate with Ansible basic (2/e)
Automate with Ansible basic (2/e)Chu-Siang Lai
 

Viewers also liked (20)

New Relic Plugin for Cassandra | Blue Medora
New Relic Plugin for Cassandra | Blue MedoraNew Relic Plugin for Cassandra | Blue Medora
New Relic Plugin for Cassandra | Blue Medora
 
VMware vROps Management Pack for Hadoop
VMware vROps Management Pack for HadoopVMware vROps Management Pack for Hadoop
VMware vROps Management Pack for Hadoop
 
VMware vROps Management Pack for Amazon DynamoDB
VMware vROps Management Pack for Amazon DynamoDBVMware vROps Management Pack for Amazon DynamoDB
VMware vROps Management Pack for Amazon DynamoDB
 
Analyzing SAP Performance with VMware vRealize Operations (vROps)
Analyzing SAP Performance with VMware vRealize Operations (vROps)Analyzing SAP Performance with VMware vRealize Operations (vROps)
Analyzing SAP Performance with VMware vRealize Operations (vROps)
 
Business Automation and Service Delivery Platform for Openstack based cloud p...
Business Automation and Service Delivery Platform for Openstack based cloud p...Business Automation and Service Delivery Platform for Openstack based cloud p...
Business Automation and Service Delivery Platform for Openstack based cloud p...
 
VMware vROps Management Pack for Amazon RDS
VMware vROps Management Pack for Amazon RDSVMware vROps Management Pack for Amazon RDS
VMware vROps Management Pack for Amazon RDS
 
Ironic - Vietnam OpenStack Technical Meetup #12
Ironic - Vietnam OpenStack Technical Meetup #12Ironic - Vietnam OpenStack Technical Meetup #12
Ironic - Vietnam OpenStack Technical Meetup #12
 
Multi tenancy for docker
Multi tenancy for dockerMulti tenancy for docker
Multi tenancy for docker
 
Software Defined Datacenter
Software Defined DatacenterSoftware Defined Datacenter
Software Defined Datacenter
 
DevOps: Arquitectura, Estrategia y Modelo
DevOps: Arquitectura, Estrategia y ModeloDevOps: Arquitectura, Estrategia y Modelo
DevOps: Arquitectura, Estrategia y Modelo
 
Automate with Ansible basic (3/e)
Automate with Ansible basic (3/e)Automate with Ansible basic (3/e)
Automate with Ansible basic (3/e)
 
EMC World 2016 - code.05 Automating your Physical Data Center with RackHD
EMC World 2016 - code.05 Automating your Physical Data Center with RackHDEMC World 2016 - code.05 Automating your Physical Data Center with RackHD
EMC World 2016 - code.05 Automating your Physical Data Center with RackHD
 
Network Automation: Ansible 101
Network Automation: Ansible 101Network Automation: Ansible 101
Network Automation: Ansible 101
 
Network Automation: Ansible 102
Network Automation: Ansible 102Network Automation: Ansible 102
Network Automation: Ansible 102
 
Container & kubernetes
Container & kubernetesContainer & kubernetes
Container & kubernetes
 
Build cloud like Rackspace with OpenStack Ansible
Build cloud like Rackspace with OpenStack AnsibleBuild cloud like Rackspace with OpenStack Ansible
Build cloud like Rackspace with OpenStack Ansible
 
OpenStack Ansible for private cloud at Kaidee
OpenStack Ansible for private cloud at KaideeOpenStack Ansible for private cloud at Kaidee
OpenStack Ansible for private cloud at Kaidee
 
Understanding Kubernetes
Understanding KubernetesUnderstanding Kubernetes
Understanding Kubernetes
 
20170315 Cloud Accelerated Genomics - Tel Aviv / Phoenix
20170315 Cloud Accelerated Genomics - Tel Aviv / Phoenix20170315 Cloud Accelerated Genomics - Tel Aviv / Phoenix
20170315 Cloud Accelerated Genomics - Tel Aviv / Phoenix
 
Automate with Ansible basic (2/e)
Automate with Ansible basic (2/e)Automate with Ansible basic (2/e)
Automate with Ansible basic (2/e)
 

Similar to Ironic 140622212631-phpapp02

Stateless Hypervisors at Scale
Stateless Hypervisors at ScaleStateless Hypervisors at Scale
Stateless Hypervisors at ScaleAntony Messerl
 
Docker and kubernetes
Docker and kubernetesDocker and kubernetes
Docker and kubernetesDongwon Kim
 
2022-05-03 SoC Interest Group Meeting - Deploying and testing firmware-softwa...
2022-05-03 SoC Interest Group Meeting - Deploying and testing firmware-softwa...2022-05-03 SoC Interest Group Meeting - Deploying and testing firmware-softwa...
2022-05-03 SoC Interest Group Meeting - Deploying and testing firmware-softwa...xiso
 
DevOps Supercharged with Docker on Exadata
DevOps Supercharged with Docker on ExadataDevOps Supercharged with Docker on Exadata
DevOps Supercharged with Docker on ExadataMarketingArrowECS_CZ
 
Juniper Network Automation for KrDAG
Juniper Network Automation for KrDAGJuniper Network Automation for KrDAG
Juniper Network Automation for KrDAGKwonSun Bae
 
Running Applications on the NetBSD Rump Kernel by Justin Cormack
Running Applications on the NetBSD Rump Kernel by Justin Cormack Running Applications on the NetBSD Rump Kernel by Justin Cormack
Running Applications on the NetBSD Rump Kernel by Justin Cormack eurobsdcon
 
Stupid Boot Tricks: using ipxe and chef to get to boot management bliss
Stupid Boot Tricks: using ipxe and chef to get to boot management blissStupid Boot Tricks: using ipxe and chef to get to boot management bliss
Stupid Boot Tricks: using ipxe and chef to get to boot management blissmacslide
 
Using VPP and SRIO-V with Clear Containers
Using VPP and SRIO-V with Clear ContainersUsing VPP and SRIO-V with Clear Containers
Using VPP and SRIO-V with Clear ContainersMichelle Holley
 
Identifying and Supporting 'X-compatible' Hardware Blocks
Identifying and Supporting 'X-compatible' Hardware BlocksIdentifying and Supporting 'X-compatible' Hardware Blocks
Identifying and Supporting 'X-compatible' Hardware BlocksChen-Yu Tsai
 
Easily emulating full systems on amazon fpg as
Easily emulating full systems on amazon fpg asEasily emulating full systems on amazon fpg as
Easily emulating full systems on amazon fpg asRISC-V International
 
OpenIO Summit'17 - ARM, Object Storage and more
OpenIO Summit'17 - ARM, Object Storage and moreOpenIO Summit'17 - ARM, Object Storage and more
OpenIO Summit'17 - ARM, Object Storage and moreOpenIO Object Storage
 
Kubernetes deployment on bare metal with container linux
Kubernetes deployment on bare metal with container linuxKubernetes deployment on bare metal with container linux
Kubernetes deployment on bare metal with container linuxmacchiang
 
Optimizing VM images for OpenStack with KVM/QEMU
Optimizing VM images for OpenStack with KVM/QEMUOptimizing VM images for OpenStack with KVM/QEMU
Optimizing VM images for OpenStack with KVM/QEMUOpenStack Foundation
 
”Bare-Metal Container" presented at HPCC2016
”Bare-Metal Container" presented at HPCC2016”Bare-Metal Container" presented at HPCC2016
”Bare-Metal Container" presented at HPCC2016Kuniyasu Suzaki
 
Beginners guide on how to start exploring IoT 2nd session
Beginners  guide on how to start exploring IoT 2nd sessionBeginners  guide on how to start exploring IoT 2nd session
Beginners guide on how to start exploring IoT 2nd sessionveerababu penugonda(Mr-IoT)
 
Unikernels: Rise of the Library Hypervisor
Unikernels: Rise of the Library HypervisorUnikernels: Rise of the Library Hypervisor
Unikernels: Rise of the Library HypervisorAnil Madhavapeddy
 
Cobbler, Func and Puppet: Tools for Large Scale Environments
Cobbler, Func and Puppet: Tools for Large Scale EnvironmentsCobbler, Func and Puppet: Tools for Large Scale Environments
Cobbler, Func and Puppet: Tools for Large Scale EnvironmentsMichael Zhang
 

Similar to Ironic 140622212631-phpapp02 (20)

Stateless Hypervisors at Scale
Stateless Hypervisors at ScaleStateless Hypervisors at Scale
Stateless Hypervisors at Scale
 
Docker and kubernetes
Docker and kubernetesDocker and kubernetes
Docker and kubernetes
 
2022-05-03 SoC Interest Group Meeting - Deploying and testing firmware-softwa...
2022-05-03 SoC Interest Group Meeting - Deploying and testing firmware-softwa...2022-05-03 SoC Interest Group Meeting - Deploying and testing firmware-softwa...
2022-05-03 SoC Interest Group Meeting - Deploying and testing firmware-softwa...
 
RISC V in Spacer
RISC V in SpacerRISC V in Spacer
RISC V in Spacer
 
DevOps Supercharged with Docker on Exadata
DevOps Supercharged with Docker on ExadataDevOps Supercharged with Docker on Exadata
DevOps Supercharged with Docker on Exadata
 
FreeBSD hosting
FreeBSD hostingFreeBSD hosting
FreeBSD hosting
 
Juniper Network Automation for KrDAG
Juniper Network Automation for KrDAGJuniper Network Automation for KrDAG
Juniper Network Automation for KrDAG
 
Running Applications on the NetBSD Rump Kernel by Justin Cormack
Running Applications on the NetBSD Rump Kernel by Justin Cormack Running Applications on the NetBSD Rump Kernel by Justin Cormack
Running Applications on the NetBSD Rump Kernel by Justin Cormack
 
Stupid Boot Tricks: using ipxe and chef to get to boot management bliss
Stupid Boot Tricks: using ipxe and chef to get to boot management blissStupid Boot Tricks: using ipxe and chef to get to boot management bliss
Stupid Boot Tricks: using ipxe and chef to get to boot management bliss
 
Using VPP and SRIO-V with Clear Containers
Using VPP and SRIO-V with Clear ContainersUsing VPP and SRIO-V with Clear Containers
Using VPP and SRIO-V with Clear Containers
 
Identifying and Supporting 'X-compatible' Hardware Blocks
Identifying and Supporting 'X-compatible' Hardware BlocksIdentifying and Supporting 'X-compatible' Hardware Blocks
Identifying and Supporting 'X-compatible' Hardware Blocks
 
Easily emulating full systems on amazon fpg as
Easily emulating full systems on amazon fpg asEasily emulating full systems on amazon fpg as
Easily emulating full systems on amazon fpg as
 
OpenIO Summit'17 - ARM, Object Storage and more
OpenIO Summit'17 - ARM, Object Storage and moreOpenIO Summit'17 - ARM, Object Storage and more
OpenIO Summit'17 - ARM, Object Storage and more
 
Kubernetes deployment on bare metal with container linux
Kubernetes deployment on bare metal with container linuxKubernetes deployment on bare metal with container linux
Kubernetes deployment on bare metal with container linux
 
Optimizing VM images for OpenStack with KVM/QEMU
Optimizing VM images for OpenStack with KVM/QEMUOptimizing VM images for OpenStack with KVM/QEMU
Optimizing VM images for OpenStack with KVM/QEMU
 
”Bare-Metal Container" presented at HPCC2016
”Bare-Metal Container" presented at HPCC2016”Bare-Metal Container" presented at HPCC2016
”Bare-Metal Container" presented at HPCC2016
 
Beginners guide on how to start exploring IoT 2nd session
Beginners  guide on how to start exploring IoT 2nd sessionBeginners  guide on how to start exploring IoT 2nd session
Beginners guide on how to start exploring IoT 2nd session
 
Unikernels: Rise of the Library Hypervisor
Unikernels: Rise of the Library HypervisorUnikernels: Rise of the Library Hypervisor
Unikernels: Rise of the Library Hypervisor
 
Cobbler, Func and Puppet: Tools for Large Scale Environments
Cobbler, Func and Puppet: Tools for Large Scale EnvironmentsCobbler, Func and Puppet: Tools for Large Scale Environments
Cobbler, Func and Puppet: Tools for Large Scale Environments
 
Cobbler, Func and Puppet: Tools for Large Scale Environments
Cobbler, Func and Puppet: Tools for Large Scale EnvironmentsCobbler, Func and Puppet: Tools for Large Scale Environments
Cobbler, Func and Puppet: Tools for Large Scale Environments
 

Recently uploaded

%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park masabamasaba
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareJim McKeeth
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benonimasabamasaba
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxAnnaArtyushina1
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrandmasabamasaba
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationJuha-Pekka Tolvanen
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...masabamasaba
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2
 
WSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AIWSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AIWSO2
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburgmasabamasaba
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...masabamasaba
 

Recently uploaded (20)

%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
WSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AIWSO2CON 2024 Slides - Unlocking Value with AI
WSO2CON 2024 Slides - Unlocking Value with AI
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 
WSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go PlatformlessWSO2CON2024 - It's time to go Platformless
WSO2CON2024 - It's time to go Platformless
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 

Ironic 140622212631-phpapp02

  • 1. IRONIC OPENSTACK BAREMETAL PROVISIONING SERVICE Hao Meng, Wang IRC: Haomeng whaom@cn.ibm.com June, 2014
  • 2. 2 AGENDA • Bare Metal Provision Domain • Why Provision Bare Metal(BM) • Provision Methods & Scenarios • Key Technologies for BM Provision • PXE ROM & NBP • IPMI Functions • IPMI Block Diagram • IPMI + PXE Provising Workflow • Ironic • About Ironic • Architecture • Conceptual • Logical • Framework • Components • BM Provision Sequence Diagram • Data Model • Images used by Ironic • Commands • How to use Ironic • TripleO
  • 3. 3 Why Provision Bare Metal(BM) • Database/Hadoop hosting (some databases run poorly in a hypervisor) • Single tenant, dedicated hardware for performance, security, dependability and other regulatory requirements • Computing tasks that require access to hardware devices which can’t be virtualized • High-performance computing(HPC) clusters, physical compute nodes • Or, rapidly deploying a cloud infrastructure self, TripleO or others • Cloud scaling out • X86_64, ARM, TILE-Gx16/36/64/100 systems • SoftLayer / Racespace Cloud supports bare-metal as service
  • 4. 4 Provision Methods & Scenarios • Methods • CLONE – ghost/dd • INSTALL – JumpStart/KickStart/OS Installer • CLONE + INSTALL • Scenarios • Diskful • HD/SSD • iSCSI/SAN disk • Diskless • RAM Disk
  • 5. 5 Key Technologies for BM Provision • PXE Preboot Execution Environment (PXE) is part of the Wired for Management (WfM) specification developed by Intel and Microsoft. Booting computers via a network. • NBP Network Bootstrap Program (NBP) is equivalent to GRUB (GRand Unified Bootloader) or LILO (LInux LOader) - loaders which are traditionally used in local booting. Like the boot program in a hard drive environment, the NBP is responsible for loading the OS kernel into memory so that the OS can be bootstrapped over a network. • IPMI Intelligent Platform Management Interface (IPMI) is a standardized computer system interface used by system administrators for out-of-band management of computer systems and monitoring of their operation. • DHCP Using PXE, the BIOS uses DHCP to obtain an IP address for the network interface and to locate the server that stores the network bootstrap program (NBP). • TFTP Trivial File Transfer Protocol (TFTP) is a simple file transfer protocol that is generally used for automated transfer of configuration or boot files between machines in a local environment. In a PXE environment, TFTP is used to download NBP over the network using information from the DHCP server. • iSCSI Internet Small Computer System Interface, uses this to 'dd' the image to target machnie local disk
  • 6. 6 PXE ROM & NBP (bootloader,pxelinux.0) PXE ROM Chip
  • 7. 7 NBP bootloader config file sample default deploy label deploy kernel /tftpboot/76305cdf-a30a-453e-bc92-b3f869a27fd8/deploy_kernel append initrd=/tftpboot/76305cdf-a30a-453e-bc92-b3f869a27fd8/deploy_ramdisk selinux=0 disk=cciss/c0d0,sda,hda,vda iscsi_target_iqn=iqn-76305cdf-a30a-453e-bc92-b3f869a27fd8 deployment_id=76305cdf-a30a-453e-bc92-b3f869a27fd8 deployment_key=UKKQZ3N2AOUJ45NZVB27L25XKR6I57V8 ironic_api_url=http://192.0.2.1:6385 troubleshoot=0 nofb nomodeset vga=normal label boot kernel /tftpboot/76305cdf-a30a-453e-bc92-b3f869a27fd8/kernel append initrd=/tftpboot/76305cdf-a30a-453e-bc92-b3f869a27fd8/ramdisk root=UUID=319005ff-9177-45af- 87db-ada3a1f6dc9f ro nofb nomodeset vga=normal
  • 8. 8 IPMI Functions • power Shortcut to chassis power commands • chassis bootdev Set the boot device • sensor Print detailed sensor information • sol Configure and connect IPMIv2.0 Serial-over-LAN • ...
  • 11. 11 “Ironic is an Incubated OpenStack project which aims to provision bare metal (as opposed to virtual) machines by leveraging common technologies such as PXE boot and IPMI to cover a wide range of hardware, while supporting pluggable drivers to allow vendor-specific functionality to be added.” http://docs.openstack.org/developer/ironic/ About Ironic
  • 15. 15 Ironic Components • Ironic-api • handles the remote api requests • Ironic-conductor • talk with physical machines • Nova compute driver • Implements the nova virt.ComputeDriver. • Direct the calls to Ironic • CLI client • Ironic deployment ramdisk agent • Built by diskimage-builder • Deploy by PXE, talk with Ironic- conductor RAMDISK Agent - https://github.com/openstack/diskimage-builder/tree/master/elements/deploy-ironic
  • 16. 16 Juno Teeth Agent • In Juno release, a new ramdisk agent will be introduced to Ironic by RackSapce. (teeth agent) The new name is Ironic Python Agent • Supports: • Partition disks • Erase disks • Install bootloaders • Install an OS image • Update firmware • Configure RAID and more.... • A new DeployInterface driver will be written to communicate with the new Teeth agent.
  • 17. 17 Ironic BM Provision Sequence Diagram
  • 19. 19 Images used by Ironic ● NBP – Ironic.conf pxe_bootfile_name – default pxelinux.0 ● Ironic Deployment Agent – bm-deploy-kernel / bm-deploy-ramdisk – BM flavor's extra_specs data – baremetal:deploy_kernel_id/baremetal:deploy_ramdisk_id ● User Image – to be deployed to bm – user-image/ – user-image-vmlinuz – user-image-initrd – Images' kernel_id/ramdisk_id ext props •
  • 20. 20 Ironic Commands • node-create - Create a new node. • node-delete - Delete a node. • node-get-console - return the connection information about the console. • node-list - list nodes. • node-set-console-mode - Enable or disable the console access. • node-set-power-state - Power the node on or off. • node-set-provision-state - Provision or tear down a node. • node-show - Show a node. • node-update - Upate a node. • node-validate - Validate the node driver interfaces.
  • 21. 21 Ironic Commands • port-create - Create a new port. • port-delete - Delete a port. • port-list - List ports. • port-show - Show a port. • port-update - Update a port. • chassis-create - Create a new chassis. • chassis-delete - Delete a chassis. • chassis-list - List chassis. • chassis-node-list - List the nodes contained in the chassis. • chassis-show - Show a chassis. • chassis-update - Update a chassis. • driver-list - List drivers. • driver-show - Show a driver.
  • 22. 22 How to use Ironic • Install Ironic - Try with devstack or TripleO's Devtest, it supports Ironic for long time – http://docs.openstack.org/developer/ironic/dev/dev-quickstart.html#deploying-ironic-with-devstack – https://wiki.openstack.org/wiki/Tuskar/Devtest • Setup the compute node's nova.conf • compute_driver = ironic.nova.virt.ironic.driver.IronicDriver • scheduler_host_manager = ironic.nova.scheduler.ironic_host_manager.IronicHostManager • Setup tftp folder and prepare pxe boot loader file • # cp pxelinux.0 /YOUR_TFTP_FOLDER/ • Prepare the baremetal flavor • # nova flavor-create <name> <id> <ram> <disk> <vcpus> • # nova flavor-key baremetal set "cpu_arch"="$ARCH" "baremetal:deploy_kernel_id"="$deploy_kernel_id" "baremetal:deploy_ramdisk_id"="$deploy_ramdisk_id" • Register these nodes with correct drivers • # ironic node-create driver=pxe_ipmitool • Register the ports information • # ironic port-create -a aa:bb:cc:dd:ee:ff -n 76305cdf-a30a-453e-bc92-b3f869a27fd8 • Nova boot to kick off the baremetal provision • Check node's provision_state/power_state value • # ironic node-show 76305cdf-a30a-453e-bc92-b3f869a27fd8
  • 23. 23 TripleO • TripleO = OpenStack on OpenStack • INFO: May 2014 at the Atlanta Summit: both RedHat's (InStack) and HP's (Helion) OpenStack distributions are now based on TripleO
  • 24. 24 TripleO – Covers full DevOps TripleO = NovaBM/Ironic + os-collect-config + os-apply-config + os-refresh-config + os-cloud-config + diskimage-builder (dib) + tripleo-image-elements (dib) + tripleo-heat-elements (dib) + Tuskar(tuskar/tuskarui/python-tuskarclient)
  • 25. 25 TripleO – Block Diagram v
  • 26. 26 PC Seed VM Undercloud Overcloud Controller Overcloud Compute Overcloud Compute Workload Workload Workload $ heat stack-create undercloud $ heat stack-create overcloud $ heat stack-create workload Seed / under / over Clouds in TripleO
  • 27. 27 References • Ironic wiki - https://wiki.openstack.org/wiki/Ironic • PXE Spec - http://download.intel.com/design/archives/wfm/downloads/pxespec.pdf • IPMI overview - http://www.intel.com/content/dam/www/public/us/en/documents/product- briefs/ipmi-overview.pdf • IPMI Spec - http://www.intel.com/content/www/us/en/servers/ipmi/ipmi-specifications.html • TripleO - https://wiki.openstack.org/wiki/TripleO