準備からKeystoneのインストールは こちら
Cinder Glanceのインストールは こちら
Openstackインストールメモは今回で終了です。もうちょいだあ。
novaをインストール
yum -y install openstack-nova
コンフィグバックアップ
cp -a /etc/nova /etc/nova_bak
設定を入れる。ぽちっとな。
openstack-config --set /etc/nova/nova.conf DEFAULT vervose true openstack-config --set /etc/nova/nova.conf DEFAULT my_ip 192.168.24.61 openstack-config --set /etc/nova/nova.conf DEFAULT allow_admin_api true openstack-config --set /etc/nova/nova.conf DEFAULT api_paste_config /etc/nova/api-paste.ini openstack-config --set /etc/nova/nova.conf DEFAULT instances_path /var/lib/nova/instances openstack-config --set /etc/nova/nova.conf DEFAULT compute_driver libvirt.LibvirtDriver openstack-config --set /etc/nova/nova.conf DEFAULT rootwrap_config /etc/nova/rootwrap.conf openstack-config --set /etc/nova/nova.conf DEFAULT multi_host true openstack-config --set /etc/nova/nova.conf DEFAULT send_arp_for_ha true openstack-config --set /etc/nova/nova.conf DEFAULT libvirt_nonblocking True openstack-config --set /etc/nova/nova.conf DEFAULT libvirt_inject_partition -1 openstack-config --set /etc/nova/nova.conf DEFAULT start_quests_on_host_boot true openstack-config --set /etc/nova/nova.conf DEFAULT resume_guests_state_on_host_boot true openstack-config --set /etc/nova/nova.conf DEFAULT logdir /var/log/nova openstack-config --set /etc/nova/nova.conf DEFAULT lock_path /var/lib/nova/tmp openstack-config --set /etc/nova/nova.conf DEFAULT libvirt_use_virtio_for_bridges True openstack-config --set /etc/nova/nova.conf DEFAULT network_manager nova.network.manager.FlatDHCPManager openstack-config --set /etc/nova/nova.conf DEFAULT dhcpbridge_flagfile etc/nova/nova.conf openstack-config --set /etc/nova/nova.conf DEFAULT dhcpbridge /usr/bin/nova-dhcpbridge openstack-config --set /etc/nova/nova.conf DEFAULT public_interface br100 openstack-config --set /etc/nova/nova.conf DEFAULT flat_interface eth0 openstack-config --set /etc/nova/nova.conf DEFAULT flat_network_bridge br100 openstack-config --set /etc/nova/nova.conf DEFAULT fixed_range 10.0.0.0/24 openstack-config --set /etc/nova/nova.conf DEFAULT flat_network_dhcp_start 10.0.0.2 openstack-config --set /etc/nova/nova.conf DEFAULT network_size 255 openstack-config --set /etc/nova/nova.conf DEFAULT force_dhcp_release True openstack-config --set /etc/nova/nova.conf DEFAULT injected_network_template /usr/share/nova/interfaces.template openstack-config --set /etc/nova/nova.conf DEFAULT flat_injected false openstack-config --set /etc/nova/nova.conf DEFAULT use_ipv6 false openstack-config --set /etc/nova/nova.conf DEFAULT novncproxy_base_url http://192.168.24.61:6080/vnc_auto.html openstack-config --set /etc/nova/nova.conf DEFAULT xvpvncproxy_base_url http://192.168.24.61:6081/console openstack-config --set /etc/nova/nova.conf DEFAULT vncserver_proxyclient_address 127.0.0.1 openstack-config --set /etc/nova/nova.conf DEFAULT vncserver_listen 0.0.0.0 openstack-config --set /etc/nova/nova.conf DEFAULT vnc_keymap ja openstack-config --set /etc/nova/nova.conf DEFAULT scheduler_driver nova.scheduler.filter_scheduler.FilterScheduler openstack-config --set /etc/nova/nova.conf DEFAULT s3_host take openstack-config --set /etc/nova/nova.conf DEFAULT use_cow_images yes openstack-config --set /etc/nova/nova.conf DEFAULT image_service nova.image.glance.GlanceImageService openstack-config --set /etc/nova/nova.conf DEFAULT glance_api_servers take:9292 openstack-config --set /etc/nova/nova.conf DEFAULT rpc_backend nova.openstack.common.rpc.impl_qpid openstack-config --set /etc/nova/nova.conf DEFAULT qpid_hostname take openstack-config --set /etc/nova/nova.conf DEFAULT qpid_port 5672 openstack-config --set /etc/nova/nova.conf DEFAULT sql_connection mysql://nova:password@take/nova openstack-config --set /etc/nova/nova.conf DEFAULT enabled_apis ec2,osapi_compute openstack-config --set /etc/nova/nova.conf DEFAULT volume_api_class nova.volume.cinder.API openstack-config --set /etc/nova/nova.conf DEFAULT auth_strategy keystone openstack-config --set /etc/nova/nova.conf DEFAULT keystone_ec2_url http://take:5000/v2.0/ec2tokens openstack-config --set /etc/nova/nova.conf DEFAULT firewall_driver nova.virt.libvirt.firewall.IptablesFirewallDriver openstack-config --set /etc/nova/nova.conf keystone_authtoken admin_tenant_name service openstack-config --set /etc/nova/nova.conf keystone_authtoken admin_user nova openstack-config --set /etc/nova/nova.conf keystone_authtoken admin_password nova openstack-config --set /etc/nova/api-paste.ini filter:authtoken paste.filter_factory keystoneclient.middleware.auth_token:filter_factory openstack-config --set /etc/nova/api-paste.ini filter:authtoken auth_host take openstack-config --set /etc/nova/api-paste.ini filter:authtoken auth_port 35357 openstack-config --set /etc/nova/api-paste.ini filter:authtoken auth_protocol http openstack-config --set /etc/nova/api-paste.ini filter:authtoken admin_tenant_name service openstack-config --set /etc/nova/api-paste.ini filter:authtoken admin_user nova openstack-config --set /etc/nova/api-paste.ini filter:authtoken admin_password nova openstack-config --set /etc/nova/api-paste.ini filter:authtoken signing_dirname /tmp/keystone-signing-nova openstack-config --set /etc/nova/api-paste.ini filter:authtoken auth_version v2.0
computeの設定、KVM指定。
vi /etc/nova/nova-compute.conf [default] libvirt_type=kvm
novaのデータベースを作成するぼし。
mysql> drop database if exists nova; Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> create database nova character set utf8; Query OK, 1 row affected (0.00 sec) mysql> grant all privileges on nova.* to nova identified by'password'; Query OK, 0 rows affected (0.00 sec) mysql> grant all privileges on nova.* to nova@localhost identified by'password'; Query OK, 0 rows affected (0.00 sec) mysql> grant all privileges on nova.* to nova@take identified by'password'; Query OK, 0 rows affected (0.00 sec) mysql> quit
nova-manage db sync
novaはこれで終わり!どんどん雑になっている木がする。
Horizonのインストール
yum -y install openstack-dashboard openstack-nova-novncproxy service openstack-nova-novncproxy start chkconfig openstack-nova-novncproxy on
開けとく必要のあるポートを開ける。
sed -i '10a-A INPUT -m state --state NEW -m tcp -p tcp --dport 11211 -j ACCEPT' /etc/sysconfig/iptables sed -i '10a-A INPUT -m state --state NEW -m tcp -p tcp --dport 9292 -j ACCEPT' /etc/sysconfig/iptables sed -i '10a-A INPUT -m state --state NEW -m tcp -p tcp --dport 8776 -j ACCEPT' /etc/sysconfig/iptables sed -i '10a-A INPUT -m state --state NEW -m tcp -p tcp --dport 6080 -j ACCEPT' /etc/sysconfig/iptables sed -i '10a-A INPUT -m state --state NEW -m tcp -p tcp --dport 5672 -j ACCEPT' /etc/sysconfig/iptables sed -i '10a-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT' /etc/sysconfig/iptables sed -i '10a-A INPUT -m state --state NEW -m tcp -p udp --dport 3206 -j ACCEPT' /etc/sysconfig/iptables sed -i '10a-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT' /etc/sysconfig/iptables sed -i '10a-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT' /etc/sysconfig/iptables service iptables restart
apache再起動
service httpd restart service openstack-nova-novncproxy restart chkconfig httpd on chkconfig openstack-nova-novncproxy on
環境変数の設定、クローズドでなければユーザーを作ってそっちでやってください。
cat << KEYSTONERC | tee /root/keystonerc > /dev/null export OS_NO_CACHE=True export ADMIN_TOKEN=ADMIN export OS_USERNAME=admin export OS_PASSWORD=secrete export OS_TENANT_NAME=demo export OS_AUTH_URL=http://take:35357/v2.0/ KEYSTONERC cat << NOVARC | tee -a /etc/bashrc > /dev/null . /root/keystonerc NOVARC
内部ネットワークの構成
nova-manage network create \ --label nova_network1 \ --fixed_range_v4=10.0.0.0/25 \ --bridge_interface=eth0 \ --multi_host=T
確認してみよう。
nova-manage network list id IPv4 IPv6 start address DNS1 DNS2 VlanID project uuid 1 10.0.0.0/25 None 10.0.0.2 8.8.4.4 None None None 7235f28f-bdec-4c9c-bd2c-33ead61ab4be
フローティング用のIPアドレスを設定します。なにかというと外にNATでつなげられるIP。
また言い換えるとBBルーターとかCTUからDHCPで割り振られているIPアドレスの範囲でごわす。
nova-manage floating create --ip_range=192.168.24.150/29
確認くん。
nova-manage floating list [root@take centos]# nova-manage floating list None 192.168.24.145 None nova br100 None 192.168.24.146 None nova br100 None 192.168.24.147 None nova br100 None 192.168.24.148 None nova br100 None 192.168.24.149 None nova br100 None 192.168.24.150 None nova br100
キーペアの設定、たこ焼きが食べたくなってきた。
cd /root nova keypair-add mykey > mykey chown root:root mykey chmod 600 mykey
確認くん。
nova keypair-list [root@take ~]# nova keypair-list +-------+-------------------------------------------------+ | Name | Fingerprint | +-------+-------------------------------------------------+ | mykey | 1f:4c:d4:f9:b5:34:6d:65:08:04:ca:ea:25:20:ac:45 | +-------+-------------------------------------------------+
セキュリティグループの設定
nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0 nova secgroup-add-rule default tcp 22 22 0.0.0.0/0
さて、これで設定は完了しました。お疲れ様です。
UIにアクセスしてインスタンスを作成してみよう。
http://それぞれのローカルIP/dashboard デフォルトではユーザ名がadminでパスワードがsecreteです。
ログインしたら左のメニューのプロジェクト>インスタンスに進んで
右上のインスタンスの起動を押すと作成画面がでます。
qcow2だったらもとのイメージの設定にもよりますが、はじめはコンソールから設定を済ませましょう。
これがフリーで使えるのだから驚きだわ。世の中が変わっていってるって感じっすか。。
Windowsもちょっと安くなってきたし。
では、これで終わりね。
参考サイト
OSSオープンソースをもっと身近なものに Openstackインストール手順
さくらのナレッジ OpenStack 2012.2で追加された新機能「Cinder」を使う
TIMEZONE PST Hatena BRANCH EPEL版 OpenStack folsomインストール(cinder編)