Red Hat OpenShift Operator Workshop - スキーマのロード (Part 3/4)

皆さん、こんにちは。戸倉彩です。

今回は、2020年9月24日(木)にオンライン開催されたIBM主催の **[「Digital Developer Conference Hybrid Cloud」](https://developer.ibm.com/conferences/digital-developer-conference-hybrid-cloud-apac/)** のTrack 3 Hands-on Labsで提供されている **「Operator Workshop」** の手順内容について、全スクリーンショット付きで日本語で解説した記事となります。実際にOpenShift Operatorに触れてみたい方も参考にしていただければと思います。
参照元: [Digital Developer Conference Hybrid Cloud - Lab Stream](https://ibm-developer.gitbook.io/digital-developer-conference-hybrid-cloud/)

## 前提条件
IBM Cloud上でOpenShiftクラスタを作成してください。※IBM Cloudの有料サービスとなりますので、ご利用の際には十分に気をつけて操作を行ってください。
Digital Developer Conference Hybrid Cloudに参加されている方は、**[「Pre-Work」](https://ibm-developer.gitbook.io/digital-developer-conference-hybrid-cloud/getting-started/pre-work)**サイトで公開されている申請方法で、Workshopを体験いただくためのOpenShift on IBM Cloud環境を一時的に無償で手に入れることができます。

## Part1 PostgreSQL Operatorのインストール
こちらのQiita記事[「Red Hat OpenShift Operator Workshop (Part 1)」](https://qiita.com/ayatokura/items/0021bdda8db54c100ed2)をご覧ください。

## Part2 データベースのインスタンス作成
こちらのQiita記事[「Red Hat OpenShift Operator Workshop (Part 2)」](https://qiita.com/ayatokura/items/177014873200091b241b)をご覧ください。

## Part3 スキーマのロード
参照元: [Load the schema](https://ibm-developer.gitbook.io/digital-developer-conference-hybrid-cloud/operator-workshop/lab2/lab2_load)

1. ここではCLIを使った操作を行うため、[IBM Developer Skills Network - Labs](https://labs.cognitiveclass.ai) サイトにアクセスし、**[Theia - Cloud IDE (With OpenShift)]** をクリックしてセッションを開始する。  
<img src="https://vfxrdq.by.files.1drv.com/y4mTBkL4tMQVZQHQpJlBgycfQwdTsQPaYGAr5uMUmocY9ZnQaa3-VvlUZFbncP6DJgooTbtMrlxRD5ZW8TwxmDX0XMYKgHS7_7yK7GPTK4ZWijiGJOPZ51fyK2AhH9wLA6W0MILQiEHm1_tS9nQSH_Ph6TvbV3SMtEPl4P-xcvF6Ogr1B7fpYBWoi53BbMZ-HXKTAYXsAKUHmOZNwNVdzcVPQ?width=1728&height=900&cropmode=none" width="600">
2. OpenShfitコンソール画面に戻り、右上のご自身のメールアドレスをクリックし、ドロップダウンメニューから **[Copy Login Command]** をクリックする。  
<img src="https://vfxsdq.by.files.1drv.com/y4mEEj9L8yXYI22guB30FxuGjS-xxvbUHeb49DImummSYp2Y-02OQ5i_Sm05JwX8nM-UAQGeVer75qiFceDfKDXc4hlHzmax2-2oqyJ1wM93g7lMEQqqjXvwBl19Y1539FFVp5C8p_1xm0NaEij6M_2bCZkjnS0ZlutXR3ErhJhfE041X-fX3VhhKh3OmZ2UHbs-YcByEryWiPRqLSntAhlIg?width=928&height=484&cropmode=none" width="400">
3. 新たに表示された画面上の **[Display Token]** をクリックする。
4. APIトークン情報とトークンを使用したログインコマンドが表示される。  
※APIトークンは大切に保管管理してください。  
<img src="https://vfxtdq.by.files.1drv.com/y4mMG3sUwUUg4WhV5qoSdVUot4QVLsyYvlZhJ4dv-rSBdvdJFk5HDc1V0yWBgAAoo6MCdaNO55I3YmHY9JdiKbnLfA0llemKnQhD2mg1y8UnH7oWAmSsrUkgDyKBorrjLI_tAY6IczkpTJzdJlT_ixVWWlGckEjBZkVGXpOpcOyCYp4l8TAGG9oGklPxzjhbLnk9PtScIw3v9dXxve5LvcN6g?width=1548&height=642&cropmode=none" width="600">
5. 再び **Skills Network Labs** の画面に戻り、**[Terminal]** → **[New Terminal]** をクリックする。
<img src="https://vfxqdq.by.files.1drv.com/y4mFAVDjLUZButAIp0lVo_o_aF1fZdkyey0k0VyYv6dMHkbNW48-WTcLb6tITYy_RvnIqa3v_CGzw1oFQfGq6NViX7QgdOXqne1yk67YmqtJxA4YbXvQr51pklqzmcmt7qNK_tkKsrF3e-HeVAnq-7HPO1FZZ7dl8o-mI1zvvlTwaB4luLVTBIHRAF2U0ZMQtWgzO3NwHJxkXi0hixPL6qvcw?width=1220&height=720&cropmode=none" width="600">
6. 先ほどの `oc login --token=xxx` が書かれているコマンドをターミナルで実行する。
<img src="https://vfxpdq.by.files.1drv.com/y4mqEwJX8QP_ahu3XLdw4ZIaUVNCfez6msAIJFEDrfubCJ9ah1hMicQbhsAH-fGzPB89cXYUawyacO0PlBKC6EHRHxtFtLrGKpPXH1cpvth91AkbTTJB0jDvNYDruWbxpRg44iqOL90cBZ9rJq2qA6ZfUD0tcRnG4QuKbEq8ZDeYfn0q3Tcwf2Qvj1FTymeDMcsT4XgTn3mD3cUvRR2vvUmVQ?width=1766&height=816&cropmode=none" width="600">
7. ご自身のプロジェクトに移動し、下記のコマンドを順番に実行する。

```
oc project <プロジェクト名>
```

```
git clone https://github.com/IBM/example-bank
```
```
kubectl create secret generic bank-db-secret --from-literal=DB_SERVERNAME=creditdb --from-literal=DB_PORTNUMBER=5432 --from-literal=DB_DATABASENAME=example --from-literal=DB_USER=postgres --from-literal=DB_PASSWORD=postgres
```
```
oc apply -f data_model/job.yaml
```

データベースのスキーマ
<img src="https://vfxodq.by.files.1drv.com/y4m5fopEUtblHyguuY0CBPdMkSX0QMdt8ZJZwF1TGd70by5VH7fWP7h5QaXcTE5JQ42hCwQOukdC9RAZwUtfAkMOt7kMC183_6FW16iCFeuTPhdVbw7oQtxaonPKZj6uMu4UmMrnjOZ0Qe6AdJ4SNFCWL10_h3WnUSZujVQWgxBwpg7Te4evL4NgnWJKHQ8N_nkQbIV5Otfhy3lYLloqWnceg?width=1294&height=404&cropmode=none" width="600">

Part3の操作は以上です。

## Part4 データベースの公開と確認
こちらのQiita記事[「Red Hat OpenShift Operator Workshop (Part 4/4)」](https://qiita.com/ayatokura/items/67d404ac16103377be22)をご覧ください。


## 参考
英語で操作可能な方は、下記サイトにアクセスして操作をお試しください。
- Part 1 [Install the PostgreSQL Operator](https://ibm-developer.gitbook.io/digital-developer-conference-hybrid-cloud/operator-workshop/lab2/lab2_install)
- Part 2 [Create an instance of a database](https://ibm-developer.gitbook.io/digital-developer-conference-hybrid-cloud/operator-workshop/lab2/lab2_create)
- Part 3 [Load the schema](https://ibm-developer.gitbook.io/digital-developer-conference-hybrid-cloud/operator-workshop/lab2/lab2_load)
- Part 4 [Expose and verify](https://ibm-developer.gitbook.io/digital-developer-conference-hybrid-cloud/operator-workshop/lab2/lab2_expose)

★Twitterで最新情報配信中 [@ayatokura](https://twitter.com/ayatokura)