コンテナ(Kubernetes)を使用して楽をするMariaDB編

★★★ Live配信告知 ★★★ぜひお申込みください!
◆◇世界一わかりみの深いクラウドネイティブ on Azure◆◇
7/7(木) 19:00~ 第15回:クラウド上でのライブ配信環境〜OBS on Azureで高速・堅牢なライブ配信環境を作る〜 今回は、クラウドなライブ配信環境の構築方法をお届けします。
◆◇PS Live◆◇
7/15(金) 17:00~ 第18回:アウトプットはイイぞ 〜サイオステクノロジーLT大会〜 エンジニア初級者向けから、個人ネタまで、エンジニア脳を体感できるプログラムです。

こんにちは、サイオステクノロジーの前田です。コンテナを使用することに皆様どのような思いがありますでしょうか?開発側としては環境が作りやすくなり便利という人や、デプロイが簡易になりビジネス効果が出たという意見はあります。また、良い意見以外にコンテナを使うために運用や設計が複雑になり、学習することが増えて大変になったという方がおられるのではないでしょうか。本記事ではコンテナを利用して楽をすることに注目していきます。その一つとして簡単にMariaDBをデプロイする方法について説明していきます。

コンテナを使用して楽をする方法

Kubernetes環境に簡単にデプロイする形としては主に3つあります。

  1. カタログやテンプレート等を使用したデプロイ
  2. Helmチャート等の用意された形を利用するデプロイ
  3. オペレータを利用したデプロイ

今回はOKDのカタログを利用してMariadbをデプロイしていきます。

楽してMariadbのデプロイ

  • デプロイ環境

    • Kubernetes基盤: OKD 4.10
    • インフラ基盤: AWS
    • クライアント: Windows PowerShell
    • DBクライアント: A5
    • DB: MariaDB v 10.3

簡易構成図

MariaDBのデプロイ

テンプレートを利用したMariaDBのデプロイを行います。

  1. プロジェクトの作成
    1. 画面左上からDeveloperを選択してDeveloper画面に切り替えます。
    2. MariaDBをデプロイするプロジェクトを作成します。
    3. プロジェクト名(例 testmariadb)を入力して作成ボタンを押下します。
  2. カタログからDBをデプロイ
    1. 開発者カタログのデータベースを選択します。
    2. MariadDBを選択します。(永続ストレージを使用するため、Pod再起動でデータが消えてもよい場合はEphemeralを選択)
    3. テンプレートのインスタンス化を押下します。
    4. 作成を押下します。(必要があれば各種設定値を入力して変更します。)
  3. デプロイ確認
    1. トポロジーを確認します。
    2. デプロイされると青丸になります。デプロイされたmariadbをクリックすると右側に詳細情報が表示されます。
    3. リソースタブを選択して、デプロイされたPodとServiceを確認する。デプロイされたPodを選択します。
    4. デプロイされたポッドの画面が表示されることを確認します。
  4. MariaDBの正常動作確認
    1. デプロイされたポッドのターミナルタブを選択します。
    2. shスクリプトで操作が可能な状態のため、mariadbに接続します。

    3. テーブルを作成します。

    4. テーブルができているか確認します。

    5. MariaDBとの接続を終了します。

  5. 余談 パスワード情報の確認
    1. MariaDBに外部のPodから接続する場合は、ホスト名をService名にしユーザー名とパスワードに関してはSecretリソースの情報を利用して接続します。
    2. シークレットを選択します。その後MariaDBを選択します。
    3. 情報が保存されているので、値を表示するを選択してユーザ情報とパスワードを確認します。

ローカル端末からのDB接続

OKDにデプロイされたDBに対して、ローカルのクライアント端末から直接は接続できません。しかし、開発時や障害の調査の時にはDBに接続して情報を確認したい場合があります。その時はポートフォワードを設定して接続します。下記にローカルのWindows端末から接続する方法を記載します。

  1. OCクライアントで接続
    1. 管理コンソールの右上側ログインユーザ名を選択してログイン情報を表示します。
    2. Powershellを利用してOKDに接続します。

    3. 接続後にMariaDBをデプロイしたプロジェクトに移動します。

  2. ポートフォワード
    1. サービス名を確認します。
    2. ポートフォワードします。

      自端末(localhost)の13306番ポートとmariadbの3306 番ポートを接続します。

    3. DBの接続を終了するときは(Ctrl + C)を押します。※A5の接続中は終了しないでください。
  3. DBクライアント(A5)を利用した接続
    1. DBの接続設定を行います。
    2. sampledbに先ほど作成したproductのテーブルが存在することを確認します。

最後に

今回のカタログからのデプロイは、主に開発初期や小規模の時に利用するものです。構成が固まった場合は、再利用しやすいHelmチャートを作成しておく形が増えてきています。お客様に提供するにはバージョンアップ等の考慮もできるオペレータで作成することもあります。Kubernetesの難点の一つである利用するための初期学習が大変という点ですが、カタログ機能を利用してみると学習も少しでよく、便利で楽です。このようなところからKubernetesに触れていただき、読んでいただいた方のKubernetesのいろいろな負担が減れば幸いです。





ご覧いただきありがとうございます。
ブログの最新情報はSNSでも発信しております。
ぜひTwitterのフォロー&Facebookページにいいねをお願い致します!



>> 雑誌等の執筆依頼を受付しております。
   ご希望の方はお気軽にお問い合わせください!


ご覧いただきありがとうございます! この投稿はお役に立ちましたか?

役に立った 役に立たなかった

1人がこの投稿は役に立ったと言っています。

Be the first to comment

Leave a Reply

Your email address will not be published.


*