• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Red Hat Forum Tokyo - OpenStack Architecture
 

Red Hat Forum Tokyo - OpenStack Architecture

on

  • 4,855 views

This was presented at the Red Hat Forum in Tokyo, November 2012. It's a basic getting started with OpenStack using RDO. It's the same as the OpenStack meetups presentation from November 2012

This was presented at the Red Hat Forum in Tokyo, November 2012. It's a basic getting started with OpenStack using RDO. It's the same as the OpenStack meetups presentation from November 2012

Statistics

Views

Total Views
4,855
Views on SlideShare
4,855
Embed Views
0

Actions

Likes
0
Downloads
44
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Red Hat Forum Tokyo - OpenStack Architecture Red Hat Forum Tokyo - OpenStack Architecture Presentation Transcript

    • Deploying RDO on Red Hat Enterprise Linux Dan Radez | Sr. Software Engineer, RED HAT
    • What is OpenStack ● Cloud/Virtualization Platform ● Designed for standard hardware ● OpenSource
    • Overview
    • Red Hat's Community OpenStack openstack.redhat.com
    • PackStack: Installation Red Hat developed OpenStack installer Deployment options Features ● Interactively ● Single-host install ● Answer file ● Multi-host install ● Quick Start ● RHOS, RDO, EPEL ● All-in-one
    • PackStack: Installation Install Defaults ● MySQL ● Qpid ● Swift Not Installed (--os-swift-install=y) ● Neutron (--os-neutron-install=n)
    • PackStack: Installation Install OpenStack
    • Killing time while PackStack works magic Relationship between OpenStack services
    • Killing time while PackStack works magic Relationship between OpenStack services
    • Killing time while PackStack works magic Relationship between OpenStack services
    • Killing time while PackStack works magic Relationship between OpenStack services
    • Killing time while PackStack works magic Relationship between OpenStack services
    • Killing time while PackStack works magic Relationship between OpenStack services
    • Killing time while PackStack works magic Relationship between OpenStack services
    • Killing time while PackStack works magic Relationship between OpenStack services
    • Dashboard: Web Interface
    • Dashboard: Web Interface ● web-based interface for managing OpenStack services ● modular design for interfacing with other projects ● includes interface for all core components
    • Dashboard: Web Interface
    • Dashboard: Web Interface
    • Dashboard: Web Interface Login to the Dashboard http://192.168.122.101/
    • Help! $ keystone help $ keystone help user-create $ glance help $ glance help image-create $ nova help $ nova help boot
    • Keystone: Identity Management
    • Keystone: Identity Management ● centralized identity service ● central catalog of services Multiple forms of authentication ● User name and password ● Token-based systems ● Amazon Web Services style logins
    • Keystone: Identity Management Login as admin [root@control ~]# cat keystonerc_admin export OS_USERNAME=admin export OS_TENANT_NAME=admin export OS_PASSWORD=5ffbe9d2a38d4a48 export OS_AUTH_URL=http://192.168.122.101:35357/v2.0/ export PS1="[u@h W(keystone_admin)]$ " [root@control ~]# source keystonerc_admin [root@control ~(keystone_admin)]#
    • Keystone: Identity Management Get a token / troubleshooting auth [root@control ~(keystone_admin)]# keystone token-get +­­­­­­­­­­­+­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­+ |  Property |              Value               | +­­­­­­­­­­­+­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­+ |  expires  |       2013­06­07T19:22:06Z       | |     id    | e50158f737f14791ae7831c955524de2 | | tenant_id | 70784578887b4468adacd92f2f376bc9 | |  user_id  | f4270a7b46af467892173a02d9cd49d4 | +­­­­­­­­­­­+­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­+
    • Keystone: Identity Management Add a User [root@control ~]# keystone user-create --name radez --pass supersecretpass id: 849616035d654b9b9a8cc38b10284a52 [root@control ~]# keystone role-create --name role1 id: 8ab4a27031084100afbafc0f95a47170 [root@control ~]# keystone tenant-create --name tenant1 Id: 427c01f33fcf4feb930f26dd550a14e0
    • Keystone: Identity Management Add a User [root@control ~]# keystone user-role-add --user-id radez --role-id role1 --tenant-id tenant1 [root@control ~]# keystone user-list [root@control ~]# keystone role-list [root@control ~]# keystone tenant-list [root@control ~]# keystone user-role-list [root@control ~]# keystone endpoint-list
    • Keystone: Identity Management Login as user [root@control ~]# cp keystonerc_admin keystonerc_radez export OS_USERNAME=radez export OS_TENANT_NAME=tenant1 export OS_PASSWORD=supersecretpass export OS_AUTH_URL=http://192.168.122.101:35357/v2.0/ export PS1="[u@h W(keystone_radez)]$ " [root@control ~]# source keystonerc_radez [root@control ~(keystone_radez)]# keystone token-get [root@control ~(keystone_radez)]# source keystonerc_admin [root@control ~(keystonerc_admin)]#
    • Keystone: Identity Management Add a user
    • Glance: Image Management
    • Glance: Image Management ● registry for virtual machine images ● images used as templates for new servers Add an image [root@control ~]# glance image-create --name cirros --is-public 1 --disk-format qcow2 --container-format bare --file /mnt/cirros-0.3.0-x86_64-disk.img id: d3d1f38e-3f2c-4f45-91e1-cb4535f62d10 [root@control ~]# glance image-list
    • Glance: Image Management Image Building ● Oz ● appliance-creator ● Native glance builder in the works ● Manually (launch installer, import before first boot) Build Notes: ● Include cloudinit for post boot configuration
    • Glance: Image Management Add an image
    • Neutron: Networking
    • Neutron: Networking ● networking as a service ● built in modular architecture Features ● Single or Multiple host deployment ● virtual network, subnet, and port abstractions ● Plugin architecture supports many network technologies
    • Neutron: Networking Add a network
    • Nova: Instance Management
    • Nova: Instance Management ● manages virtual machines on nodes ● provides virtual servers on demand Design Features ● Designed to scale horizontally ● Designed for standard hardware
    • Nova: Instance Management Boot an instance [root@control ~]# nova flavor-list [root@control ~]# nova keypair-add --pub-key .ssh/id_rsa.pub mykey [root@control ~]# nova keypair-list mykey | 84:6e:28:d3:75:17:ab:25:4d:f3:0d:61:93:55:ee:e2 [root@control ~]# nova image-list [root@control ~]# nova boot --flavor 1 --key_name mykey --image cirros my_instance [root@control ~]# nova list
    • Nova: Instance Management Boot an Instance
    • Nova: Instance Management Communicate with the instance [root@control ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 BOOTPROTO=static NM_CONTROLLED="no" ONBOOT=yes TYPE=Ethernet [root@control ~]# cat /etc/sysconfig/network-scripts/ifcfg-br-ex DEVICE=br-ex BOOTPROTO=static IPADDR=192.168.122.101 GATEWAY=192.168.122.1 NETMASK=255.255.255.0 NM_CONTROLLED="no" ONBOOT=no
    • Nova: Instance Management Communicate with the instance [root@control ~]# ovs-vsctl add-port br-ex eth0 && service network restart [root@control ~]# ovs-vsctl show Bridge br-ex Port br-ex Interface br-ex type: internal Port "eth0" Interface "eth0"
    • Nova: Instance Management Communicate with the instance [root@control ~]# ping 192.168.122.3 PING 192.168.122.3 (192.168.122.3) 56(84) bytes of data. 64 bytes from 192.168.122.3: icmp_seq=2 ttl=63 time=0.668 ms [root@control ~]# ssh root@192.168.122.3 The authenticity of host '192.168.122.3 (192.168.122.3)' can't be established. RSA key fingerprint is 38:49:f2:67:80:11:31:84:1f:b1:79:df:5f:e4:e5:f7. Are you sure you want to continue connecting (yes/no)? Yes Warning: Permanently added '192.168.122.3' (RSA) to the list of known hosts. $
    • Nova: Instance Management Allow external access
    • Cinder: Block Storage
    • Cinder: Block Storage ● manages persistent block storage volumes ● snapshots can be taken Create and attach a volume [root@control ~]# cinder create 1 id: 4d6cbb1f-5873-4357-99c7-8ae0502e6de5 [root@control ~]# nova volume-attach my_instance 4d6cbb1f-5873-4357-99c7-8ae0502e6de5 auto
    • Cinder: Block Storage Mount a volume [root@control ~]# ssh -i .ssh/id_rsa root@192.168.122.3 my_instance$ sudo -i my_instance# mkfs.ext4 /dev/vdb my_instance# mkdir -p /mnt/volume my_instance# mount /dev/vdb /mnt/volume my_instance# touch /mnt/volume/test.txt my_instance# umount /mnt/volume [root@control ~]# nova volume-detach my_instance 4d6cbb1f-5873-4357-99c7-8ae0502e6de5
    • Cinder: Block Storage Create, attach and mount a volume
    • Swift: Object Storage
    • Swift: Object Storage Install Swift /root/packstack-answers-20130614-091000.txt CONFIG_SWIFT_INSTALL=n [root@control ~]# packstack --answer-file packstack.txt Generating a packstack answer file [root@control ~]# packstack --gen-answer-file answers.txt
    • Swift: Object Storage ● allows users to store and retrieve files ● distributed architecture to allow for horizontal scaling ● provides redundancy as failure-proofing ● data replication is managed by software
    • Swift: Object Storage Upload an object [root@control ~]# swift stat [root@control ~]# swift list [root@control ~]# swift upload test packstack-answers.txt [root@control ~]# swift list [root@control ~]# swift list test [root@control ~]# swift upload test /etc/motd [root@control ~]# swift list test
    • Swift: Object Storage Create a container & upload an object
    • Review
    • Resources ● ● RDO: openstack.redhat.com https://access.redhat.com/knowledge/docs/enUS/Red_Hat_OpenStack ● OpenStack.org ● TryStack.org ● Puppetlabs.com ● Djangoproject.com ● Oz: https://github.com/clalancette/oz/ ● https://github.com/redhat-openstack/image-building-poc ● http://radez.fedorapeople.org/RHForum_slides1.pdf