日本ではマイナーですが、現在 JavaServer Faces (JSF) で Google Sign-In for Websites を利用する取り組みをしています。
デモ サイト: https://apps.linuxfront.com/restapi/
ログインできるようにするのは実は簡単なので、ここからサーバー側との連携を追求していきます。
日本ではマイナーですが、現在 JavaServer Faces (JSF) で Google Sign-In for Websites を利用する取り組みをしています。
デモ サイト: https://apps.linuxfront.com/restapi/
ログインできるようにするのは実は簡単なので、ここからサーバー側との連携を追求していきます。
Amazon Web Services に Elastic Beanstalk というサービスがありますので、試しに WildFly を載せてみることにしました。
まず AWS コンソールから Elastic Beanstalk で Create New Application を選択すると、いくつかの構成の中から環境 (Environment) を作成できるようになっているのですが、残念ながら WildFly の構成はないので、今回はお試しということで Docker の構成を選んで Single instance の新しい Web Server Environment を作成することにしました。アプリケーションの選択時に WildFly の Dockerfile をアップロードすることで、とりあえず WildFly 単体の稼働は確認できました。
WildFly の Dockerfile は、http://www.jboss.org/docker/ から入手可能になっていますが、これだけだと自前のアプリケーションが載せられないので、実用的には Dockerfile に何らかのカスタマイズが必要になってきますね。
Elastic Beanstalk の環境を作成した後で、AWS コンソールで EC2 を確認すると新しいインスタンスが作成されていました。また Elastic Beanstalk を使うためにはどうやら Elastic IP も必須なようです (自動的に割り当てられます)。
これは収益をあげる業務ではありませんが、このサイトでも使っている Pretty Permalink Filter を Maven Central Repository にて公開いたしました。
Quercus を使って WordPress を配置する際には、ぜひご利用ください。有償サポートもご相談ください。
せっかく Jenkins が復旧したことなので、このサイトで使っている GlassFish の構成を紹介してみようと思います。
まず GlassFish の「ドメイン」には管理サーバーがあるわけですが、これは表に出していません。管理サーバーとは別にクラスター インスタンスと今回新たに追加したスタンドアローン インスタンスがそれぞれ別の java プロセスで動作していています。それぞれのインスタンスには AJP (mod_jk) 対応のリスナーが追加してあり、フロントエンドの Web サーバーから間接的にアクセスするように設定しています。
結局 3 個の Java プロセスが動いているということになるわけですが、運用の勉強のつもりで動かしているクラスターは、実際にクラスターを組めるほどのインスタンス数がないので、将来的にはスタンドアローン インスタンスに一元化してしまうかもしれません。
GlassFish アップデートで障害発生から止まっていた Alfa.linuxfront.com の Jenkins がようやく復旧しました。
何が問題を起こしていたのかを簡潔に書けば、GlassFish 4.1 のクラスター インスタンスに配置していたために Jenkins が初期化に失敗していたということでした。単一のスタンドアローン インスタンスに配置替えをしたことにより初期化に失敗することもなくなり、ひとまず平常運転に戻れそうです。
不思議なのは、前バージョンの GlassFish 4.0 ではクラスター インスタンスでも動いてたってことなんですよね。4.1 で動作が変わったのでしょうか。
このサイトで稼働させてきた GlassFish 4.0 を新しい 4.1 にアップデートしたら Jenkins が動かなってしまいました。
GlassFish 4.0 は 4.1 のスナップショットより不安定だとか話があったので、Update Tool を使って 4.1 にアップデートして起動したら…動かない…あれ?
そんな訳で、コンフィギュレーションをゼロから作り直したり、必要もないのに (1台でw) クラスターにしていたのをシングル サーバーに変えたりとか、試行錯誤してみた結果、WordPress は復旧したものの Jenkins はどうやっても初期化エラーで動かないという問題が解消できませんでした。クラス ローダーの挙動に影響されてるように見えるんですがねえ。