pikesaku’s blog

個人的なプログラム勉強メモです。記載内容について一切の責任は持ちません。

OpenStack環境構築メモ(DBクラスタ設定)

リンク元ページ

 
pikesaku.hatenablog.com
 

OpenStack環境構築メモ(コントローラノード1,2,3号機共通セットアップ)

リンク元ページ

 
pikesaku.hatenablog.com
 
①NW設定
/etc/network/interfaces

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto ens3
iface ens3 inet static
address 192.168.0.X
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameservers 192.168.0.1

※Xの部分は各サーバのIPアドレス
 
設定ファイル変更し再起動(networklingサービス再起動では反映されない。以下URL参照)
Ubuntuでネットワーク設定の変更をする - Qiita
 
②OpenSSHインストール&起動&自動起動設定

$ sudo apt-get install openssh-server
$ systemctl start sshd
$ systemctl enable sshd

 
③crudiniインストール

$ sudo apt-get -y install crudini

 
④時刻同期設定&再起動

$ sudo apt install chrony
$ sudo systemctl disable systemd-timesyncd
$ sudo systemctl enable chrony
$ sudo shutdown -r now
〜再起動後、時刻同期確認〜
$ chronyc sources

 
⑤OpenStackパッケージインストール

$ sudo apt install software-properties-common
$ sudo add-apt-repository cloud-archive:pike
$ sudo apt update && sudo apt dist-upgrade
$ sudo apt install python-openstackclient

 
⑥DBインストール&セットアップ

$ apt install mariadb-server python-pymysql
$ sudo cp -p /etc/mysql/mariadb.conf.d/50-server.cnf /etc/mysql/mariadb.conf.d/50-server.cnf_org

 
DB設定ファイル編集
/etc/mysql/mariadb.conf.d/50-server.cnf
 
以下パラメタをmysqldセクションに入れる

bind-address = 192.168.0.X
default-storage-engine = innodb
innodb_file_per_table = on
max_connections = 4096
collation-server = utf8mb4_general_ci
character-set-server = utf8mb4

※公式ガイドではutf8であったがutf8mb4に変更
 

$ sudo service mysql restart
$ sudo mysql_secure_installation

※rootユーザーパス設定。ubuntu16.04からOSユーザーとDBユーザーが統合された。
 
⑦AppArmor無効化
参考
AppArmor

$ sudo systemctl disable apparmor.service
$ sudo systemctl stop apparmor.service
$ sudo update-rc.d -f apparmor remove
$ sudo apparmor_status
$ sudo shutdown -r now

iptablesも無効化。自分環境ではデフォルト無効化のため、作業省略。

kvmメモ(スナップショット)

2種類あり

外部スナップショット 現状スタンダード(?)
内部スナップショット 試験的


A.13. libvirt による外部スナップショット作成の回避策 - Red Hat Customer Portal
blog.etsukata.com

aptとapt-getの違い

6.2. aptitude、apt-get、apt コマンド

APT は巨大なプロジェクトで、当初の予定ではグラフィカルインターフェースを含んでいました。APT はライブラリに基づいており、そのライブラリにはコアアプリケーションが含まれています。apt-get は最初のコマンドラインベースフロントエンドで、APT プロジェクト内で開発されました。apt は APT から提供されているもう一つのコマンドラインベースフロントエンドで、apt-get の持っていた設計上のミスを克服しています。

Ubuntu 16.04LTSメモ(systemd起動処理)

chronyはsystemd未対応(サービスファイルがない。しかし自動起動する。原因を調査)

chronyインストール後の状況

 
systemd用サービスファイルがパッケージに含まれず

$ dpkg -L chrony | egrep system
$ systemctl list-unit-files | egrep chrony
$

 
再起動後、何故か起動している。

$ sudo chronyc sources
210 Number of sources = 4
MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
^- next.kkyy.me                  2   6   377     8  +5858us[+5858us] +/-  225ms
^- secure.opticnerve.asia        2   8   367   203  +3836us[+3836us] +/-  104ms
^+ mail.moe.cat                  2   7   377    72  +7065us[+7065us] +/-   32ms
^* ec2-54-64-6-78.ap-northea     2   8   377   957   +352us[ +178us] +/-   31ms

 

想定される原因

 
systemd未対応アプリがあった場合に、/etc/init.d配下のスクリプトを実行する仕組みあり。
alpha.mixi.co.jp
 

自動起動設定

$ sudo systemctl disable chrony
chrony.service is not a native service, redirecting to systemd-sysv-install
Executing /lib/systemd/systemd-sysv-install disable chrony
insserv: warning: current start runlevel(s) (empty) of script `chrony' overrides LSB defaults (2 3 4 5).
insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script `chrony' overrides LSB defaults (0 1 6).

$ sudo systemctl enable chrony
chrony.service is not a native service, redirecting to systemd-sysv-install
Executing /lib/systemd/systemd-sysv-install enable chrony
insserv: warning: current start runlevel(s) (empty) of script `chrony' overrides LSB defaults (2 3 4 5).
insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script `chrony' overrides LSB defaults (0 1 6) 

警告は出るが設定はされる(動作確認済み)
 

OpenStackアーキテクチャメモ

OpenStack Docに良い図があり。
 

コンセプトを示す図

 
OpenStack Docs: Conceptual architecture
 

論理構成

 

f:id:pikesaku:20171015123623p:plain

OpenStackメモ

OpenStackデプロイツールについて

 
RHELではRHEL-OSP Directorがあり。
これはTripleo(OpenStack on OpenStack)がベース。
 
OpenStack Docs: TripleO Architecture
 
手動構築でコントローラ冗長化実現し、仕組みを把握してからやる。
 
UbuntuではConjure-up
www.ubuntu.com
 

セキュリティガイド

コンポーネント向けのセキュリティ対策設定の説明あり
OpenStack Docs: OpenStack Security Guide