Outsystems10から11にアップグレードしようとした話

#想定読者

Outsystemsのインフラに関わっている方



#自己紹介
入社して1年半が経ちました。
入社してすぐにOutsystemsを触り始めたので、もうOutsystemsとのお付き合いも1年半くらいになります。

Outsystemの基盤の構築から社内でのアプリ開発など、いろんなことをやってます。

【去年のOutsystems10の構築記事】
[外資系の社内SEに転職して、Outsystemsと出会った(環境構築編)](https://qiita.com/fuyuiro/items/e7d0970ee9e934a8b65f)


#はじめに

Outsystems10のサポートが2019年で終了すると聞き、弊社内ではOutsystems11に移行する流れになりました。

お付き合いとは難しいもので、お互いこのままじゃ上手くいかない部分があり、
彼女(Outsystems)の環境や状況が変われば、僕のほうもなるべくそれに合わせる動きをしなければなりません。
そんな中で起きたトラブルや落とし穴を共有できればと思います。

![恋愛.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/130275/cac83144-09e2-866a-260e-b68a732cfe61.png)



#弊社の構成


一部省略していますが、Dev,Uat,Stg,Prd,Lifetimeと一通りございます。
※線が薄かったりするのはご愛嬌でお願いします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/130275/11d1d25c-1aa1-7425-fe00-69754dadef86.png)



#はじめにやったこと

Outsystems社の担当者の方にOS11のアップデートプランを提示し、ライセンスのレンタルをしました。

アップグレード方法としては、
現状稼働しているOS10の環境に影響を与えないようにするため、
OS10とほぼ同じ構成のサーバー群を作成し、それぞれOS11のパッケージとライセンスの適用をして並行稼動させます。
その後OS10の環境を削除して、OS11だけを残す方法です。

OS10のDBはクローンし、OS11で同期して利用しました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/130275/343cbfb1-0c8d-f729-2394-a73353698f01.png)


#落とし穴その1

Outsystems11からWindowsServer2016~の対応になりました。
今までWindowServer2012を利用していたため、
テスト的に、WindowsServer2012にOutsystems11を入れようと思ったら出鼻をくじかれました。
落とし穴というかノーマークでしたね、完全に。

資料:
[OutSystems_system_requirements]
(https://success.outsystems.com/Documentation/ja-jp/11/Setting_Up_OutSystems/OutSystems_system_requirements#.E3.82.B5.E3.83.9D.E3.83.BC.E3.83.88.E3.81.95.E3.82.8C.E3.82.8B.E6.A7.8B.E6.88.90)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/130275/f9cb10aa-f23b-ede2-f50e-a23f710cb3a3.png)


#落とし穴その2

ブレイキングチェンジ(OS10とOS11間での実装方法の変更)の対応に追われた。
メジャーアップデートともなると、変更点も多いためここは要チェックです。

資料:
[OutSystems 11 side effects and breaking changes](https://success.outsystems.com/Support/Archive/11/OutSystems_Platform_side_effects_and_breaking_changes)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/130275/74d79bed-2b59-1d62-a672-dbd239137069.png)

#落とし穴その3

DBクローンした際に既存のデータが残ってしまい、Lifetime等で不具合が発生した。
こちらはOutsystemsのチェックリストに書いてなかったので盲点でした。

資料:
[Migrate an Environment Using a Database Clone](https://success.outsystems.com/Support/Enterprise_Customers/Maintenance_and_Operations/Migrate_an_Environment_Using_a_Database_Clone)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/130275/8d26b069-a81d-a05b-a100-4cdeb27f6b92.png)



#おまけ
Outsystems10では、TLSを1.2に上げることにより、ServiceStudioのNativePlatformが表示されなくなるみたいです。
資料のような設定をすればいけるみたいです。

:資料
[(.NET) Enable SSL Protocols for your Integrations - TLS 1.1 and TLS 1.2](https://success.outsystems.com/Support/Enterprise_Customers/Maintenance_and_Operations/%28.NET%29_Enable_SSL_Protocols_for_your_Integrations_-_TLS_1.1_and_TLS_1.2)


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/130275/761b3411-5f17-09e3-707a-289a41f9c404.png)



#終わりに

なんやかんやで、
いろんな落とし穴がありつつも、その度に僕も変わることで彼女(Outsystems)との仲が深まっている気がします。
自分でわからないことは、彼女(Outsystems)の親(Outsystemsサポート)と話してみるのも1つの手だと思います。


また、下記のようにAIのChatbotができたり、WebアプリのUIのありかたが変わってきたり、
彼女(Outsystems)は僕が思っている以上のスピードで進化しています。

そんな彼女(Outsystems)にふさわしい男になりたいと思ったクリスマスでした。

[OutSystems.AI Chatbot]
(https://www.outsystems.com/forge/component-overview/5886/outsystems-ai-chatbot)
[(OutSystems)Reactive Web AppとTraditional Webの違い
]
(https://qiita.com/jyunji_watanabe/items/c9888cb6ef9805e280a3)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/130275/a9c2b381-6553-5d4d-4b2f-a2babda6ffc0.png)


###<font color="royalblue">クリスマスまであと6日！</font>