So-net無料ブログ作成
仮想環境 ブログトップ
前の10件 | -

【趣味の仮想環境】OpenStack 三たび:うまくいくNewton版(2) [仮想環境]

◆release-openstack-newton‥Ocataとどこが違うのか不明
というか、ダッシュボードでNWまわりが違う。
SSHをつなぎなおして、

yum install -y centos-release-openstack-newton
yum update -y
yum install -y openstack-packstack

がちゃがちゃ表示される。
次はans.txtの落とし込み。

packstack --gen-answer-file=ans.txt \
--default-password=vmpass \
--os-heat-install=y \
--ntp-servers=ntp.nict.jp \
--os-neutron-ovs-bridge-mappings=ext-net:br-ex \
--os-neutron-ovs-bridge-interfaces=br-ex:enp0s3

えっと、これではCONFIG_CINDER_VOLUMES_SIZE=20Gなので適当にviでans.txtを変える。
もちろん、好きなサービスを入れてもいいが
CONFIG_MANILA_INSTALL=yはダメ、のはず
CONFIG_HORIZON_SSL=yはダメというかめんどくさい。
DEMOはいれておいて大丈夫。なぜだ。

packstack --answer-file=ans.txt

で、しばし待たれよ。

◆デモ用NWを削除、新NWを登録
http://192.168.1.159 で画面から消してもいいけど、せっかく教科書が書いていてくれるので、コマンドラインから一気に設定。SSHにコピペ。

source /root/keystonerc_admin
neutron router-gateway-clear router1
neutron router-interface-delete router1 private_subnet
openstack router delete router1
openstack network delete private
openstack network delete public
openstack network create public --external
openstack subnet create public_subnet \
--subnet-range 192.168.1.0/24 \
--allocation-pool start=192.168.1.162,end=192.168.1.180 \
--gateway 192.168.1.1 \
--no-dhcp \
--network public

source /root/keystonerc_demo
openstack network create private
openstack subnet create private_subnet \
--subnet-range 10.0.0.0/24 \
--allocation-pool start=10.0.0.2,end=10.0.0.254 \
--gateway 10.0.0.1 \
--network private
openstack router create router1
neutron router-gateway-set router1 public
neutron router-interface-add router1 private_subnet

あとはいつもと同じなので省略だよ!
というか、今まで何だったんだろう、他のサイトの紹介記事は何なんだろう、というくらい簡単。

demoユーザーでもadminでもいい。adminの場合、上のprivateは使えないので、自分で192.168.2.0/24あたりでも何でもいいから作る。
CentOSのイメージ入れるならadminからでないとダメ。
そうそう、あと書いておかないとダメなのは、カスタマイズ・スクリプトのところ、
#cloud-config
password: vmpass
chpasswd: { expire: False }
ssh_pwauth: True
だけど、これは何度か立ち上げたり落としたり、しばらく待たないと効き目が表れないceping.PNGceping2.PNG
localhostとか、host-ほにゃららの間はダメ。
なんだろうな、こういうの。

なお右の画像は、上のほうがOpenStackのインスタンスから外にpingした例。下のほうはWindowsからSSHでつないだ例。うまくいっている証拠として一応。
nice!(1) 
共通テーマ:パソコン・インターネット

【趣味の仮想環境】OpenStack 三たび:うまくいくNewton版 [仮想環境]

◆おもいつきでVersionを落とす:Newton
ひょっとして、Ocataだからうまくいかないのかも。そうに違いない。
何の根拠もないが、Devstackやらkollaやらをやってみると、うまくいかないVersionの組み合わせがあるに違いないとうすうす感じる。Ocataでpackstackはダメなのかも(注:ダメとは言っていない)
なので、「OpenStack Newton環境の構築(Packstack使用)」 http://qiita.com/lychee3/items/e8882a4e98d1f7aeda23
に、基本的に従ってみる。

