他所の部署で、取引先のシステム制作会社と共同で開発されていた、とある(半分w)ウェブアプリのリプレースを突然?指名され担当になる。。。よその部署なのに・・・。
とはいえ、昔僕が健康面で悪い時に、見放さずお世話になった経緯もあって、むげに断るのもどうかとも思い、引き受けたはいいけど・・・取引先寄りの前担当者からは「こんなやつに!」と猛反対されつつも、昔お世話になったんだからと・・・手を差し伸べて助けよう、と首を突っ込んだけど、まさかの、その差し伸べた手を振り払われて当惑している、ぼっちウェブ担です。
共同で開発した、というと聞こえはいいが、そう安くは無い金額の開発資金をこちらの会社が出し、両者で勉強しながら(大笑)、開発してもらう、とかいう、滅茶苦茶ぶり。
OSがWindows10になり、当然ながら開発当初主流だったInternet Exporerは、マイクロソフト自身「もう使うな!」との詔(みことのり)を発せられたInternet Explorer以外のモダンブラウザに対応してくれ! と、そのシステム会社に依頼するも「できない、むずかしい」と言われ、会社の上層部からは「追加のお金は出せない」と宣告され、にっちもさっちもいかなくなって、おいらにお鉢が回ってきた。まぁ、要するに信用がないんだな(^^;;;
その共同開発wしたという、システムをみた感じ、「これでよく、ウェブシステム」と言ってたな!という有り様。なんと、フル機能を使うには、開発した専用ウェブブラウザが必要!、さらに、エクセルのインストールも必須! という、ありえないものだった。
ローカルディスクにアクセスしないといけない、プリント機能もなぜかエクセルが必要、Accessで組んだ業務アプリをウェブシステムに置き換えるとき、真っ先に切らないといけない仕様を、全部盛り込もうとするから、専用ウェブブラウザとかいう、謎のアプリの配布が必要になってくる。まだ中身を見てないから何ともいえないけど(出し渋ってるので)、おそらくIEのウェブブラウザコントロールを貼り付けて、必要な機能を付けたしたアプリケーションだと思うが・・・。
この際だから、好きなようにやらせてもらおうと、いろいろ実験(笑)をしながら組んでいこう。
考えている構成は・・・
Windows Server 2019 + SQLServer + Hyper-V ( CentOS7 / httpd)
ホントは全部 CentOS7 + MySQL という構成が僕も扱いやすいのですが・・・社内的に Windows しか認めてくれない雰囲気。
時間がもっとあれば、C# とかで組みたいけど、半年ぐらいしか時間がないので・・・手っ取り早く言語はPHP。
いや待てよ、PHPで組むんだったら、
Windows Server 2019 + SQLServer + WSL (UBUNTU / Apache2)
でもいいんじゃないか? HyperVと仮想マシンで組むより、オーバーヘッドが少ないかもしれない。WSLはまだ開発途上でこの先マイクロソフトがどのような展開をするのか不明な点もあるし。Windows10のようなクライアントOSだとWSLはウェブ開発ツールの一つと捉えることができるが、 Windows Serverでの WSLの立ち位置がイマイチどのように考えているのかわからない。
Windows向けの PHP と IIS いう構成も考えてみたけど、なんせ過去の経験から IIS + PHP はどうにもこうにも扱いづらい。特に IIS の なんちゃらプールIDとかなんちゃらプロセスとか・・・アクティブドメインがなんちゃらとか、Windows認証がなんちゃらとか、全く理解不能の用語連発で嫌になる。
それだったら、HyperVで仮想マシン作ってそこにシステムを作りこめば そのVHDをピーコするだけで、実稼働できる、という手軽さを選んだ。
すこし前から、HyperVで内部用の仮想スイッチでネットワーク組んでも、NAPTで仮想スイッチを組めば内部のネットワークにぶら下がっているゲストOSにポート変換で外側からアクセスできる。だから 外側のIPアドレスも消費しないし、完全に環境を封じ込める。
今の懸念材料としては、 この構成で実運用に耐えるのかな・・・と。。。Azure運用だと金さえ積めばいくらでも性能アップできるんだが・・・オンプレミスでやるのは経験がないので正直怖い面もある。