読者です 読者をやめる 読者になる 読者になる

きどたかのブログ

いつか誰かがこのブログからトラブルを解決しますように。

WebSphereのAntタスクが動かなくなってた

ws_antは未使用。バージョンアップ後のテストで発覚。症状java.lang.NoClassDefFoundError:javax.annotation.sql.DataSourceDefinitionアノテーションが見つからなくなったそうだ。解決策ここを読みなさい。http://www-01.ibm.com/support/docview.wss?uid=s…

Websphereとファイアウォール

以前、jythonで書いたスクリプトでserverindex.xmlをなめて情報を吸い出し、lokkitコマンドで設定するものを書いた。ただ、ポート番号がアスタリスクの部分は無視して、設定しており、今回その部分で問題が起きたので、したためておく。BOOTSTRAP_ADRESSはち…

IBM Data Studio 4.1.1にWebsphere Developer Tools for Junoを入れたい

今となっては、SQLJ開発を無償ツールでやるには、IBM Data Studioが大本命だろう。しかし、私として、そこにWAS用のプラグインは入れたい。IBM Data StudioはEclipseのバージョンが古いが、仕方ないのでJunoベースでなんとかしよう。素のIBM Data Studio 4.1…

今日失敗に気付いた有効範囲ノードのリソース

すごく単純な失敗をしていたことに気付いた。ノードのJMSプロバイダーを使い、接続ファクトリーを作成するコードだったのだが、誤ってサーバにも作ってしまっていた。node_scope=AdminConfig.getid('/Node:mynode')jms_provider_list=AdminConfig.list('JMSP…

wsadminでImportError レアもの?

すごい面倒臭いエラーに出くわした。ImportErrorがなかなか取り除けなかった。凡ミスもあった。__init__.pyをミペルミスしてて、__ini__.pyになってた。これはいい。今回ドハマりしたのは、もっと気づきにくい話。ImportErrorなんだから、探索パスを気にした…

jythonスクリプトの日々

ファイアウォールのカスタムルール用ファイルを作成するjythonスクリプト、凡ミスしてたがなんとか直した。DNSがいないせいもあり、/etc/hostsに書き込まないとdmgr起動しないのは大変だった。DCSとか出てたからファイアウォールをミスったのかと自己暗示に…

zWASっぽくプロファイルを作る試み

zWASは、プロファイルのディレクトリ構成がLUWのものと違う。LUWの場合/opt/IBM/WebSphere/AppServer/profiles/Dmgr01/opt/IBM/WebSphere/AppServer/profiles/AppSrv01z/OSの場合/wasv85config/セル名/デプロイメントマネージャーノード名/DeploymentManager…

RHEL6.6でWASのファイアウォール設定

正直、悪戦苦闘している。とりあえず分かったこと。iptablesコマンドではなく、lokkitコマンドを使うことにした。正直これでいいのか自信はない。iptablesコマンドでは、/etc/sysconfig/system-config-firewallファイルまでは書き換わらないようだ。そのせい…

WASフルプロファイルをシェルで作る

メモメモ。いちおうKnowledge Centerにも載ってはいるのだが、例の中では使ってなくてデフォルトに頼ってるパラメーターが多い気がした。プロファイル管理ツールで一回作って、logs/manageprofilesの下にできるファイルからmanageprofiles.sh -createのとき…

WASでJythonを使って遊びましょう

さいきんJythonをカリカリ書いてて気付いたことがある。 これまでの自分のJythonの書き方は、 小さいプログラムでクラスまで作ろうとしてなかった。 うん、これからはクラスも作ろう。 実はクラスどころか小さすぎてdefすら使ってなかった。 今回は作るもの…

Are You WAS?

iPhoneアプリのご紹介 Are You WAS? 日本に帰国してた時に後輩が言っていたiPhoneアプリ。 WAS for z/OSネタが入ってるクイズアプリです。 比較的簡単です。 初見で正解18問/20問中でした いまのところ、問題は全部で100問あるようです。 ちなみに自分が間違…

ibm.swapLFについて<続々>

ibm.swapLFにかかりきり。 System.outに使われるクラスが、 WAS for z/OSでは普通のプラットフォームとは違うクラスであることが分かった。 USSでWAS付属のjava叩いても、WAS上とは違いがでる。 com.ibm.ws390.SystemOutErrCodepageというプロパティがあるこ…

ISA5 - WebSphere Application Server Configuration Visualizer

ISA5にはWebSphere Applicaiton Server Configuration Visualizerがついている。 冒頭で書いておくと、一般人がこれを使う必要はない。使う機会もきっとない。 開発現場では管理コンソールが使えるだろうから、これはいらないでしょ。 このツールはconfigデ…

ibm.swapLFについて

ibm.swapLFなるものを調査する機会があった。 正直まだよく分かってない。。。 IV18977: IMPLEMENTING SWAPLF FUNCTIONALITY FOR IBM-037 CODEPAGE このへんの話だ。 ちょっと表を添えておくよ。 EBCDIC ASCII CR 0x0D 0x0D LF 0x25 0x0A NL 0x15 この-Dibm.…

WAS for z/OSのJMSトレースを読み耽っていた二日間の収穫

先にいっておくと、別に答えらしい何かはあまりない。 ろくな資料が手元になく、 唯一意味があったのがJMSトレースを含むログだけだった。 トランザクションとJ2Cもたぶん入ってた。 一時的な性能劣化。 そういう時はなにを疑うだろうか。 GCか? おこってな…

IBM Support Assistant V5 Beta2 (ISA5 Beta2)使ってみた

まえにISA V5 Beta1を試していたんだが、 わりとさいきんBeta2が出ていたのでインストールしてみた。 IBM Software Support - IBM Support Assistant このサーバーはLiberty Profileだと思う。 というのもwlpフォルダがあるからだ。Beta1でもそうだった。 IS…

気になるWebSphere本

ひとつ目はWebSphere Internalsという洋書。 UKのユーザーグループの人が書いたもので面白そう。 これはV7なので新しいわけではないが、 濃ゆいことが書かれていそうなんだよね。 もうひとつは日本IBMの人が書いてる和書。 何人か知ってる人の名前がある。 …

WAS V7 - WMQ V7.0.1 for z/OSでありがちな失敗

少しまとめた気になってみました。 JMSプロバイダーのネイティブ・ライブラリ設定 WAS for z/OS V7からは、WebSphere変数MQ_INSTALL_ROOTからは、 ネイティブ・ライブラリのみを読み込むことのみになりますが、 JMSプロバイダーでのネイティブ・ライブラリの…

JNIコードとSHRLIBRGNSIZE

昔、JNIコードを書いたのだが、最近になって一点考慮漏れがあることに気付いた。 正直そこまでたいそうな話ではないかもしれない。 .soに、Extended Attributesを付けることを考えてなかった。 extattrというのは、4つのオプションがある a=APF authorized p…

Running out of ASIDs

z/OSでASIDの数が枯渇するという話です。 2年くらい前に開発環境構築後に経験したことを 今の知識で補足して書いてみようと思う。 ASIDの数は有限で、再利用出来るのと、再利用出来ないのがある。 WAS for z/OSを導入後、MQをBINDINGS MODEで繋ぐため、 JCL…

STOPコマンドでWASが停止しない時の正しい対処

開発環境では結構起ってると思う事象で、 これが本番で起きたらどう対処するべきかを考えていた。 多くの人が取る行動は以下のものだと思う。 ダンプを取る CANCELコマンド (それでも駄目なら)FORCEコマンド 惜しい、これでは80点。 ここから少しだけ私の提…

WAS for z/OSでのTIMEOUTの調査方法

よくある問題であるため、調査方法はシンプル。 まずはこれを読むのが一番いい。 Webcast Replay: Diagnosing Timeouts in WebSphere Application Server for z/OS http://www-01.ibm.com/support/docview.wss?uid=swg27007547 少しだけ補足してみる。 IP VE…

JIT Compiler Testarossaとjavacore

Testarossaについてはあまり資料が見当たらないのだが、 少しだけ気付いてることはあるので書いてみる。 一年か二年前にも実験してたが、今回気が向いたので、理解を深めてみた。 WAS8.0からJ9のバージョンはR26になり、 どうもJITコンパイラであるTestaross…

z/OS USSでのpsコマンドのオプション

暇つぶしにz/OSでしか使えないようなpsコマンドのオプションを少し書いてみる。 何を書くかというと、-oオプションについて。 詳しくはUNIX System Services Command Referenceを読めばいい。 個人的にこれまで使ってるのはこんなのとか。 args,xasid,jobnam…

ラージ・ページ・サポート(-Xlp)の考察

SRに-Xlpで1MBのFRAMEを取れないって事象を調べている。 前から疑問だった、-Xlp指定してないのにCRが1MBのFRAME取ってる件もついでに調べている。 少し理解が深まった気がする。 まず-verbose:gcでrequestedPageSizeとpageSizeは確認している。 確かに1MBの…

MDBの性能を処理対象データに基づいて計測する方法の考察

z/OSではRMFを使って性能測定をするのが普通のようで、おそらくどこでもやっているだろう。 どれだけ性能分析をカテゴライズ出来るかに興味がある。 性能分析といっても色々あるからな・・・、 ここではアプリケーションの立場からの分析を補助出来るか否か…

SVCダンプを読むための知識

まだ全然読めてるとは言いがたい部分があるが 前回(SVCDUMPを読むための初歩 - きどたかの日記)から多少は詳しくなった気がする。 コントロールブロックを読むためには、その構造を知った方が良いと自分は考えていて、 コントロールブロックの関係性をちょっ…

今日のClassNotFound解析(難易度:初級)

ClassNotFoundは解析が簡単な問題のひとつです。 それはたとえWASのクラスであってもです。 ClassNotFoundの問題を自力で調べられないようではまだまだお子様でしょう。 まず初めに、どのクラスが見つからないかがメッセージで出てるでしょう。 次にやること…

WASzのCTRACEのセットアップ

過去に自分でも経験したことなので書いてみる。 cell-scopeのWebSphere変数Daemon_ras_trace_ctraceParmsのやつです。 初期のセットアップでは60が設定されるでしょう。 これでPARMLIBからCTIBBO60を探します。 あと勝手にCTIBBO00も探します。 無かったらIN…

今日のOOM解析(難易度 初級)

OutOfMemoryErrorがきた。 まずGCログを見る。 Javaヒープ足りてるな。 じゃあネイティブが怪しいんだろ。 それにしてもafの他にsys出てるけど何でSystem.gc()とか使ってるんだろう。 MQとDB2の設定をわかる範囲でかき集める。 一般的にネイティブは、Javaの…

WASzにおけるSTOKENについて

WebSphere Application Server for z/OSを使っていると、 STOKENという言葉に出くわす人がいると思う。 STOKENはSpace Tokenの略だと思われる。 Address SpaceやData Space毎に持ってるTokenということだ。 ASCRE macroのOutput ParameterにODAというのがあ…

証明書がらみのRACFコマンド

証明書がらみのことを最近やっているので、ちと書いてみる。 詳しいことは、次のドキュメント等を読もう。 Security Server RACF Command Language Reference ※マニュアル WebSphere Application Server V7.0 Security Guide ※Redbook Encryption Facility f…

WASzのデバッグポート

思い出したかのように、昔の引き出しからどうでも良い情報を書いてみる。 サーバーのページで、デバッグサービスを使うのが普通。 しかし、SRが複数あるとこれではダメ。ポートが重複して、残りのSRが起動出来ない。 そんなこんなで周りに人にはデバッグする…

WASzにおけるWLMの使われ方のイメージ

これは自分の中のイメージであって、正しいというわけではありません。 アメリカに来る前から抱いているイメージです。 きっとほとんどの人がちんぷんかんぷんな内容になるでしょう。 WASzは2つのWLMサービスを使用していると思う。 1つはQueuing Manager Se…

ふんづまってたことがようやくスッキリ

自分が作ったアプリケーションでは3つの環境で再現出来る事象が、 なんか他の人が作ったアプリケーションでは再現出来ない状態で、 WebSphereの設定も含めて自分が思うように整えたうえでの事なので、 「環境に差によるものかもしれない」だとか、 「アプリ…

CIPを作成してみる

やらないといけないことはあんまり手をつけていませんが、かわりに今までやれなかった新しいことに挑戦してみている。 CIPに挑戦。 きっとあのしょぼい選択ミスのせいで、 空のセルプロファイルになってしまってた。 僕は統合サーバーにしたかったのだが。 C…

CIP カスタマイズ・インストール・パッケージを使ってみたい

そんなにしょっちゅうインストールするわけはないのだが、 IBM Installation Factoryというものに前々から興味を持っている。 製品インストール、保守パッケージのインストール、 プロファイルのカスタマイズ、EARのデプロイ。 なんか諸々を組み込んだC…

念願のリモートへのデプロイのやり方を把握した(wsInstallApp)

WebSphereにはいくつかAntタスクが用意されてる。 今回は、com.ibm.websphere.ant.tasks.InstallApplicationの使い方の注意点を書いてみる。 これはJavaDoc通りならば、Antタスク名「wsInstllApp」として使います。 Rational Application Developerとかなら…

リスナーポートとアクティベーションスペックの切り替えに失敗(バイディングのマージにご用心)

アプリケーションを「更新」で置き換えると発生するのだと思う。 ログメッセージには、ibm-ejb-jar-bnd.xmlのの箇所について変だと言ってくる。 resource-refだとかresource-env-refだとか3種類くらいのうちからなんか書けという感じ。 僕は確かにejb-jar.xm…

WebSphere7.0.0.7もしくは7.0.0.9にするために周りを説得する材料を用意していくか

僕に解決出来ていない問題が1つある。(もっとあるだろうけど) アプリケーションの再始動等のタイミング(と思われる)に、 メッセージ・エンドポイントがどうのこうのとMDBリスナーに関する活動化の部分で例外が起きることがある。 この事象は一体なん…

ZFileExceptionがNoClassDefFoundError

なんか知らんけど、これまで動いてたと思っていたものが、 サーバー上で全く動いた実績がなかったことが判明した。 半年くらい動いてなかったことに気付いてないことを恥としたい。 (だから言ってるだろう、コメントアウトでやり過ごすなって・・・) NoCla…

z/OSでも動いたPerformance Inspector

Webページ通りでは動かなかったのだが、WebSphere Applicaiton Server v7.0 for z/OSでもPerformance Inspectorは動作しました。 PATHとLIBPATHの通し方が分からなかったが、IBMに質問をしたらすぐに回答がきた。 素晴らしいじゃないか。 自分で設定作業をし…

Performance Inspectorというプロファイリングツールを使ってみた

日本語資料がほとんど見当たらないので、なんか書き残しておこう。 Performance Inspectorの情報は、この2つを把握しておけばいいでしょう。英語だよ。 http://perfinsp.sourceforge.net/ http://www.alphaworks.ibm.com/tech/pi Performance Inspectorはプ…

クラスロードしてくれるな

前から気になってたことがまた気になり始めた。 WebSphereのデータソースおよびそのJDBCプロバイダで、どうしても変だなと思う事がある。 有効範囲がサーバーで、JDBCプロバイダとして、DB2 のUniversal Driverと、DB2のJCC Driverを定義してます。これらの…

開始Beanがうまく動かなかった件について

どうやら単純な設定ミスっぽい。 @RemoteHomeで指定しつつ、ejb-jar.xmlに書く必要は無いようだ。 あまり理屈は分かってないのだが、 結果としてejb-jar.xmlからセッションBeanの記述を消したら期待通りの挙動を示した。 ログ見る。 不審に思う。 仮説を立て…

開始Beanが上手く動いてないのは何でだ??

WAS ND 7.0.0.5で、 com.ibm.websphere.startupservice.AppStartUpHomeを実装したセッションBeanにより、 アプリケーションの開始・停止時に動くロジックを用意してる。 (モジュールちゃうで、アプリケーションやで。) 開始はうまくいってるように思えるが、…

IBM JDKのBigDecimalはバグってるっぽい。

職場で使ってるRAD7.5.2で使ってるjava -version。 ....\IBM\SDP\jdk\bin>java.exe -version - java version "1.6.0" Java(TM) SE Runtime Environment (build pwi3260sr4-20090219_01(SR4)) IBM J9 VM (build 2.4, J2RE 1.6.0 IBM J9 2.4 Windows XP x86-32…

AdminServiceでWorkManagerのThreadPoolの情報を取ってみた。

うーむ、いけてない。通常、アプリケーションはJNDI名でWorkManagerをlookupすることになるんだけど、 AdminServiceでWorkManagerを取得するには、 「WebSphere:name=WorkManager.DefaultWorkManager」って感じの書き方が必要になる。 AdminService自体がIBM…

wsadminでWorkManagerのスレッドプール統計を取得

問い合わせを受けたんで、試してみた。 同じことやりたい人がいたら、 参考程度に試してみてください。 ちょっとしか使ったことがないので、 Jythonに全然慣れてないから、 Jaclで勘弁してくださいな。 IBMは確かずいぶん前にJaclを非推奨に格下げしてたはず…

WebLogic勉強中

WebSphereで動いていたもんを、 WebLogicで動かそうとしとります。 Web ServiceとWorkManager。 こいつらさえ動けばたぶんいける。 今はWeb Serviceで頓挫中。 なんか、いままでよくWebSphereで動いとったなぁ、と思えるエラーが出てしまう。 web.xmlに書い…