◆設定メモ1
CentOSは指示に従ってCPUは2つ、メモリー8G以上、HDD200G(は多すぎ)、
NWはブリッジ接続、プロミスキャスモードは「すべて許可」、
VerはCentOS-7-x86_64-DVD-1611.iso
で、インストール。
インストール時に、NWを編集する。
「この接続が利用可能になったときは自動的に接続する」
IP固定:192.168.1.159、ネットマスクは24 GWを192.168.1.1、DNSはいらないかもしれないけど8.8.8.8
HDDは面倒だから/homeを削除。容量をrootに振る。ここはオリジナル(?)。
SECURITY POLICYは解除。
ユーザー作成、rootパスワード設定。どうせ全部centos。

◆設定メモ2
立ち上がると、ブリッジ接続なのでWindowsのPowerShellからSSHできる。kankyou.PNG
Windows版OpenSSHはこちら。
https://github.com/PowerShell/Win32-OpenSSH/releases
解凍してPATHを通す。環境変数に書き足す。
なぜSSHでつなぐのか‥。しばらくわからなかったけど(あほか)、要はWindowsだとCopy&Pasteで行けちゃうってこと。

◆設定メモ3
これをコピペ。その後SSHでつなぎなおし
yum -y install ntp
systemctl start ntpd
systemctl enable ntpd
systemctl disable firewalld
systemctl stop firewalld
systemctl disable NetworkManager
systemctl stop NetworkManager
systemctl enable network
systemctl start network
setenforce 0
echo "LANG=en_US.utf-8" > /etc/environment
echo "LC_ALL=en_US.utf-8" >> /etc/environment
reboot

(続く)
nice!(0) 
共通テーマ:パソコン・インターネット

【趣味の仮想環境】OpenStack 再び:Devstack(3) [仮想環境]

◆DevStackは評価用
「top画面が表示されました」的な終わり方をする開設サイトは怪しい、インスタンス立ち上げて、sshでつないで最後までやったんか?と前に書いた。DevStackもそれが多く、最後の最後で参考にならない。
そういうのに限って延々とLog貼ってあったり、設定を全コピーしてあったり。
あと、バージョン違いで差が大きい。rejoin-stack.shなんてものはもうない。
そして、評価用なので、再起動すると壊れる。このことを書いてあるサイトは少ない。
ただし、Devstack はホストOSの再起動後に自動的に OpenStack 環境が実行されません。あくまで開発用の環境を何度もインストールする為のツールと考えて下さい。https://openstack.jp/how_to_deploy

◆再起動用
stack.shだと初めからやりなおし。それでは毎度毎度時間がかかってやってられないので、
local.confに
OFFLINE=True
を入れておく。これで少なくとも落とし直しがなくなって速い。でもOpenStack上で定義したインスタンスetcは全チャラ。
それでは堪らないので、シャットダウンしないで、VirtualBoxを「保存」にして落とす。

しかし、これで何をどう評価するのか。動きました!ってだけ。

次いこう次、こんどはNewtonにバージョン落とす編。
nice!(0) 
共通テーマ:パソコン・インターネット

【趣味の仮想環境】OpenStack 再び:Devstack(2) [仮想環境]

◆あとは普通のOpenStack
publicNWは、すでにもうあるので、これを使うことに。
privateNWを、IPはなんでもいいので作る。192.168.2.0/24とか。IPの範囲は192.168.2.2,192.168.2.254とか。
で、ルーターを定義して、結合。こことか、それ以降はpackstackのときとおなじ。
一応書いておくと、
セキュリティグループにallTCPとICMPを、受信送信ともなんでもOKで設定。
キーペアは、前に作っているやつの.pubをなんでもコピペ。PCのダウンロードフォルダーか、C:\Users\<ユーザー>\.sshにある。
FloatingIPも用意しておく。
カスタマイズスクリプトは
#cloud-config
password: vmpass
chpasswd: { expire: False }
ssh_pwauth: True
と、いつものやつ。これで少なくとも立ち上がるはず‥とおもいきや、容量が足らずCentOSが動かない

