SAPワークロード分析(ST03)の紹介

こんばんは、カズヤんです。

今日は、SAP Net WeaverにてどれほどのメモリやCPUが利用されているかを確認するためのトランザクションを紹介します。

 

運用担当者である場合、月次報告資料でSAPサーバのOSリソース(CPU、メモリ)などの利用状況を報告することがあるのですが、たまにCPUやメモリ利用率が90%を超えていたりするとその原因調査をしてある程度の見解をお客さんに提示する必要があります。

メモリが現在もずっと高い利用率のままならば、LINUX上にて「top」コマンドを叩けば、リアルタイムのOSプロセス利用状況を確認できます。

これ、超便利だし、超使います↓↓

f:id:kazuyaengineer:20180309223949p:plain

現在実行中プロセスをリアルタイムでモニタリングができます。

 

ただし、現在は利用率が普通の状態であっても、対象月のある時点のCPU、メモリ使用率が高い時には、SAP GUIにてST03を叩くとSAP上のいつのトランザクションにどれほどのリソースが使用されているかを確認できます。

 

では、実機上でST03を実行してみます。

「Workload」→ ホスト名「vhcalnplci_NPL_00」→「Day」にて対象日を選択

f:id:kazuyaengineer:20180309230953p:plain

 

f:id:kazuyaengineer:20180309231247p:plain

今回は謎に、アップデートされていませんが、「2017年6月16日」を選択

さらに、メモリ使用統計を確認します( →「Memory Use Statistics」)。

f:id:kazuyaengineer:20180309231413p:plain

すると、選択した日の中での処理の一覧をメモリ使用量順で出力されます。

大抵、メモリを食うような処理はここの容量が大きいため、ここで一番大きい処理がメモリの大量消費の原因と特定できます。

出力結果によると、「Report or Transaction name」列の「(BATCH)」が最も多いです(何もトランザクションを登録していないので当然といっちゃ当然ですwww) 。

では、ここもクリック。

f:id:kazuyaengineer:20180309231931p:plain

すると、トランザクション「BATCH」の詳細が確認できます。これをみると、実行ユーザ「SAPSYS」であるとわかります。

なのでここからは通常通りSU01にてユーザ特定すれば「誰が・いつ・なんのために」トランザクションを実行したかがわかります。大抵はアプリ担当がプログラムの検証を実施していた場合がほとんどですが、このST03を利用すれば、アプリ担当の人でもサーバリソースを意識しながら作業ができるのでBasis担当とのコミュニケーションもとりやすくなります。正直Basisからしたら、アプリの人がトランザクションのデータ量も意識せず勝手に好きな検証してたりしたら迷惑きわまりないですからねwww

僕は過去にロックテーブルオーバーフローさせられ、後続ジョブが全部落ちるということありましたからねwww 

 

では、今回はSAPシステム上でのワークロード分析の仕方について紹介しました。

SAP Basis担当だけでなくアプリ担当の方々の一助となれば幸いです。

 

今後もよろしくお願いします。ではここで! 

にほんブログ村 IT技術ブログ IT技術メモへ
にほんブログ村

crontabの設定

こんにちは、カズヤんです。

最近ジョブスケジュールとか結構します。そこで今回はcrontabの使い方について説明します。crontabは運用の現場でよく使われ、設定日時に自動でプログラムを実行してくれるツールです。

目次:

1、Crontabとは

2、Crontab設定方法

3、Crontabを試す

 

1、Crontabとは

Crontabとは、LINUXUNIXなどのコマンドベースのOSのジョブスケジューリング機能です。システム運用現場では、監視スクリプトやシステムバックアップを定時実行する時などに用いられます。

 

2、Crontab設定方法

ジョブスケジュールをする際には、crontabコマンドを用います。

<コマンド> crontab [オプション]

 

[オプション]

-e      viエディタにてcrontabファイルを編集

-l       crontabファイルの内容を表示

-r       crontabファイルの削除

 

crontab -l にて、設定されているファイルを事前に確認した後に、crontab -eにてcrontabを設定するというイメージですね。

 

crontab -eを実行後、cronファイルが開かれるので、その中に下記書式でスケジュールしていきます。

 

<書式>  分 時 日 月 曜日 コマンド

 

分  0 〜 59

時  0 〜 23

日  1 〜 31

月  1 〜 12 

曜日    0 〜 7 (0、7:日曜 〜 6:土曜)

「 *」 は任意の値をさします。また、「*/1」で毎分、「*/2」で2分毎などの設定も可

 

例) 2018年3月2日(金)の23:30に「Hello World」と出力する

⇨  30 23 02 03 5 echo Hello World

 

