2016年10月26日水曜日

LSASRVエラーが発生する | ライタス株式会社

今回のトラブルは、とあるイベントログに関わるモノです。 出荷前のWindows Server 2003 R2 SP2の環境で、DNSサーバー兼WEBサーバーというものを作っているのですが、システムイベントログに以下のものが、出力されていました。
Source: LSASRV
Message: サーバー DNS/prisoner.iana.org の認証エラーを検出しました。
認証プロトコル Kerberos からのエラー コードは
"現在、ログオン要求を処理できるログオン サーバーはありません。
(0xc000005e)" でした。

何なんだろう・・・と思って調べてみたところ、 DNS周りの警告のようです。
(書いてあるまま!)

ちなみに、私も知らなかったのですが、prisoner.iana.orgというサーバーが存在するそうです。
ブラックホールサーバーと言うらしいのですが、インターネットに投げられたプライベートIPアドレス
のDNSクエリ(逆引き)を吸収してくれるサーバーだそうです。

http://www.nic.ad.jp/ja/question/domain.html#id000901


ということから、原因としては、プライベートIPアドレスの解決をインターネットに投げてしまっているようです。
実害はないですが、世間様に迷惑をかけているので、何とかしないといけないですね。

じゃあ、どうやって直すかということなんですが・・・

要するに、逆引きのクエリをDNSが解決できないことに問題がありますので、
どうにかして、逆引きさせてやればいいという話になります。


方法は2つ

  1. DNSサーバーに逆引きを登録できるようにしてあげる(ダイナミックDNS)
  2. 自力で逆引きを解決する


今回は、2番目の手法を取りました。
というのも、今回は、自分の名前を解決するのに、自分(DNSサーバー)にお伺いを立てているという、
ちょっと残念な状態になっているので、そもそもキャッシュしないようにしてしまえばいいということです。

参考
http://tamba-yu.blog.eonet.jp/eoblog/2009/07/dns-caeb.html



設定した後は、出てないようなので、あたりだったみたいです。



本記事は、弊社代表のブログ記事なんでもIT屋の宿命からの記事を加筆修正したものです。

2016年10月25日火曜日

VMSMP 28[未解決] | ライタス株式会社

「定期メンテナンスって大事ですね!」

なーにを当たり前のことを言ってるのか、と言われそうですが
今日のお題は、まさに定期メンテナンス中のイベントログをチェックしているときに発見したものです。


前に、同様のイベントの話を書いたので、参考までに貼っておきます。
http://blog.litus.co.jp/2016/03/hyper-vnic.html



結局再発したわけですが、昔と同じ過ちをするわけには行かないので、いろいろ調べてみましたが、結局良くわかりません。



例によって、参考URLです。
http://social.technet.microsoft.com/Forums/ja-JP/hypervja/thread/462926b6-bfee-46c8-b910-724a71f6eb3e/


・・・有償サポートは勘弁して欲しいです・・・


原因としては、同一セグメント上の他のHyper-Vの仮想NIC(ホスト側の仮想NIC含む)とMACアドレスが衝突することによるもののようです。

仮想NICに割りあてるMACアドレスの範囲を調整してあげれば治るらしいです。




治りませんでした。



。・゚・(ノ∀`)・゚・。


仮想NICのMACアドレスの割り当て範囲を変更して、再起動してみたのですが、
現象は変わらず。。。。


結局、前回と同じ方法(仮想NICの再構築)で対処するしかないのか・・・


イベントログを見てみると、、



イベントID:14128  ソース:Hyper-V-Network
Microsoft 仮想ネットワーク スイッチ プロトコル以外のプロトコルが NIC 'Broadcom BCM5716C NetXtreme II GigE (NDIS VBD Client) #2' にバインドされていますが、この NIC は仮想スイッチによって使用されています。

というものがあるのを、たまたま発見。
もしかして、物理NICが外部ネットワークとしてバインドされていることが原因・・・?


Hyper-Vを入れなおせと書いてあるようだったので、
しょうがないということで、結局入れなおしました。。。。本番前でよかったー


入れなおしたあとは、ちゃんとMACアドレスの範囲をかぶらないように調整しておかないと、
同じハメに陥るので、注意ですね。


ちなみに、調べてる間に発見した、マイクロソフトのHyper-Vのネットワーク概念に関する記事
http://blogs.technet.com/b/askcorejp/archive/2009/05/20/hyper-v.aspx


超今更ですが、他人に説明するのには便利なのでメモ。





本記事は、弊社代表のブログ記事なんでもIT屋の宿命からの記事を加筆修正したものです。

2016年10月6日木曜日

IMP中に止まる | ライタス株式会社

とあるシステムで、Oracle 9iの復元をして欲しいと頼まれ、
実際にやってるのですが、困ったことにIMP中に止まる(インポート中...のまま)現象に遭遇しました。

いまさら9iかよ とか言われそうですが、なかなか現実は厳しいのですorz
(私だって・・・私だって・・・!。・゚・(ノ∀`)・゚・。)

さて、どのように回避したらいいかというと、調べ見てたら、意外とあっさり出てきました。

http://otn.oracle.co.jp/forum/message.jspa?messageID=8030769

掲示板の内容が消えると困るので、概要を記載しておくと。

IMP中に止まるということは、オンラインREDOログが一杯になっているのにもかかわらず、スイッチしていない状況が考えられるので