◆CirrOSというもの
そんなはずはないのだが‥。だが、とりあえず備え付けのCirrOSでやってみる。これはかなり小さい。こちらはあっさり動く。

cirros_ub.pngdevstping.PNGcirros2_2.PNG動いたら、あらかじめ用意していたFloatingIPをセット。すると、なんとubuntuのサイドバーにcirrosのフォルダーが、3つも‥3つある必要はないのだが。
で、ssh接続も可能。ssh cirros@、パスワードはデフォルトでcubswin:) この:)が日本語キーボードには天敵。 ではWindowsのPowerShellから、sshが届くか?と思ったがうまくいかない。user/passwordが通らない。 一旦、ubuntuにsshして、そこからさらにcirrosにsshなら行ける。なんとなく釈然としないが、まあそんなものなのだろう。一応これでミッションはOKと言いたいが、なんとDevStackは親VMをshutdownすると全部チャラになる。おっと‥.。なんだって?もう一度言ってみろって。
nice!(0) 
共通テーマ:パソコン・インターネット

【趣味の仮想環境】OpenStack 再び:Devstackのばあい [仮想環境]

◆Yet another OpenStack deployment "Devstack"
次いこう次(小町風)。
RDO式、つまりpackstackはもういいかげん飽きてきたので、Devstackでやってみる。
というか、こちらが本当は老舗のようだが。
元となるネタがないとどうにもならないので、今回は
第398回 VirtualBoxでDevStackを利用する。 http://gihyo.jp/admin/serial/01/ubuntu-recipe/0398
のシナリオでやってみる。しかしこれが‥まあ。なんというか。

◆ubuntu族
超偏見だが、ubuntuは熱狂的なサポーター?が多く、同じdebian系からも揶揄されているケースが散見される。そんなことはない?
それはともかく、ubuntuのインストール。Ubuntu 16.04 LTSを探して入れる。
こちら。 https://www.ubuntulinux.jp/News/ubuntu1604-ja-remix
もちろん、最新は17.04なのだが、これだとdevstackが入らない。チェックを外して無理やりインストールすると動くように見せてやはり結局動かない。こう書くと簡単だが、OpenStack立ち上がってからエラーが出るので若干の衝撃はある。
それにしてもubuntuのDesktopはなんだか使い(以下略)

◆virtualboxの設定
順番は前後するが、この参考文書のやり方だと、ネットワークはNAT。ただしポートフォワードを設定して、2022→22、2080→80、6080→6080を入れておく。なるほどその手もあったか。ubuntuPort.PNG
さすがにCentosと違って多少時間がかかる。

◆devstackを入れる
言われた通り。ここをlibertyにするのはシャクにさわるので、ocataで行ってみる。
sudo apt-get install git
git clone -b stable/ocata https://git.openstack.org/openstack-dev/devstack

これで、/etcにdevstackフォルダーができるので、cdで移動。
local.confをviで編集。
必要なのは
ADMIN_PASSWORD=vmpass
DATABASE_PASSWORD=vmpass
RABBIT_PASSWORD=vmpass
SERVICE_PASSWORD=vmpass
HOST_IP=10.0.2.15
↑これはもともとあったかも

で、あとあと効いてくるので(お手本に記載はないけど)
OFFLINE=True
書き換えたら:wq。
あとはよくわからないまま、
devstack/lib/novaに、
iniset $NOVA_CONF DEFAULT vnc_keymap "ja"
を追加。この辺本当にわからん。なくてもいいのかも。ubuntuja.PNG
これで準備はほぼ終わり。devstackの位置から
./stack.sh
でインストール開始。インストール時間はかかるがわりと問題なく終わるはず。kollaとはかなりちがう。ノーマルに終わったら、
http://localhost:2080
でダッシュボードが出る。localhostで行けるのは、最初にポートフォワードの設定をしたから。
(続く)
nice!(0) 
共通テーマ:パソコン・インターネット