3、Crontabを試す

では、実際にcrontabを利用して、決められた時間にプログラムを実行してみたいと思います。

日時:毎分

処理:テキスト「Hope my blog help Infra Engineers.」を/home/demo.textに出力

 

やってみたいと思います。

まず、crontab -lにて、現在登録されているcrontabのリストを参照します。

f:id:kazuyaengineer:20180303160124p:plain

次に、crontab -eにて、実際にコマンドを登録したいと思います。

viエディタの利用方法に関しては、いつか共有しますwww

f:id:kazuyaengineer:20180303160158p:plain

実行結果を確認します。

f:id:kazuyaengineer:20180303160302p:plain

正常にコマンドが実行されていることを確認しました。

 

運用現場でよく使うcrontabの設定について書きました。

SAP BASISやるならこれらコマンドベースのLINUXUNIXらへんの知識もマストになります。今後もよく使うコマンドを書いてみようと思います。

では、今日はここで失礼します。

にほんブログ村 IT技術ブログ IT技術メモへ
にほんブログ村

SU10によるSAPユーザ一括登録

こんばんは、カズヤんです。

以前、当ブログにてSAPユーザ作成方法について書きました。

それは、Trcd:su01を利用した方法でした。

www.kazusapbasis.com

しかし、時には複数ユーザ作成が必要な時もありますよね。そんな時にわざわざsu01たたいて何回も同じ操作するのなんてやってられないですよね。まあ、運用ルールがあって、それに従わないといけないなんてことはあるのでしょうがないですが、IT人である以上は楽をすることを選ぶべきでしょう。

 

今回紹介するのは、

Trcd:SU10です。このトランザクションで複数ユーザを一発で作成できます。

ただし、同じ特性を持たせることしかできません。

たとえば、同じロールを持たせたりなどです。

 

んで、実際に作ってみました。

 

Trcd:SU10を入力

f:id:kazuyaengineer:20180227212219p:plain

そのあとに作成したいユーザ名を入力します。

今回は、TEST1 ~ TEST6までの6ユーザを作成します。

f:id:kazuyaengineer:20180227212325p:plain

入力後に画面上部の「Create User」を押すと、6ユーザを一括設定画面に映ります。

f:id:kazuyaengineer:20180227212518p:plain

通常のSU01同様に、ユーザのタブを編集します。

今回は特に設定することは無いので、ここはスルーします。

そこで、画面上部の保存ボタンを押下すると、下記画面に移ります。

f:id:kazuyaengineer:20180227212728p:plain

気になったのですが、これって初期パスワード設定しなくていいのかな?

どうやら、まとめてユーザ作成した後に作成ログが表示されその中に記載されていました。めちゃめちゃなパスワードですがww

ただこれ、気をつけなきゃいけないのが、一旦このログ見落としたらどのトランザクションコードで確認できるのかわかりません。なので必ず確認しましょうww

f:id:kazuyaengineer:20180227212821p:plain

一旦ログオンできるか試してみます。

f:id:kazuyaengineer:20180227212840p:plain

通常通りログオンすると、新パスワード設定ポップアップが表示されるので、適当にパスワード入力できます。

f:id:kazuyaengineer:20180227212958p:plain

無事ログオンできた!!

 

まあ、今回6ユーザですが、50ユーザくらいのロール変更とかも普通にできるっぽいのでBasis管理者の方は機会あったら使ってみてください。

今日は、Trcd:SU10を使ったSAPユーザの一括新規登録の方法について書きました。

また、便利な手順などがあったら共有します。

では、また!!

にほんブログ村 IT技術ブログ IT技術メモへ
にほんブログ村

ブログ名変更のお知らせ

こんにちは、カズヤんです。

2月もまもなく終わりを迎える今日この頃ですが、本ブログも10月に開設しまして、2月いっぱいをもって運営5ヶ月が経ちます。

 

今では私も新人とは言えないので、これを機にブログ名を変更いたします。

5ヶ月ブログを書いていて、SAP Basisサイトの中ではGoogle検索で一番最初に出てくるブログとなりましたwww これもひとえに皆様のおかげです。

恐縮ですが、「新人の備忘録」にしては飛躍しすぎた感がありますwww

 

本日以降は、

「基盤エンジニアの備忘録 〜フリーダムを目指して〜

とい名前にて当ブログを運営いたします。

 

名前の由来として、

やはり最終的には、組織にとらわれずフリーランスの立場で仕事をしたいと思っているからです。

インフラエンジニアってフロントエンドのコーダーと異なり、フリーランサーになりづらいっていう風潮ありますが、最近ではインフラエンジニアでもフリーランスで仕事を得られる社会になりつつあります。これに関しては、以前記事にて書いています↓↓

