データ永続化でどハマりした。

概要

前回までで作成したrancherクラスタでサービス展開することを考えると「やっぱり、データ永続化したいよなぁ。」となった。 試してみたがうまくいかない!!!SELinuxがわからない。勉強不足で超えられなかった。。。

経緯

クラスタ構成でデータの永続化のは色々な技術があるらしい、 - gluster fs - rancher-nfs - longhorn - etc…. ここは、rancherで組んだクラスタなんだからrancher-nfsしかないだろ!!! (本当はlonghornというのを使ってみたかったが、まだ実験段階とのことなので、また今度試すとして)

ということで、rancher-nfsを選択。

構成

今回の想定している構成は以下

ip export
192.168.1.8 nfs /mnt/nfs

設定

インストール

カタログからrancher-nfsを選択して簡単にインストール。

設定する値は

項目 設定値
ip 192.168.1.8
mount /mnt/nfs

データボリュームの作成

インフラ>ストレージ >

作成ボタンをポチッと

使い方

以下のようなdocker-compose.ymlを用意

スタック> ユーザー> 作成!!

確認

ストレージの画面からattachされていることを確認。

シェルを起動してファイルを配置

nfsサーバからも配置されていることを確認。

そして泥沼へ…

gitlabのスタックを作成しようとしたけど、permissionエラーとなってしまい作成できない。

解決策(逃げ)

coreosのSELinuxの設定わからない・・・

OS替えてSELinuxをOFFにしちゃえ!(悲しくなる、勉強しよ)

選択したOSは centos atomic host

SELinuxの解除は簡単。 /etc/selinux/config のSELINUX=enforcing をSELINUX=disabled へ変更してreboot

$ getenforce
Disabled

よし。

確認

rancherからコンテナを起動し、正常に起動されれば問題なし