【趣味の仮想環境】OpenStack 再び: kolla の場合 [仮想環境]

◆もやもやする
ダメならダメ、OKならOKではっきりするのがデジタルの世界のはずだが、OpenStackはそうでもない。だいたいの記事で、何度かやったらうまくいった、だの、写真と内容があっていないだの苦労がしのばれる。
当方も同じ。最終的にうまくいく手があったので、そこまでのネタを書いていく。

◆kollaの場合
kollaというのは‥という説明はしない。
OpenStack Kolla(Ocata)環境の構築 を参考にする。ほぼそのまま。
途中一か所、kolla.confの編集で、「Dockerのプロキシ設定が1.12から変わった」らしく、
ExecStart=/usr/bin/docker daemon ではなく、ExecStart=/usr/bin/dockerd にしないとエラー、
つまり、
[Service]
MountFlags=shared
ExecStart=
ExecStart=/usr/bin/dockerd
となる。こう書くのは簡単だが、これがわかるまでに若干時間を費やす。
あと、
「4.0.1に対応するkolla-toolboxが存在しない」とあるが、その更新されているだろうからと思って、4.0.1でやってみたけどやはりだめだった。
とにかく複数のプロダクトが影響しあっているので、Version違いがクリティカルに効いてくる。インフラ屋さんが、動いているものをなおしたがらない理由がわかる。

◆しかしうまくいかない
上記に引っかかりつつも、ふつうにやれば
kolla-ansible prechecks -i all-in-one
まではたどり着くが‥
Quick Start
https://docs.openstack.org/kolla-ansible/latest/quickstart.html
の、
For multinode deployment of kolla, check if all the hostnames are resolvable. RabbitMQ can’t work with IP addresses, so we need to make sure that all RabbitMQ cluster hosts can resolve each other’s hostnames.
とあって、これはmultinodeの場合だが、AllInOneでもhostsをどうにかする必要がある。
‥が、どうやってもここを突破できない。
kollaNG.PNG

なので、折に触れて試みることにして、ここでペンディング。
やれやれ。

nice!(0) 
共通テーマ:パソコン・インターネット

【趣味の仮想環境】総括1:OpenStack 設定でやってはいけなかったこと [仮想環境]

(追記)
前提:http://qiita.com/mfujita/items/ee2da9d1e241926fc790
と、https://www.adoc.co.jp/blog/e000247.html
を見ながら、過去の
http://okiba.blog.so-net.ne.jp/2017-06-05
以降も踏まえる。
現在進行形。

◆やってはいけなかったこと:ただし当環境での話
‥当環境での話、と書かないと怒られそう。この界隈はうるさい。

アンサーファイルで
CONFIG_MANILA_INSTALL=y を設定するとダメ。
ボリューム作るところで死ぬ。
CONFIG_HORIZON_SSL=y を設定するとダメ。
面倒なだけ。
CONFIG_PROVISION_DEMO=y を設定するとダメ。
面倒なだけ。どうせ消す。

ホストOSで、最小インストール以外を選択するとダメ。
https://ask.openstack.org/en/question/104818/instance-boot-stucked-on-ipxe/
で、インスタンスが起動しない。しかしQEMUのバージョンを上げようとしても私には無理目。
VirtualBOXで、仮想化をdefault以外にするとダメ(たぶん)。
インスタンス作るところで即死。
途中でNW設定を変えようとするとダメ
途中途中クローン作らないで最後まで突っ走ろうとするとダメ