www.kazusapbasis.com

あとは、働き方だけでなく、日本人が元来持っている会社に依存する体質がすごく嫌いです。過労死で亡くなる方とか話題をになっていますが、会社が嫌ならやめちゃえばいいですよww

今、日本の労働者は会社に依存しすぎな気がします。会社に所属しなくても死にはしないし、自分でお金を稼げる環境さえ作っちゃえばいいんですよww

僕は運良くIT業界にいるので、どこの国でも、どこの組織でも自分の技術を活かして仕事できます。どこに行っても仕事が手に入る環境を多くの人が作るべきだと本気で思っています。

このブログが単なる技術ブログでなく、そのようなストリームを私のキャリアを通じてお伝えできたらそれも一つの付加価値だと思っています。

 

最後に、SAP Basisはやはりマイナーでメディアを運営している人が本当に少ないので、本ブログにて有益な情報をお届けできるよう今後とも頑張ります。

引き続きよろしくお願いいたします。

では!!

にほんブログ村 IT技術ブログ IT技術メモへ
にほんブログ村

SAPのプロファイルファイル

こんばんは、カズやんです。

今日もひたすらインプット... SAP ADM100という研修で対象範囲である、SAPプロファイルについて学習しています。SAP認定コンサル試験ではマストな論点となります。

SAPプロファイルに関しては、SAPシステム稼働に必要となるパラメータが記載されており、システムのチューニングの際にパラメータを変更するときなどはこのファイルに記載されているパラメータを書き換えることになります(Trcd:RZ10)。

参考:SAP ライブラリ - 設定

 

SAPのプロファイルは、OS上に置かれるファイルです。 これらはUNIX環境においては下記ディレクトリに置かれます。これは、LINUXでも同じです。

/usr/sap/<SID>/SYS/profile

※ SAP Net Weaver 7.3以降からは、起動プロファイルがインスタンスプロファイルと統合されました。

■ Net Weaver 7.2以前

1システム 1システムプロファイル

1インスタンス 1インスタンスプロファイル

1インスタンス 1起動プロファイル

■ Net Weaver 7.3以降

1システム 1システムプロファイル

1インスタンス 1インスタンスプロファイル(起動プロファイルの内容も統合)

参考:What’s new in SAP NetWeaver 7.3 – A Basis perspective Part-I | SAP Blogs

 

それぞれのファイルの役割としては、

システムプロファイル

→システム全体に関する情報が記載されているプロファイルファイルとなります。システム名、データベースホスト名、エンキューサーバ名などの情報が含まれます。

 ・インスタンスプロファイル

インスタンス特有の情報が記載されているプロファイルファイルとなります。

 

では、実際にOS上にて確認してみましょう。

該当するOSのディレクトリを見てみると、

f:id:kazuyaengineer:20180224192653p:plain

・DEFAULT.PFL

・NPL_ASCS01_vhcalnplci

・NPL_D00_vhcalnplci

システムプロファイル(デフォルトプロファイル)とインスタンスプロファイルが2つ存在しています。

 

デフォルトプロファイルの中身はこんな感じです ↓↓

f:id:kazuyaengineer:20180224200203p:plain

パラメータがたくさん載っていますね。

 

では、次にセントラルインスタンスインスタンスプロファイルを見てみます。

f:id:kazuyaengineer:20180224200854p:plain

 

f:id:kazuyaengineer:20180224200909p:plain

 

ダイアログインスタンスインスタンスプロファイルを見てみます。

f:id:kazuyaengineer:20180224201036p:plain

f:id:kazuyaengineer:20180224201051p:plain

 

f:id:kazuyaengineer:20180224201148p:plain

f:id:kazuyaengineer:20180224201218p:plain

こっちはめちゃくちゃたくさん載ってますね。

システムプロファイルと比べると、中身も全然違いますね。

 

最後に、SAP GUI上にてこれらのプロファイルを確認します。

トランザクションRZ11(パラメータ参照)を実行すると以下の画面が確認できます。

f:id:kazuyaengineer:20180224201406p:plain

今確認した3つのプロファイルがしっかりと確認できます。

さらに、トランザクションRZ10(パラメータ変更)を実行するとプロファイルファイルのパラメータ変更ができますが、これに関しては以降で説明します。

 

では、今日はここまでにします。

にほんブログ村 IT技術ブログ IT技術メモへ
にほんブログ村

第3保守ベンダーの有効性について

こんばんは、カズヤんです。

最近は猛烈仕事充実しています。新人で経験できることを超越してきた気がします。