alter system archive log current; を実行するといいよ!

ってことで、実際にやってみたら、できました。


現象が出るのは、大量のデータをインポートしようとしているときみたいなので、

ハマっている方は、ぜひお試しあれ。
(ログスイッチごときでDBが壊れるとは考えにくいですが、一応自己責任ってことで・・・)




本記事は、弊社代表のブログ記事なんでもIT屋の宿命からの記事を加筆修正したものです。

2016年10月5日水曜日

Hyper-Vゲストの時刻同期が意味不明 | ライタス株式会社

今日のトラブルは、Hyper-Vにまつわる話です。

これまでも、w32time周りでひどい目に遭ってきましたが、今日のもなかなか意味不明です。


話をする前に、簡単に今回の環境について、まとめておきましょう。

Hyper-Vホスト機 :Windows Server 2008 R2 SP1 (Hyper-V 2.0) 時計はCisco 1812Jから取得
Hyper-Vゲスト機 :Windows Server 2003 R2 SP2 時計は1812Jから取得
NTPサーバー : Cisco 1812JのNTP機能 時計はNICTから取得

ちょっと特殊な気がしますが、こんな構成です。
今回、時刻同期ができなくなったのは、Hyper-Vゲスト機です。

これまでの経緯で、Hyper-V統合コンポーネントの時刻同期は外していたのですが、
どうもこれが災いした模様です・・・


w32timeが失敗すると、こんな警告が発生します。
ソース:W32Time
イベントID:36
使用可能なタイム スタンプがタイム サービス プロバイダによって提供されなかったため、 タイム サービスは 86400 秒間、システム時刻を同期していません。タイム サービスは 現在同期されておらず、他のクライアントへの時間の提供、またはシステム クロック の更新を行うことができません。これ以上深刻な問題が発生していないことを確認 するために、イベント ビューアに表示されるシステム イベントを監視して ください。 
これ自体は、たまに出る(!?)ので、w32tm /resyncコマンドか、w32timeサービスの再起動で大体が解決します。

ただ、今回は、いつもと少し違っていました・・・

w32tm /resyncを実行しても、


C:\Documents and Settings\Administrator>w32tm /resync
再同期のコマンドを送信:  local computer...
時刻データが利用できなかったため、コンピュータは同期をとり直しませんでした。

どうしたものやらと思って、伝家の宝刀 w32timeのログ出力を設定しました。

設定方法は、以下(ご利用の際は、各自の環境に合わせて変更してください)



reg add "HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config" /v FileLogSize /t REG_DWORD /d [ログサイズ] /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config" /v FileLogName /t REG_SZ /d [ログ出力先] /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config" /v FileLogEntries /t REG_SZ /d 0-300 /f


(参考元)http://www.atmarkit.co.jp/fwin2k/operation/winntp02/winntp02_01.html


ログの出力結果は、読んでもよくわからない感じですが、どうも、VMICTimeProvider に同期しに行こうとしている事がわかりました。

VMICTimeProvider は、Hyper-V統合コンポーネントで提供されているNTPですが、
これについては、以前の記事をご参考ください。

http://fate-it.blogspot.jp/2011/11/hyper-v_18.html




Hyper-Vホスト側では、このサービスは止まっているのですが、
Hyper-Vゲスト側で、まだ、VMICTimeProvider を見に行こうとしているため、
同期できないようなので、ホスト側のサービスを試しに起動してみたところ、同期に成功しました。


NTPサーバーは、別のところに見に行く設定をしているにもかかわらず、
VMICTimeProvider を見に行く理由がさっぱりわからないのですが、
とりあえず、w32tm /unregister & w32tm /registerをして、NTPサーバーの設定をしたところ、
なんとか直しました(直るっていうか再イントール?)


めったに見ない現象ですが、Hyper-Vを運用されている方は、よくよくご注意を・・・

ちなみに、この現象のため、ActiveDirectoryでの利用はできないと言われていましたが、
Windows Server 2012 on Hyper-V 3.0からは、対応しているようです。(本当に大丈夫?)

http://d.hatena.ne.jp/ogawad/20110916/1316128753
http://d.hatena.ne.jp/ogawad/20101129/1290991581




本記事は、弊社代表のブログ記事なんでもIT屋の宿命からの記事を加筆修正したものです。

2016年10月4日火曜日

Oracleのスキーマごとの容量を計測する | ライタス株式会社

Oracleの設計では、たびたびデータ容量(というか表領域の大きさ)が話題になります。

ハードウェアの設計に絡んでくるので、慎重にことを運ばないと、
あとあと面倒な事になりかねない(+最終的に自分に跳ね返ってくる)ので、
きっちりやりたいところです。

容量を計算するのに、すでに展開しているデータベースがあれば、
それは十分な参考資料になります。

と、前置きが長くなりましたが、掲題の「スキーマごとに容量を計測する」を解説しますね。

なんか難しそうと思いがちですが、dba_segmentsというテーブルのお陰で、
コマンド一発で済みます。

select sum(bytes) from dba_segments where owner='<スキーマ名>';

たとえ、表領域を跨いでいても計測できるので、結構いいと思います。

ただ、使う機会は、あまりないかも・・・
表領域の再設計などにご利用ください。


本記事は、弊社代表のブログ記事なんでもIT屋の宿命からの記事を加筆修正したものです。