◆この後が問題で
あちこちの紹介記事で、OpenStackのダッシュボード画面を表示して、「これでOpenStackが使えます」的なところで終わっているのは眉唾(は言い過ぎ?)。
ここからが難しい。まずボリュームが作れるか、次にインスタンスが立ち上がるか、で、それにログインできるかと順に難所が続く。
インスタンス立ち上げに失敗したとき、ボリュームが残っていたりする。ここも注意。ce.PNG
またログインにはカスタマイズ・スクリプトに魔法の呪文、
#cloud-config
password: vmpass
chpasswd: { expire: False }
ssh_pwauth: True
これでいける。
やっと入れたのはいいが、ここから外に出られないぞ。pingしてもはじかれるだけ。
なぜだ。
ルーター周りの設定が違う気がする。
そしてこれとmintを一緒に起動させたりすると。
こうなる。これはもう限界。cpu.PNG
メモリー16G程度でOpenStackやろうというのがダメ。そもそもおこがましい。
あ、あと、インスタンスのコンソールは、「コンソールのみを表示するにはここをクリックします」をクリックしないと反応しない。罠。


【趣味の仮想環境】OpenStack 再びうまくいかない [仮想環境]

前提:http://qiita.com/mfujita/items/ee2da9d1e241926fc790
と、https://www.adoc.co.jp/blog/e000247.html
を見ながら、過去の
http://okiba.blog.so-net.ne.jp/2017-06-05
あたりも踏まえる。
現在進行形。

◆WindowsでSSH‥公開鍵をどうしろと
TeraTermはいまさらなんとなく入れたくない。OpenSSHを入れてみる。
http://dev.classmethod.jp/cloud/aws/win32-OPenSSh-WaS-released/
この辺を参考に。
一般にこの界隈では(?)SSHで「LinuxからWindowsへ」つなぎたいのがメインのニーズのようで、逆はメジャーではない‥というか、逆は、「WindowsからAWSへ」がよくあるケース。
ん?ところで公開鍵をどうやってCentOS側に持っていくのか?何か大間違いしているか?
ということでペンディング。すっとばす。(実は内容コピペ、でいける)

◆カーネルパラメータの変更(うまくいかない)
教科書に従って変更・・して、sysctl -pするとエラーになるので、なかったことにしてここはパス。エラーになるやつをすっとばす。

◆RDOでのOpenStackのインストール
この辺は前と同じに。demoはnにすること。
「enp0s8のIPアドレス(192.168.56.100)を設定する。」が謎。
これなんでしたっけ。そういえば「ホストオンリー」「ManagementNetwork」でしたっけ。
まあでも、
:%s/10.0.2.15/192.168.56.100/gc
で変更。
WindowsPC(VirtuaIBoxのホストOS)から、http://192.168.56.100/dashboard/ でダッシュボードが立ち上がる。
つながった先は、OpenStackのHorizonコントローラーノード。たぶん。しかしここからが長い。

◆「各サービスのステータス確認」 そんなファイルはない。
source keystonerc_admin
openstack-status
とあるが、そんなファイルはない。ここはパス。すっとばす。

◆「仮想ブリッジ: br-ex の設定」
cd /etc/sysconfig/network-scripts/
としておく。どうでもいいことだが、systemcfgでもなく、network_scriptsでもない統一感のなさは、わざとわかりにくくして悦に入る文化のなせる業なのかも。
TYPE=OVSBridge、みたいにBだけ大文字にするのもなんなんだか。
‥書かれている通りに書き直す。なんとなく理不尽感が残るがこうしないとうまくいかない。
で、なぜだかわからないがリスタートしたりリブートしたりすると、突然ここが元に戻ったりする。なぜだ。
ovs-vsctl show |more
で確認する。ここでいったんクローンを作っておくべき。

【趣味の仮想環境】OpenStack 再チャレンジ Ocata [仮想環境]