(新人期間も残り1ヶ月なので、そろそろブログ名変更も検討中..)

とりあえず、現状共有↓ 

今入っている運用フェイズのプロジェクトにてリプレースの依頼をもらい、提案・構築の側面を持つプロジェクトになりました。そのため、今やっている運用業務プラス、提案・構築関連のところもすこ〜しですが経験させてもらって、業務にさらにハマっています。

今回、初めて提案フェイズに参加し、ERPシステム保守費用について考える機会を得ました。保守費用って聞いただけではあまりピンとこないのですが、提案・構築フェイズにおいては、お客様のシステム要件を聞き出し、インフラベンダーと協業し、社内セールスと契約費用の見積もりを行うなど、多岐にわたってヒアリングをする機会があります。

そんな中、「保守費用」の重要性について認識することとなりました。(結果として、リミニは利用しないことになりましたが...)

 

SAPのようなERPベンダーと年間保守契約を結ぶと、何千万円って費用がかかるようです。そのため、企業の情報部門からすると、この費用を捻出するのに大変な意思決定をするわけです。今回ソリューションを提案させていただくにあたり、この保守費用の位置付けがかなりのウエイトを占めました。

 

そこで知ったこの会社、皆さんリミニストリートという保守ベンダーを聞いたことがありますでしょうか。私も知ったのは最近ですが、どうやらこの会社は最近波に乗っている第3保守ベンダーのようで、SAP社のような正規ERPベンダーが提示する保守費用のおよそ50%の費用で保守サポートを行ってくれるようです。

 

まあ、ユーザ企業的には、SAPの正規サポートほど手厚くなくてもいいから既存のシステムを使い続けたいとかいう時に利用するんでしょうね。

 

ERPパッケージの保守サービスは基本的には、

・SAP Noteリリース

・リモート調査

・インシデント問い合わせ....

とかでしょうか(実は全部までわかりませんがw)

 

これらをリミニのSAPエンジニアがSAP社の代わりにサポートしてくれるということです。リミニについては下記リンクを参照 ↓↓

www.riministreet.com

 

この保守代行サービスはものすごい画期的な一方で、リミニ自体がベンダーとは何も提携関係を持っていないため、ベンダー側から訴訟されることもあるそうです。

この問題ってすごい難しいですよね。

まあ、普通に考えれば、ソフトウェアベンダーが今まで独占していた保守サポートの既得権益を侵すわけですからね...目の上のたんこぶてきな感じですかね?

 

普段ガチでシステムしか触れてないのでこういう契約関連の話が新鮮で面白かったので書きましたが、今後PMとかやる機会あったら必要な知識ですね。

私もデリバリーは長くやりたいのでリミニの動向は継続的に追いつつ、このへんの知識も今後詰めていこうと思います。興味あったらもっと調べてみてください。

 

では、今日はここで失礼します。

にほんブログ村 IT技術ブログ IT技術メモへ
にほんブログ村

SM21(シスログ確認)によるログ監視

こんばんは、カズヤんです。

今日は、SAP Basis管理においてマストとなるシステムログ監視のトランザクションについて説明します。シスログとは、システムにとって重要なイベントが記録されるログのことです。シスログを確認することでシステム稼動に対してクリティカルなイベントなどを早期に発見できます。SAPにおいてシスログ監視のトランザクションはSM21で実行が可能です。

では、早速SAPGUIにて試して見ます。

f:id:kazuyaengineer:20180220232641p:plain

Trcd:SM21の実行

 

f:id:kazuyaengineer:20180220232716p:plain

すると、こんな画面が出る。

ちなみ、私はSAP_Basis731までしか使ったことなかったので、驚いたのですが、

UIがだいぶ変わっていますね。これがSAP_BASIS740からかはわからないですが、

少し見づらい...www

f:id:kazuyaengineer:20180220233025p:plain

いろんな記号が出ていますが、基本的に赤でなければ問題ないという認識でOKです。

ただし、赤の箇所がいくつかありますので確認してみました。

これをダブルクリックすると次のような画面に飛びます。

f:id:kazuyaengineer:20180220233139p:plain

ここに、シスログに吐かれたエラーの詳細が記載されています。

基本的には、エラーの内容はこの画面にてわかるのですが、半分くらい難解なシステム用語が出てくるのでそういう時には、その用語をテキストコピーして、SAPのSupport PortalにてNote検索すると大抵の場合は有益な情報が得られます。

では、今回はどうでしょうか?

 

じっくり見ると、

「Message details」のところの「Message Text」の箇所に

>Total number of Wps(16) exceeds wp_max_no(14)

