「タブ」v.s「スペース」論争 ww
こんばんは、カズヤんです。
今日は、ぶっちゃけすごいどうでもいいですが、「タブ」と「スペース」の違いについて少し調べたら面白かったので共有しますww
そもそもの発端は、LINUXのコマンドを叩いていて、「expand」コマンドって言うのがあるんですが、このコマンドは、指定されたテキストファイル内にある「タブ」を「スペース」に置き換えるコマンドです。
ただ、IT弱者の僕としては
「タブ」と「スペース」って同じじゃないの?
って思ったわけです。
ITガチでやっている人からするとインデントを「タブ」にするか、「スペース」にするかという問題はかなり重要らしいです。
ちなみに、
スペース・・・単語や文章の区切りとして空白を作りたいときに使用
タブ ・・・文章の開始位置を揃える目的で空白を作りたいとき使用
となるそうです。僕の知りたいのがここまでなのでぶっちゃけその後面倒臭そうです。
なのでコーディングにおいて、この違いがもたらす影響については、下記ブログをみてくださいwww
あとは、Huluにて、Sillicon Valley(シリコンバレー)っていうドラマでもこの論点に関して面白いシーンがありましたww
モテないエンジニアリチャードがやっとこそゲットした可愛い彼女(しかも、Facebook勤務のエリート)は、スペース派のエンジニアで、タブ派のリチャードはそれに我慢できずすぐ破局するというシーン...www
まあ、基本的にアプリの人たちの話なのでインフラの僕は、「タブ」と「スペース」をLINUXの「expand」コマンドにて書き換えられれば問題ないと思っていますwww
恐縮ですが、今日はこれにて失礼しますwww
トランザクション分析(STAD)の紹介
こんにちは、カズヤんです。
今日は、昨日に引き続きSAPシステムにおけるトランザクションのワークロード分析について紹介します。前回はST03を利用したCPU、メモリ増加の原因分析について説明しましたが、今回はアプリ層で実行したトランザクションがどれほどハードウェアリソースを使用しているかなどを調査する方法となります。
トランザクションコードはSTADです。とても覚えづらいですが、便利なトランザクションなので、是非とも実行してみてください。
では、早速実行してみます。
調べたい日時、クライアント、ユーザ、トランザクション、プログラムを入力後に、エンターにて検索します。
今回は何もヒットしませんが、通常ここにトランザクションごとのワークロードが出力されるので、いつ、何のトランザクションがどれだけメモリを消費しているかを確認できます。
今回は、トランザクション分析(STAD)について説明しました。これに関してもSAPアプリエンジニアにとって有益な情報となるはずですので是非とも使ってほしいです。
では、今日はこれにて失礼します!!
SAPワークロード分析(ST03)の紹介
こんばんは、カズヤんです。
今日は、SAP Net WeaverにてどれほどのメモリやCPUが利用されているかを確認するためのトランザクションを紹介します。
運用担当者である場合、月次報告資料でSAPサーバのOSリソース(CPU、メモリ)などの利用状況を報告することがあるのですが、たまにCPUやメモリ利用率が90%を超えていたりするとその原因調査をしてある程度の見解をお客さんに提示する必要があります。
メモリが現在もずっと高い利用率のままならば、LINUX上にて「top」コマンドを叩けば、リアルタイムのOSプロセス利用状況を確認できます。
これ、超便利だし、超使います↓↓
現在実行中プロセスをリアルタイムでモニタリングができます。
ただし、現在は利用率が普通の状態であっても、対象月のある時点のCPU、メモリ使用率が高い時には、SAP GUIにてST03を叩くとSAP上のいつのトランザクションにどれほどのリソースが使用されているかを確認できます。
では、実機上でST03を実行してみます。
「Workload」→ ホスト名「vhcalnplci_NPL_00」→「Day」にて対象日を選択
今回は謎に、アップデートされていませんが、「2017年6月16日」を選択
さらに、メモリ使用統計を確認します( →「Memory Use Statistics」)。
すると、選択した日の中での処理の一覧をメモリ使用量順で出力されます。
大抵、メモリを食うような処理はここの容量が大きいため、ここで一番大きい処理がメモリの大量消費の原因と特定できます。
出力結果によると、「Report or Transaction name」列の「(BATCH)」が最も多いです(何もトランザクションを登録していないので当然といっちゃ当然ですwww) 。
では、ここもクリック。
すると、トランザクション「BATCH」の詳細が確認できます。これをみると、実行ユーザ「SAPSYS」であるとわかります。
なのでここからは通常通りSU01にてユーザ特定すれば「誰が・いつ・なんのために」トランザクションを実行したかがわかります。大抵はアプリ担当がプログラムの検証を実施していた場合がほとんどですが、このST03を利用すれば、アプリ担当の人でもサーバリソースを意識しながら作業ができるのでBasis担当とのコミュニケーションもとりやすくなります。正直Basisからしたら、アプリの人がトランザクションのデータ量も意識せず勝手に好きな検証してたりしたら迷惑きわまりないですからねwww
僕は過去にロックテーブルオーバーフローさせられ、後続ジョブが全部落ちるということありましたからねwww
では、今回はSAPシステム上でのワークロード分析の仕方について紹介しました。
SAP Basis担当だけでなくアプリ担当の方々の一助となれば幸いです。
今後もよろしくお願いします。ではここで!
crontabの設定
こんにちは、カズヤんです。
最近ジョブスケジュールとか結構します。そこで今回はcrontabの使い方について説明します。crontabは運用の現場でよく使われ、設定日時に自動でプログラムを実行してくれるツールです。
目次:
1、Crontabとは
2、Crontab設定方法
3、Crontabを試す
1、Crontabとは
Crontabとは、LINUXやUNIXなどのコマンドベースの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のリストを参照します。
次に、crontab -eにて、実際にコマンドを登録したいと思います。
viエディタの利用方法に関しては、いつか共有しますwww
実行結果を確認します。
正常にコマンドが実行されていることを確認しました。
運用現場でよく使うcrontabの設定について書きました。
SAP BASISやるならこれらコマンドベースのLINUX、UNIXらへんの知識もマストになります。今後もよく使うコマンドを書いてみようと思います。
では、今日はここで失礼します。
SU10によるSAPユーザ一括登録
こんばんは、カズヤんです。
以前、当ブログにてSAPユーザ作成方法について書きました。
それは、Trcd:su01を利用した方法でした。
しかし、時には複数ユーザ作成が必要な時もありますよね。そんな時にわざわざsu01たたいて何回も同じ操作するのなんてやってられないですよね。まあ、運用ルールがあって、それに従わないといけないなんてことはあるのでしょうがないですが、IT人である以上は楽をすることを選ぶべきでしょう。
今回紹介するのは、
Trcd:SU10です。このトランザクションで複数ユーザを一発で作成できます。
ただし、同じ特性を持たせることしかできません。
たとえば、同じロールを持たせたりなどです。
んで、実際に作ってみました。
Trcd:SU10を入力
そのあとに作成したいユーザ名を入力します。
今回は、TEST1 ~ TEST6までの6ユーザを作成します。
入力後に画面上部の「Create User」を押すと、6ユーザを一括設定画面に映ります。
通常のSU01同様に、ユーザのタブを編集します。
今回は特に設定することは無いので、ここはスルーします。
そこで、画面上部の保存ボタンを押下すると、下記画面に移ります。
気になったのですが、これって初期パスワード設定しなくていいのかな?
どうやら、まとめてユーザ作成した後に作成ログが表示されその中に記載されていました。めちゃめちゃなパスワードですがww
ただこれ、気をつけなきゃいけないのが、一旦このログ見落としたらどのトランザクションコードで確認できるのかわかりません。なので必ず確認しましょうww
一旦ログオンできるか試してみます。
通常通りログオンすると、新パスワード設定ポップアップが表示されるので、適当にパスワード入力できます。
無事ログオンできた!!
まあ、今回6ユーザですが、50ユーザくらいのロール変更とかも普通にできるっぽいのでBasis管理者の方は機会あったら使ってみてください。
今日は、Trcd:SU10を使ったSAPユーザの一括新規登録の方法について書きました。
また、便利な手順などがあったら共有します。
では、また!!
ブログ名変更のお知らせ
こんにちは、カズヤんです。
2月もまもなく終わりを迎える今日この頃ですが、本ブログも10月に開設しまして、2月いっぱいをもって運営5ヶ月が経ちます。
今では私も新人とは言えないので、これを機にブログ名を変更いたします。
5ヶ月ブログを書いていて、SAP Basisサイトの中ではGoogle検索で一番最初に出てくるブログとなりましたwww これもひとえに皆様のおかげです。
恐縮ですが、「新人の備忘録」にしては飛躍しすぎた感がありますwww
本日以降は、
「基盤エンジニアの備忘録 〜フリーダムを目指して〜」
とい名前にて当ブログを運営いたします。
名前の由来として、
やはり最終的には、組織にとらわれずフリーランスの立場で仕事をしたいと思っているからです。
インフラエンジニアってフロントエンドのコーダーと異なり、フリーランサーになりづらいっていう風潮ありますが、最近ではインフラエンジニアでもフリーランスで仕事を得られる社会になりつつあります。これに関しては、以前記事にて書いています↓↓
あとは、働き方だけでなく、日本人が元来持っている会社に依存する体質がすごく嫌いです。過労死で亡くなる方とか話題をになっていますが、会社が嫌ならやめちゃえばいいですよww
今、日本の労働者は会社に依存しすぎな気がします。会社に所属しなくても死にはしないし、自分でお金を稼げる環境さえ作っちゃえばいいんですよww
僕は運良くIT業界にいるので、どこの国でも、どこの組織でも自分の技術を活かして仕事できます。どこに行っても仕事が手に入る環境を多くの人が作るべきだと本気で思っています。
このブログが単なる技術ブログでなく、そのようなストリームを私のキャリアを通じてお伝えできたらそれも一つの付加価値だと思っています。
最後に、SAP Basisはやはりマイナーでメディアを運営している人が本当に少ないので、本ブログにて有益な情報をお届けできるよう今後とも頑張ります。
引き続きよろしくお願いいたします。
では!!
SAPのプロファイルファイル
こんばんは、カズやんです。
今日もひたすらインプット... SAP ADM100という研修で対象範囲である、SAPプロファイルについて学習しています。SAP認定コンサル試験ではマストな論点となります。
SAPプロファイルに関しては、SAPシステム稼働に必要となるパラメータが記載されており、システムのチューニングの際にパラメータを変更するときなどはこのファイルに記載されているパラメータを書き換えることになります(Trcd:RZ10)。
SAPのプロファイルは、OS上に置かれるファイルです。 これらはUNIX環境においては下記ディレクトリに置かれます。これは、LINUXでも同じです。
/usr/sap/<SID>/SYS/profile
※ SAP Net Weaver 7.3以降からは、起動プロファイルがインスタンスプロファイルと統合されました。
■ Net Weaver 7.2以前
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のディレクトリを見てみると、
・DEFAULT.PFL
・NPL_ASCS01_vhcalnplci
・NPL_D00_vhcalnplci
システムプロファイル(デフォルトプロファイル)とインスタンスプロファイルが2つ存在しています。
デフォルトプロファイルの中身はこんな感じです ↓↓
パラメータがたくさん載っていますね。
では、次にセントラルインスタンスのインスタンスプロファイルを見てみます。
ダイアログインスタンスのインスタンスプロファイルを見てみます。
こっちはめちゃくちゃたくさん載ってますね。
システムプロファイルと比べると、中身も全然違いますね。
最後に、SAP GUI上にてこれらのプロファイルを確認します。
トランザクションRZ11(パラメータ参照)を実行すると以下の画面が確認できます。
今確認した3つのプロファイルがしっかりと確認できます。
さらに、トランザクションRZ10(パラメータ変更)を実行するとプロファイルファイルのパラメータ変更ができますが、これに関しては以降で説明します。
では、今日はここまでにします。
第3保守ベンダーの有効性について
こんばんは、カズヤんです。
最近は猛烈仕事充実しています。新人で経験できることを超越してきた気がします。
(新人期間も残り1ヶ月なので、そろそろブログ名変更も検討中..)
とりあえず、現状共有↓
今入っている運用フェイズのプロジェクトにてリプレースの依頼をもらい、提案・構築の側面を持つプロジェクトになりました。そのため、今やっている運用業務プラス、提案・構築関連のところもすこ〜しですが経験させてもらって、業務にさらにハマっています。
今回、初めて提案フェイズに参加し、ERPシステム保守費用について考える機会を得ました。保守費用って聞いただけではあまりピンとこないのですが、提案・構築フェイズにおいては、お客様のシステム要件を聞き出し、インフラベンダーと協業し、社内セールスと契約費用の見積もりを行うなど、多岐にわたってヒアリングをする機会があります。
そんな中、「保守費用」の重要性について認識することとなりました。(結果として、リミニは利用しないことになりましたが...)
SAPのようなERPベンダーと年間保守契約を結ぶと、何千万円って費用がかかるようです。そのため、企業の情報部門からすると、この費用を捻出するのに大変な意思決定をするわけです。今回ソリューションを提案させていただくにあたり、この保守費用の位置付けがかなりのウエイトを占めました。
そこで知ったこの会社、皆さんリミニストリートという保守ベンダーを聞いたことがありますでしょうか。私も知ったのは最近ですが、どうやらこの会社は最近波に乗っている第3保守ベンダーのようで、SAP社のような正規ERPベンダーが提示する保守費用のおよそ50%の費用で保守サポートを行ってくれるようです。
まあ、ユーザ企業的には、SAPの正規サポートほど手厚くなくてもいいから既存のシステムを使い続けたいとかいう時に利用するんでしょうね。
ERPパッケージの保守サービスは基本的には、
・SAP Noteリリース
・リモート調査
・インシデント問い合わせ....
とかでしょうか(実は全部までわかりませんがw)
これらをリミニのSAPエンジニアがSAP社の代わりにサポートしてくれるということです。リミニについては下記リンクを参照 ↓↓
この保守代行サービスはものすごい画期的な一方で、リミニ自体がベンダーとは何も提携関係を持っていないため、ベンダー側から訴訟されることもあるそうです。
この問題ってすごい難しいですよね。
まあ、普通に考えれば、ソフトウェアベンダーが今まで独占していた保守サポートの既得権益を侵すわけですからね...目の上のたんこぶてきな感じですかね?
普段ガチでシステムしか触れてないのでこういう契約関連の話が新鮮で面白かったので書きましたが、今後PMとかやる機会あったら必要な知識ですね。
私もデリバリーは長くやりたいのでリミニの動向は継続的に追いつつ、このへんの知識も今後詰めていこうと思います。興味あったらもっと調べてみてください。
では、今日はここで失礼します。