◆M-N-O‥MはMitakaのM
バージョンはアルファベット順になっている。最新がOcataなのでMitakaは1年前ということになる。前述の通りOcata版のインストール例はあまりNet上になく、ansible使ってるとか、Vagrant使っているとか、さらに混乱しそう。
newtonは情報がほとんどない一方、Mitakaは名前が日本語なためか、単にそのころOpenStackがプチブームだったせいか(?)そこそこ情報がある。
ここいらへんhttps://www.slideshare.net/yosshy/openstack-ocataをみても、インストールについてはM-N-Oくらいの開きなら8割がた類推できそう。
◆QiitaとSlideshareを参考
さきほどの https://www.slideshare.net/yosshy/openstack-ocata を見つつ
Qiita http://qiita.com/mfujita/items/ee2da9d1e241926fc790 が元ネタ。
Qiitaは「おれは出来るんだぞ」系技術者からはあんなところうそばかりで役に立たないと不評な一方、私のような初心者には取っ掛かりとして役に立つ。とはいえ、間違いは間違いと見抜けないようだと泥沼にはまる。Slideshareは逆に「おれは出来るんだぞ」系技術者の個人的趣味満載でたまに内輪受けが鼻につくが参考になる。

(追:画像貼り付け)
◆でもそう簡単にはいかない
以下、現在進行形でお送りいたします。
鬼門だらけ。今回は「二つのネットワークをVirtualBoxで作成」でやってみる。
一つはNATネットワーク。NATとの違いは「VirtualBoxのほかの仮想マシンとも疎通が取れる」という触れ込み。10.0.2.xxxvbg.png
もう一つ、ManagementNetworkを作る。ホストオンリーネットワーク。各ノードが内部でつながるという触れ込み。DHCP無効、プロミスキャス。
192.168.56.100
‥なんか、これだと、ホストPCから仮想PCにつながらない気がするが。まあやってみよう。
CentOSのインストールは前と同じ。慣れてきた。
注意:パーティションの切り方は前回と同じにすること。/homeを/varに、名前もhomeをvarに。
注意:最小限インストールにすること:理由はあとで。
Sudo ip addrと叩くと、enp0s3とenp0s8が表示される。
参考書どおりにviで直す。その後yahooにping。
・・外には出られる。まあそれはそうだろう。

【趣味の仮想環境】OpenStack 幕間 もやもやする [仮想環境]

◆もやもや
「もやもやする」というフレーズは、「主(ヌシ)さんひどすぎます!!」で一部の操め事フアンに知られる発言小町でよく見られる。http://komachi.yomiuri.co.jp/
ubuntuが立ち上がるとき、プロミスキャスのせいなのかなんなのか、ESETが反応する。なのでネットにつながってはいると思うが、当初の試行錯誤のせいか、こちらからなにもできない状態。OpenStack入れなおしでも前の状態が残っているので、一旦アンインストールが必要な感じ。消そう消そう。

◆バージョンの進化
半年に一回ほどのバージョンアップによって設定がどんどん変わっていくので、過去の情報どおりやっていてもなかなかうまくいかない。年率2割くらいでずれてきている印象。始めた当初はそこまでとは思わず、まあだいたい動いたとはいえ、それでいいのか的な疑問があってもやもや。だいたい、NICが2つ必要ってことはないような気がする。

◆最新版はOcata
UIが変わっていてさらに混乱。「Ocata入れました」記事は検索してもそうたくさんは出てこない‥が、こっちを先に調べてみたほうがよかった。やはりOpenStackの欠点によく「インストールが大変」とあるだけあって、ど素人が適当にやってたら時間がいくらあっても。でもこういうとき楽なのが仮想環境。やりなおしは簡単。消すだけ。VirtualBox最強‥だが、VirtualBoxは仮想の上で仮想KVM(NestedVirtualization)はむりっぼいのでQEMUになって、だから起動が遅いとどこかのサイトで御託宣あり。
ん?VMwareならできるって?それも面倒だな。
ということで、別の記事を見ながらやりなおす。
前の10件 | - 仮想環境 ブログトップ

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。