と記載があります。これは、なんかわかりそうですね。

直訳すると、「ワークプロセスの合計数がwp_max_noを超えている」ということですね。

推測ですが、「実際にシステムに存在するワークプロセス」と「ワークプロセス最大数を定義するパラメータ」の値に不整合があるということでは?

 

ということで、追加調査します。

システム内のパラメータでワークプロセスの最大数を定義するパラメータは

rdisp/wp_max_noでしたので、このパラメータを調べます。

トランザクションはRZ11です。

実行後、「rdisp/wp_max_no」と入力し、参照を選択すると以下の画面になります。

f:id:kazuyaengineer:20180220233922p:plain

これを見ると、Current Valueが4となっていることがわかります。

そして、今回画面つけていませんが、

このシステムのデフォルトのワークプロセス数は8ですので、

これら2つに不整合があることを確認しました。

 

ちなみにこのパラメータ変更したことがないのであれですが、おそらく変更したら

シスログの警告はなくなると思われます。今回は、システムを構築後、まだライセンス認証やワークプロセスの確認等を行っていないのでパラメータの変更は行いませんが、シスログの使い方わかってもらえましたら幸いです。

これって、ABAPerの方々やFIコンサルタントの方々は知らないのかな??

ちょっとどこまでがBasis特有の業務かわからないのでコメントとかもらえるとありがたいです。

 

補足ですが、

このシスログは、もちろんOS上でも確認できます。

OSでは、/usr/sap/<SID>/D20/log/SLOG<SAP-instance_number>

このパスがデフォルトで設定されているはずです。

今回私が構築した環境では、/usr/sap/NPL/D00/logのパスに格納されていました。

確認して見ると、中身はSM21の内容と同じであることを確認しました。

f:id:kazuyaengineer:20180220234525p:plain

ただ、なぜか真っ直ぐにならない気持ち悪い文字群が出てくるのが玉に瑕ですが....

 

今日はSM21のシスログ監視について説明しましたが、質問などありましたらコメントお願いします。

では、今日はこれにて失礼します!!

にほんブログ村 IT技術ブログ IT技術メモへ
にほんブログ村

ユーザ新規作成

こんばんは、カズヤんです。

昨日は、SAP NetWeaverのインストールもできたわけですので、とりあえずユーザを作成します。

ちなみにユーザ管理(作成、設定変更)もSAP Basis管理者の主要なジョブの1つです。自分の復習のためにも紹介させていただきます。

 

新規ユーザ登録の方法はいたって簡単なのです。

① Trcd:SU01

② 必要情報の記載(名前、初期パスワード)、保存ボタンを押す

③ ログイン確認

④ パスワード設定

たったこれだけです。

 

① Trcd:SU01

f:id:kazuyaengineer:20180219230432p:plain

トランザクションコード入力後に、ユーザ名を入力し、左上の「user」⇒「Create」を選択。

ユーザ名:DEMO

 

② 必要情報の記載(名前、初期パスワード)し、保存ボタンを押す。

f:id:kazuyaengineer:20180219230552p:plain

必要事項を入力します。最低限名前とパスワードを入力すれば問題なし。

f:id:kazuyaengineer:20180219230757p:plain

パスワードはユーザ作成後の初期ログオンで再度設定できるため、この段階で設定するパスワードは簡単なもので問題ありません。

 

③ ログイン確認

f:id:kazuyaengineer:20180219230949p:plain

ログイン画面にて、先ほど作成したユーザ名(DEMO)を入力し、設定したパスワードを入力すると、下記のパスワード設定画面が現れます。

 

④ パスワード設定

f:id:kazuyaengineer:20180219231236p:plain

ここで、設定したパスワードと同じパスワードだとシステムが受付けません。しっかりセキュアなパスワードを設定しましょう。

f:id:kazuyaengineer:20180219231340p:plain

ログオン成功!! 右下の矢印を押すと、ログオンしているシステム、クライアント、ユーザの確認ができます。

以上でユーザ新規作成の手順は終わりです。

 

実際の運用の現場では、これらの作業は定型業務のため手順書を作成し、だれでもできる業務の一つという位置付けがされています。ただし、ロールの割り当てなど少し複雑な設定もあるので、Basisの管理者としてはこれらの基本的な作業は一人でできなければいけません。もし、Basisを今始めたばかりの方がいらっしゃいましたらこの辺りは容易にできるようにしましょう。このTrial環境にてロールの追加とかできるのか怪しいところですが、ユーザ管理関連は今後もやっていくつもりです。

では、今日はここで失礼します。

にほんブログ村 IT技術ブログ IT技術メモへ
にほんブログ村