thirose’s blog

openstackやpythonなどなど

OpenStack

keystoneの複数の認証メソッドが絡んだ認証の問題とその解決

概要 keystoneの複数の認証方法がある環境でおこった、一部ユーザがログインできなくなる問題がありました。 今回の記事ではkeystoneの認証の流れと、その中でおこった今回の問題の原因への対応をまとめました。 keystone Keystoneとは、OpenStackの認証やユ…

designateでworkerを2以上に増やすとservice_statusが更新されない原因と解決策

English version -> medium.com designateの各サービスのworker数をデフォルトの1から2以上にした時、service_statusが更新されないのでその原因を調べた。 まず、worker数が1の時の起動の流れを確認 すると、designate/service_status.HeartBeatEmitter.sta…

designateでdeadlockが発生する原因と解決手段

English follow is here => Designate got the DBDeadLock – Hirose Takahito – Medium designateを使っていてたまにdeadlockがおきていることに気がついたので、その原因を探っていきました。 原因は登録/更新/削除のフローで起きる構造になっていたのでそ…

KeystoneのTime-based One-time Password(TOTP)を設定してみた

TOTPとは、どういうログインになるのか...それを知りたく設定してみました。なお当初期待していたログインはMulti Factor Authentication(MFA)的なのを期待していましたが、挙動としては期待していたものと少し違いました。 ここで自分のやりたかったことち…

Designateのビルドをしてたら、UnicodeEncodeErrorがでてきた

今回はOpenStackのDesignateでおきたエラーですが、他のミドルウェアでも起きる可能性はなくないと思うので、エラーとその対応をまとめます。 今回はpythonの2.7.13が必要だったけど、CentOSのpythonが2.7.5だったため、pyenvを入れて対応しようとしていた時…

SAMLを使ったSSOログインの設定と問題

SAMLを使ったログインをOpenStackで実現する場合は、mellon または shibbolethといったモジュールを使用することになります。参考資料 今回はmellonとは、mod_auth_mellon のことで、それを検証してみたのでその中で気が付いた問題をまとめました。 セットア…

Ansibleでvault使う時は変数ごと暗号化する

OpenStackをdeployするのにAnsibleとか使うと便利だったり?します。 便利かどうかはさておき、Vaultをファイル単位で暗号化しgithubで管理し始めると、何をどう変更したのかわからない。 という問題が発生します。そこで変数ごと暗号化していくのが変更を管…

keystoneのtoken

KeysoneのTokenには、Project Scoped Token, Domain Scoped Token, Unscoped Tokenがあります。(System scoped tokenは除外します) 各Tokenにどういう用途があるのか、まとめました。 Project Scoped Token これは、管理者よりユーザが一番使うであろうToken…

python3.5.0だけtracebackの返値が違っていたバグに当たった

今回はたまたま、openstackのnovaclientを使っていたらバグを発見しました。 その時のログはこちら -> This report is written about novaclient. · GitHub バグの内容 python3.6を普段使ってるけど、もともとpython3.5.0で動いていたスクリプトで、普段と違…

OpenStack Summit Vancouver 2018

最近仕事でOpenStackの開発・運用に関わっていてその関係もあり、OpenStack Summitに参加させてもらいました。 OpenStack Summit | Vancouver 2018 OpensStackって何? そもそもOpenStackって何?って思った方もいるかと思いますが、プライベートクラウドを…

openstackのnovaclient使ってvm instanceを立ち上げる

最近まで知らないことだらけだったので、vm instanceを作るときはnovaclient以外にも neutronclientとかglanceclientとかを使いnetworkやIamageやflavorの情報をとってinstanceを作成してました。 今回は、novaclientでできることはnovaclientでやることにし…