はてなキーワード: PWDとは
できたできた。自己解決。多分誰にも役に立たないだろうが書いておこう。
DB2はODBCの設定以外にNodeとDBの設定情報が必要らしい。それがなんなのかはわからない。
GUIのODBCデータソースで追加すると、これが裏で作ってくれるっぽいが
ODBCCONF.exeでは作ってくれず、エラーとなる。らしい。
"C:\Program Files\IBM\SQLLIB\BIN\db2cmd.exe" /c /w db2 catalog tcpip node FOO remote 192.168.1.1 server 10000 "C:\Program Files\IBM\SQLLIB\BIN\db2cmd.exe" /c /w db2 catalog db FOO at node FOO odbcconf /A {CONFIGSYSDSN "IBM DB2 ODBC DRIVER - DB2COPY1" "DSN=FOO|DATABASE=FOO|SYSTEM=192.168.1.1:10000|UID=db2admin|PWD=password"}
で追加できる。知らんだけで最後はODBCCONFではなく、db2側のでDSNも追加できるのかもしれない…
さらに「 - DB2COPY1」が何なのかさっぱりわからん。「IBM DB2 ODBC DRIVER」もあるんだけども。
というか、こういう要望無いんだろうか?探してもAIに聞いてもなかなかヒットせず
リファレンス見ながらだましだましやってやっとたどり着いた。
odbcconf /A {CONFIGSYSDSN "IBM DB2 ODBC DRIVER - DB2COPY1" "DSN=FOO|DATABASE=FOO|SYSTEM=192.168.1.1:10000|UID=db2admin|PWD=password"}
だと「ドライバーの ConfigDSN、ConfigDriver、または ConfigTranslator が失敗しました」とあてにならないエラーが出てしまう。
iAccessは
odbcconf /A {CONFIGSYSDSN "iSeries Access ODBC Driver" "DSN=BARLIB|DRIVER=IBM i Access ODBC Driver|SYSTEM=192.168.1.1|DefaultLibraries=BARLIB|CMT=3|SORTTYPE=2|LANGUAGEID=JPN"}
なんかちがうんかなぁ。。。
仮想システムを構築するにあたり、CIFS しか使えない NAS をバックアップ用に選定してきた SI 屋さんが居たので、CIFS と iSCSI のどちらが早いのか、試してみました。
テストに使う NAS は QNAP の Turbo NAS TS110
http://www.tekwind.co.jp/products/entry_6719.php
です。もう6年以上愛用して、カビが生えてもおかしく無い程に古いし, Marvell 800Mhz という低スペックな Qnap NASです。 100Mbps 時代のモノです。
昨年、HDDがお亡くなりになったので、3Tb の HDD に交換しました。ファームウェアはこんなに古い機械でも、QNAP シリーズの最新バージョンが利用できます。
iSCSI は、今あまり見なくなりましたが SCSI ケーブル規格や、SASケーブル接続のハードディスクを、一般的なIPネットワークで規格で仮想化したものです。
マウントするホストシステム側は iSCSI initiator, ディスクストレージの機能を提供する側を iSCSI Target と呼びます。
ホストから「マウントするしない」はイニシエータ側のソフトウェア的な操作で行います。これは便利な機能で、ディスクの故障などで、一時的に物理的に取り外さなければいけない場合でも、ホストからの操作だけで実際のケーブル結線の脱着を行う必要がないので、今時での SAS の外付けディスクドライブの様に、ホストもシャットダウンして電源を切り、結線を外して修理、交換する、という必要がないので、ディスクデバイスの修理をホストの電源を止めないで実施できると言う、実に便利な事ができます。
という事で、仮想環境では実に使いやすいストレージデバイスなのです。
マウントするホスト側から見ると単純に SCSI/SAS のハードディスクに過ぎません。iSCSI のストレージをマウントしてからは、通常の増設ディスクの様にフォーマットして、ホスト側で使う一般的な XFS, ext4, NTFS などのフォーマットでフォーマットする必要があります。
Linux の iSCSI ターゲット側からは、内部にターゲットとして使う「巨大なファイル」が、どん! とあるだけです。この巨大ファイルを、イニシエータ側に仮想ディスクイメージとして提供しています。当然シンプルな仮想イメージなので、ファイルそのものをバックアップコピーすれば、ストレージのイメージそのもののバックアップができます。
※ qnap NAS の場合、iSCSI イメージは、 /share/HDx_DATA/.@iscsi.img の下にドンと作られるようです。
[Solved]How to mount iSCSI file?
https://forum.qnap.com/viewtopic.php?f=180&t=25322
[/share/HDA_DATA/.@iscsi.img] # pwd
[/share/HDA_DATA/.@iscsi.img] #
[/share/HDA_DATA/.@iscsi.img] # ls -l
-rw------- 1 admin administ 6442450944 Nov 12 2017 iSCSI-2015ace1-5a078d66.000
-rw------- 1 admin administ 1073741824 Jun 24 09:52 iSCSI-lun4-5d0de534.000
-rw------- 1 admin administ 107374182400 Nov 4 2015 iSCSI-nss01-56399e1a.000
-rw------- 1 admin administ 5368709120 Nov 11 2017 iSCSI-nss2015-5a06cf6d.000
-rw------- 1 admin administ 21474836480 Jun 22 17:11 iSCSI-test-56b3ce90.000
-rw------- 1 admin administ 5368709120 Jun 22 17:11 iSCSI-test-56b3ce90.001
[/share/HDA_DATA/.@iscsi.img] #
※ とても重要
CIFS/NFS のファイル共有NAS と違い、iSCSI でマウントして一つのターゲットを制御できるのは、一つのホスト、一つのイニシエータだけです。複数のホストからイニシエータでマウントする(できちゃいます)と、ファイルの排他制御は行われないので、ファイルシステム自体の不整合が起こります。
つまりファイル共有という目的には向いていない、という事です。あくまでも iSCSI ターゲットはネットワーク上の仮想ディスクです。
もっとも、一つのホストからマウントしてファイルを保存して、いったんオフラインにして、ターゲットを別なホストからマウントする、という事はできます。また、ターゲットは一つの iSCSI デバイスで複数作れるので、1台の iSCSI 装置に複数のターゲットを実装して、複数のホストから別々のターゲットイメージをマウントする事は問題ありません。
極端な話、ホストのハイパーバイザーは USB メモリやSANブートさせて、後はマウントした iSCSI の仮想イメージ上で、仮想マシンを動かす、HDDレスなハイパーバイザー運用もできます。
物理的な転送速度は、ネットワークの速度とディスクデバイスの性能に依存します。当然 10Gb base のネットワークカード、HUB、高規格なケーブルを使えば、論理的な性能は 10Gbps です。大抵は NAS の性能がそこまで出ないのですけどね。ヨドバシカメラあたりで売っている 4,000 円程度の 1G HUB でも、そこそこの性能が出てしまいます。
距離は、IPがつながればどこでもなので、ホストコンピュータとメインのストレージを自社のサーバールームに置き、イニシエータを動かし、バックアップ用の iSCSI ターゲットをデータセンターに置く、なんてこともできます。
【送料無料】QNAP TS-431P2(ホワイト) NAS 4ベイモデル クアッドコア CPU / LAN 2ポート搭載 (TS431P2)
価格:56,145円
感想(0件)
iSCSI の耳慣れない言葉に LUN (論理ユニット番号 : Logical Unit Number)というのがあります。
昔の SCSI は、 SCSI バスアダプタに7番のIDを振り、残りの 0 ~ 6 のディスクや CD, Tape などに ID を振り分ける物理的な3ビットのディップスイッチやジャンパ端子が付いていました。これが SCSI アドレスです。
これが実に難物でした。特に、複数の SCSI バスアダプタカードをデュプレクス設定する場合、割り込み番号も別々にするので、手が滑ってジャンパピンを飛ばして床を這いまわって探したり、難解なディップスイッチを前に数日悩んだものです。
つまり一つのSCSIバスには 0~7の合計8台(うち大抵7番はSCSI バスカード)の物理ユニットデバイスがつながって別々に見えたという仕組みだったわけです。
ところが SCSI バスを使った Raid コントローラが出てくると、ディスクの鈴なりが、一つの物理デバイスに見えてしまうわけです。これを「論理的な仮想番号」に分割して、システムからは、単一の鈴なり Raid ディスクを複数の論理番号に分割したわけですね。
これが LUN というヤツです。
iSCSI 機器のターゲットも、内部のソフトウェア的に複数の論理デバイスに分割して、複数のホストコンピュータから複数の物理デバイスのように見せかけるわけです。
別々な LUN は一つ、あるいは複数の iSCSI 機器によって、複数のホストに別々のディスクデバイスとして見せかけるンです。
https://en.wikipedia.org/wiki/Logical_unit_number
Qnap NAS の場合、iSCSI ターゲットはウィザード形式で簡単に作成できます。EXT4 ファイルシステム上で、オンラインでも簡単にサイズの拡大ができるので、 Windows の Storage Server のように NTFS の VHD 形式ではないので、そこそこ性能が出ますが、いかんせん古さと遅さは否めません。
Qnap NAS の iSCSI ターゲットの設定は、偉そうな Linux 系サイトに書いてある程、面倒なことはありません。ストレージマネージャから iSCSI タブにあるウィザードに従って iSCSI ターゲット名に任意の名前を付けると IQN にその文字列が追加されるだけです。わざわざ vi エディタに「正確に」綴りを間違えずに設定する必要もありません。ここでは Chap 認証は付けませんでした。
仮想化時代の NAS 選び - やっぱり iSCSI は早い。_a0056607_16405779.jpg
機械は古いのですが、逆に言うと、「古くて遅い」ため、サーバーとNASとの接続プロトコルの性能差が、如実に現れる事になります。
QNAP TVS-951X 10GBASE-T/NBASE-Tポート内蔵
Windows10 の Microsoft 製 iSCSI イニシエータは「コントロールパネル」>「システムとセキュリティ」>「管理ツール」の中にあるので、ここで、設定済の iSCSI 「ターゲットを」 「検索」して選んで「接続」します。Chap 認証を付けておいた場合はターゲットで設定したパスワードが必要でしょう。
仮想化時代の NAS 選び - やっぱり iSCSI は早い。_a0056607_16412132.jpg
新規に作成して、接続した後は、フォーマットされていないため、ディスクマネージャからフォーマットして使います。ちなみに、フォーマットして利用した iSCSI ターゲットの仮想ディスクは、他のマシンでマウントすることもできます。つまりHDDを取り外して、他のPCに繋げる事と同じことですね。
PR
ちなみに opeSUSE で使うにはこんな感じになりました。
open SUSE Leap 15.1 で iSCSI NASを使ってハマった
https://islandcnt.exblog.jp/239328437/
一番イラつくのは、巨大なファイルの転送でしょう。という事で 3G 程ある SUSE Linux のインストール用DVDの ISO ファイルを CIFS でコピーしてみます。
仮想化時代の NAS 選び - やっぱり iSCSI は早い。_a0056607_16414334.jpg
3分11秒かかりました。1Gビットネットワークで 12~3% 程度の帯域を使って通信しています。明らかに古いNAS の性能が足を引っ張っているようです。
スループットは 150Mbps 程度で全体の最大15%程度でしょうか。
仮想化時代の NAS 選び - やっぱり iSCSI は早い。_a0056607_16415832.jpg
仮想化時代の NAS 選び - やっぱり iSCSI は早い。_a0056607_16422170.jpg
初速は出るのですが、その後は、ボロイ TS-110 の性能がモロに出ます。それでも 20 MB/s から 25 MB/s 程度は出ています。
仮想化時代の NAS 選び - やっぱり iSCSI は早い。_a0056607_16423835.jpg
2分25秒でした。 大体20%程度のスループットです。
--
数字に弱い私の脳みそですが、 iSCSI は CIFS より 1.5倍くらい早い、という事が言えます。
Zabbix で QNAP TS-110 の I/O を見てみると、前半の CIFS アクセスより後半の iSCSI アクセスの山が高い事がよくわかります。
仮想化時代の NAS 選び - やっぱり iSCSI は早い。_a0056607_16425860.jpg
CIFS を使ったリモートディスクのマウントは、他のPCからもアクセスができる、というメリットがありますが、iSCSI は単一のホストからのアクセスしかできません。<--- これ重要.... -- もっとも、ターゲットストレージを複数作って複数のサーバーから異なるデータ領域にアクセスはできますが -- バックアップ用途や、サーバーの増設ストレージとして考えれば、良い選択であると言えます。
もっとも、iSCSI デバイスそのものは、ターゲット単位で別々なホストから接続できます。しかし同じターゲットで別々のホストからイニシエータから繋ぐと、とても笑いごとにならない事態になるので、普通やりません。
ハイパーバイザー同士で一つのターゲットを共有してライブマイグレーションはしたことはあります。
こうした性能のわずかな違いが、仮想化システムのハイエンドな領域で違いとなって出てきます。なお Qnap でも openiSCSI でも Windows Storage Server でも取った領域そのままのサイズのでかいファイルが作成されるようです。
国産 NAS の「ハイエンド」と称する「LANxxxx」などのモデルでは Windows Storage Server を使って NTFS フォーマットしています。Windows Storage Server は見た目 Windows サーバーそのものなのですが、ところどころちゃんとデチューンされているようで、SOHO向けが限度です。
こういった国産 NAS メーカーの製品カタログでは、「ハイエンド」は Windows Storage Server を搭載して、低価格のNASは Unix 系のシステムで「低価格」を謳っていますが、そもそも、上位モデルは、CPUやメモリの性能が高いものが使われています。性能が違うのは当たり前なのですが、あまり性能が出ないだろうと思います。
Windows Storage Server じゃなくて、ちゃんとした Windows Server と CAL 買えよな、という事なのですね。
このあたりは独自OSを NAS としてチューニングした Qnap や Synology, asuster などの iSCSI 機能付きの NAS を中規模ネットワークのミドルレンジの NAS として利用したほうが良いと思います。
仮想環境でのネットワークアタッチストレージ(NAS)は、本回線(構内LAN)とは切り離し、ストレージ専用のネットワークとして独立して運用させるのが基本です。サーバーとNAS間で凄まじい通信が発生します。サーバーNICが2ポート以上のものが推奨されます。
iSCSI はあくまでもネットワーク上のストレージのみの機能を提供するものであり、ファイル共有の手段ではない、という事です。
NAS をCIFSで使うと NAS が持つ独自のアクセス権限を設定しなければなりません。セキュリティも当然 NAS 独自の機能で設定します。
iSCSI はあくまでも「外付け SCSI デバイス」のネットワーク版なので、マウントする側のOSそのもののファイルシステム、セキュリティ機能、アクセス制限がホスト側の機能をそのまま利用できます。セキュリティ的には、マウントする際のパスワード制限しかないので、独自のストレージネットワーク内に配置すべきで、ユーザが使う構内ネットワークに配置すべきではありません。
今日、牛丼を食べながらふと気がついたのですが、もしかして我々の業界は異常なのではないでしょうか?
サービス名、技術名はスキあらば3文字って感じだし (AWS, EC2, EKS, GCP, GAE, GKE k8s, C2C, CPU, GPU, SPU...)
会社名もソフトウェア名も連想できるってものじゃないし (PostgreSQL, MySQL, Redis, etcd, Consul, HashiCorp, Vagrant, GitHub, CircleCI, FreeBSD, CentOS, Ubuntu, Linux, Couchbase, Hive, Hadoop, Vagrant...)
みんな普通にPOSIX互換なコマンドをペシペシしているし (cd, cp, mv, pwd, mkdir, ls, vi を更に謎の数文字のオプションも含めて覚えているわけで)
それも特に覚えようとして覚えてきたわけでもないじゃないですか。
気がついたら覚えているわけで、手に身についているわけで。まるでポケモン151匹を勝手に覚えてしまったあの頃と同じようなノリで謎の英単語や謎の羅列を身に着けてしまっている訳ですよ。
何ら疑問に感じてなかったんだけど、普通に好きじゃないとできないよね。
で、思ったんだけど、インターネット小話で聞く「全然興味はないけどSEになっちゃいました」みたいな人ってガチで苦痛なんじゃないだろうか…
(未だにそんな人を見たことが無いから都市伝説だと信じてるけど)
別に周りにそんな人が居るわけじゃないけど、新卒が入社してくる季節ってことでふと気になりました。
おしまい。
俺、Macbook使ってるんすよ(タッチバー付13インチPro
俺、プログラミングスクールでプログラミング教えるアルバイトしてるんすよ(そいつはそのスクールの卒業生
懇親会で「皆さん嫌いな言語とかフレームワークはありますか?」と話題になると私は即座にRailsと言う。
「あのコマンドを打つと中で何が起きてるか知ってますか?」(知らない
「ActiveRecord?生でクエリ書いたことある?インデックスの意味くらい知ってるよね?」(書いたことない、適当なこと言う
3分後
「alert('XSS')」
百歩譲って学生エンジニアならまあセキュリティに無知なのは分かる。
しかしだな、文系エンジニアは「俺もハッキングしたい(笑)」な勢いで詳しく解説することを要求してくる。非常にウザい。
"
"
しょうがないので優しく解説すると「君ってハッキングとかしてそう(笑)」「君将来ハッカーになりそうだわ(笑)(クラッキング的な意味で)」
死ねよ。
俺、Git使って開発したんすよ(GUIのSourcetree
え?バグ?ちゃんとテストしたんだけどなぁ(完全手動テスト()笑
AWSとGCPは登録はしたものの使い方が分からなくて結局放置
pwdとcdしか知らない(Makefileを作ったことないからいつもネットのコピペコマンド
はい、ゴールデンタイムに鯖落ち。復旧した時にはゴールデンタイム終了のお知らせ。
理由、CDNを刺してない、貧弱なプランの鯖(勿論ロードバランサなんか使ってない)
でも彼らは一応優秀な文系エンジニア。高学歴、サービスも作ったこともある、それなりの実績も持っている。しかし文系だ。
こういう奴らがいるからちゃんとしたエンジニアを軽視される。黙って営業職に転職してこい。
まあでも大学じゃ作者の気持ちしか考えてないのだから当然のなのかもな(笑)
追記
残念な理系名前を書くだけ一発採用派遣SIerは対象としてない。論外だ。
給料が安い?
そんなことは無い。400万以上貰える会社に内定もらっているから嫉妬も不満も特に無い。
だがしかし、ムカつく。
そんな奴が同期にいたら蹴り飛ばしてやりたくなる。
だが見てみろ、あいつらのアプリバックエンドが無いんだぞ?意欲は認める。だがそれで胸を張ってiOSエンジニアなんて無理があるだろ?