Storage Foundation Cluster File System High Availability 7.4 管理者ガイド - Linux
- 第 I 部 Storage Foundation Cluster File System High Availability の概要
- Storage Foundation Cluster File System High Availability の概要
- Veritas File System について
- Storage Foundation Cluster File System(SFCFS)について
- Veritas Replicator について
- Dynamic Multi-Pathing の動作
- Veritas Volume Manager の動作
- Veritas File System の動作
- Storage Foundation Cluster File System High Availability の動作方法
- Storage Foundation Cluster File System High Availability アーキテクチャについて
- クラスタファイルシステムでサポートされている Veritas File System 機能について
- 単一ネットワークリンクと信頼性について
- I/O フェンシングについて
- Cluster Volume Manager の動作
- Storage Foundation Cluster File System High Availability の概要
- 第 II 部 ストレージのプロビジョニング
- 新しいストレージのプロビジョニング
- ストレージを設定するための高度な割り当て方法
- 割り当て動作のカスタマイズ
- 特定のレイアウトのボリュームの作成
- VxFS ファイルシステムの作成とマウント
- VxFS ファイルシステムの作成
- VxFS ファイルシステムのマウント
- ファイルシステムサイズの変更
- 空き領域の監視
- エクステント属性
- 第 III 部 DMP を使ったマルチパスの管理
- Dynamic Multi-Pathing の管理
- 新しく追加されたディスクデバイスの検出と設定
- ディスクの検出とディスクアレイの動的な追加について
- デバイス検出層の管理方法
- vxdmpadm ユーティリティを使った DMP の管理
- I/O 統計情報の収集と表示
- I/O ポリシーの指定
- 新しく追加されたディスクデバイスの検出と設定
- デバイスの動的再構成
- デバイスの管理
- イベント監視
- Dynamic Multi-Pathing の管理
- 第 IV 部 Storage Foundation Cluster File System High Availability の管理
- Storage Foundation Cluster File System High Availability とそのコンポーネントの管理
- CFS の管理
- mount、fsclustadm、fsadm コマンドについて
- CFS プライマリノードで障害が発生した場合
- SFCFSHA のスナップショットについて
- VCS の管理
- CVM の管理
- マスターフェールオーバーへのクラスタノードの優先設定の設定について
- CVM マスターの手動での変更について
- 共有ディスクグループのインポート
- Flexible Storage Sharing の管理
- ODM の管理
- I/O フェンシングの管理について
- vxfentsthdw ユーティリティについて
- vxfenadm ユーティリティについて
- vxfenclearpre ユーティリティについて
- vxfenswap ユーティリティについて
- コーディネーションポイントサーバーの管理について
- ディスクベースとサーバーベースのフェンシング設定間の移行について
- SFCFSHA のグローバルクラスタの管理
- クラスタ化された NFS の使用
- クラスタ化された NFS のしくみ
- クラスタ化された NFS の設定および設定解除
- クラスタ化された NFS の管理
- クラスタ化された NFS の設定例
- Common Internet File System の使用
- クラスタ化された NFS を使用した Oracle の展開
- Oracle データベースへの SFCFSHA ユーティリティの使用
- サイトとリモートミラーの管理
- SFCFSHA を使った iSCSI の管理
- SFCFSHA を使ったデータストアの管理
- Storage Foundation Cluster File System High Availability とそのコンポーネントの管理
- 第 V 部 I/O パフォーマンスの最適化
- 第 VI 部 Veritas Extension for Oracle Disk Manager
- Veritas Extension for Oracle Disk Manager の使用
- Oracle Disk Manager について
- Oracle Disk Manager と Oracle Managed Files について
- Cached ODM の使用
- Veritas Extension for Oracle Disk Manager の使用
- 第 VII 部 PITC の使用
- PITC 方法の理解
- ボリュームスナップショットの管理
- 従来のサードミラーブレークオフスナップショット
- フルサイズインスタントスナップショット
- インスタントスナップショットの作成
- インスタントスナップの DCO と DCO ボリュームの追加
- インスタントスナップショットの同期の制御
- インスタントスナップショットの作成
- カスケードスナップショット
- バージョン 0 の DCO および DCO ボリュームの追加
- Storage Checkpoint の管理
- FileSnaps の管理
- スナップショットファイルシステムの管理
- 第 VIII 部 Storage Foundation Cluster File System High Availability を使用したストレージの最適化
- 第 IX 部 ストレージ利用率の最大化
- SmartTier によるストレージの階層化
- ボリュームセットの作成と管理
- MVS ファイルシステム
- SmartTier の管理
- ホットリロケーションの管理
- データの重複排除
- ファイルの圧縮
- Cloud Connector を使用したクラウドへのファイルの移行
- 第 X 部 ストレージの管理
- ボリュームとディスクグループの管理
- デフォルトのディスクグループの名前の付け方
- ボリュームまたはディスクの移動
- タスクの監視と制御
- オンライン再レイアウトの実行
- ボリュームへのミラーの追加
- ディスクグループの管理
- プレックスとサブディスクの管理
- Veritas InfoScale Storage 環境の Erasure coding
- ストレージの破棄
- ルータビリティ
- クォータ
- FCL(File Change Log)
- ボリュームとディスクグループの管理
- 第 XI 部 参照
- 付録 A. パス名の逆引きルックアップ
- 付録 B. チューニングパラメータ
- 付録 C. コマンドリファレンス
- 付録 D. スタータデータベースの作成
Veritas File System ファイルの変更ログのプログラミングインターフェース
VxFS には、次の 2 つの方法で FCL ファイルの読み取りと解析を単純化するための拡張 API が用意されています。
読み取りの単純化 |
PI により FCL エントリ解析に必要な追加のコードが削減され、ユーザータスクが単純化されます。4.1 では、削除やリンクなどのイベント情報を取得するために、ユーザーは削除やリンクされたファイル名を取得するための追加のコードを書く必要がありました。このリリースでは、ユーザーは API を使ってアセンブルされたレコードを直接読み取ることができます。また、API を使って、目的のイベントレコードのサブセットを示すためのフィルタを指定できます。 |
後方互換 |
FCL への API アクセス機能により、アプリケーションの後方互換に対応します。API を使うことで、アプリケーションは FCL のレイアウト変更に関係なく FCL ファイルを解析できます。FCL の隠されたレコードレイアウトが変更されても、API は戻りデータを自動的に変換して求められる出力レコードに一致させます。その結果、ユーザーは、オンディスクの FCL レイアウトの変更により、アプリケーションを修正または再コンパイルする必要はありません。 |
次のサンプルコードは、FCL スーパーブロックを読み取り、FCL の状態が VX_FCLS_ON であることを確認します。次に、vxfs_fcl_sync への呼び出しを発行して、読み取り先の最後のオフセットを取得し、FCL ファイル内の最初の有効なオフセットを特定します。最後に、このオフセットから 8 K のチャンクでエントリを読み取ります。FCL エントリ処理(process fcl entries)とコメントされた行付近に、FCL 内のエントリに対する処理レコードをアプリケーション開発者が提供する必要があります。
#include <stdint.h> #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <sys/fcntl.h> #include <errno.h> #include <fcl.h> #include <vxfsutil.h> #define FCL_READSZ 8192 char* fclname = "/mnt/lost+found/changelog"; int read_fcl(fclname) char* fclname; { struct fcl_sb fclsb; uint64_t off, lastoff; size_t size; char buf[FCL_READSZ], *bufp = buf; int fd; int err = 0; if ((fd = open(fclname, O_RDONLY)) < 0) { return ENOENT; } if ((off = lseek(fd, 0, SEEK_SET)) != 0) { close(fd); return EIO; } size = read(fd, &fclsb, sizeof (struct fcl_sb)); if (size < 0) { close(fd); return EIO; } if (fclsb.fc_state == VX_FCLS_OFF) { close(fd); return 0; } if (err = vxfs_fcl_sync(fclname, &lastoff)) { close(fd); return err; } if ((off = lseek(fd, off_t, uint64_t)) != uint64_t) { close(fd); return EIO; } while (off < lastoff) { if ((size = read(fd, bufp, FCL_READSZ)) <= 0) { close(fd); return errno; } /* process fcl entries */ off += size; } close(fd); return 0; }