Helion OpenStack 1.1.1 Cephのインストールと 設定

2015-10-03

Helion OpenStack 1.1.1 Cephのインストールと 設定

Machine-translated — the English original is authoritative.

ますます多くの顧客が、OpenStackベースのIaaSプラットフォーム向けに、オープンで統一されたストレージソリューションとしてCephを選択しています。Cephが提供する主な利点の一つは、単一のインターフェースからオブジェクトストレージ(例:Dropbox、Google Drive)とブロックストレージ(例:LUN、ドライブ)の両方を利用できることです。理論的には、これにより顧客が管理し、スタッフに研修を行う必要がある製品の数を削減できます。

注意すべき制限として、Cephを大規模な距離にわたって拡張しようとする場合、本番環境レベルの非同期レプリケーションが現在存在しない点が挙げられます。また、オブジェクトストレージにはSwiftなどの専用製品で現在利用可能な多くの機能が欠けているため、ビジネス要件が明確に特定されていることを確認してください。

それらを踏まえた上で、マルチリージョンが必要なく、セキュリティが主要な懸念事項ではない場合、Cephは非常にパフォーマンスの高いストレージソリューションです。

ceph
図1: HOS Ceph通信

Cephのインストール

HOSでCephインストールを完了するために使用される手順は、こちらで確認できます: http://docs.hpcloud.com/#commercial/GA1/ceph/1.1commercial.ceph-automated-install.html

以下の設定ファイルは、上記の手順と併用して、正常なインストールを完了するために使用されました。

Server.jsonファイル

Undercloud(stackrc)からのOpenStack認証情報、ネットワーク、およびHelion OpenStackからのキーペアを含めるために、/server/server.json を修正します。


{
"authentication": {
   "HOST": "172.16.0.131",
   "PORT": "8085",
   "OS_VERSION": "2",
   "OS_USER": "admin",
   "OS_PASSWORD": "password",
   "OS_TENANT_NAME": "admin",
   "OS_AUTH_URL": "http://172.16.0.135:5000/v2.0",
   "keypair": "cephadmin",
   "netid": "2ff3d218-86a9-4875-9d38-5f7860c581b1"
    }
}

Orchestration.jsonファイル
このファイルは、物理的なCephノード用のUndercloudフレーバーを設定します。


{
    "authentication": {
        "ws_url": "http://172.16.0.131:8085/"
    },
 
    "api": {
        "imagepath": "/helion-ceph/images/",
        "deploy-image-prefix": "bm-deploy"
    },
 
    "orchestration": {
        "hypervisorsleepduration": "300",
        "hypervisorsmoniteringfrequency": "10",
        "bootsleepduration": "1200",
        "bootinitialwaitduration": "30",
        "hypervisortype": "baremetal",
        "hypervisordriver": "ironic",
        "bootmoniteringfrequency": "5",
        "destinationpath": "/helion-ceph/"
    },
 
 
    "flavor": {
            "001": {
                "ram": "163840",
                "vcpus": "2",
                "disk": "275",
                "architecture": "x86_64",
                "version" : "001"
            },
    "002": {
                "ram": "65536",
                "vcpus": "12",
                "disk": "900",
                "architecture": "x86_64",
                "version" : "001"
            }
    },
 
 
    "ironic": {
        "batchsize": "1",
        "driver": "pxe_ipmitool",
        "cpu_arch": "x86_64",
        "pxe_root_gb": "4"
    },
 
    "logger": {
        "filename": "orchestration.log",
        "filemode": "w",
        "level": 20,
        "format": "%(levelname)s:%(asctime)s:%(message)s"
    }
}

Baremetal.csvファイル

前のHOSセクションのベアメタルファイルと同様に、このファイルはインストーラーを使用して統合される物理ノードの特性を定義するために使用されます。


root@hLinux:/helion-ceph/node-provisioner/client# cat baremetal.csv
55:b9:22:92:c0:23,Administrator,password,10.99.10.12,12,65536,1637
55:b9:22:92:c2:cc,Administrator,password,10.99.10.13,12,65536,1637

Cephの設定

HOSでCeph設定を完了するために使用される手順は、こちらで確認できます:
http://docs.hpcloud.com/#commercial/GA1/ceph/1.1commercial.ceph-cluster-client-node-configuration-ansible.html

以下の設定ファイルは、上記の手順と併用して、正常な設定を完了するために使用されました。

cluster.csvファイル
これはロールとディスクのクラスター定義ファイルです。


hlinux@c1admin-overcloud-ceph-admin:/helion-ceph/cephconfiguration/ansible-playbooks$ cat cephcluster.csv
172.16.0.165,mon-master-1,mon-master,hlinux
172.16.0.165,admin-1,admin,hlinux
172.16.0.165,ceph-osd-1,osd,hlinux,xfs,/dev/sdb,xfs,/dev/sde5
172.16.0.165,ceph-osd-2,osd,hlinux,xfs,/dev/sdc,xfs,/dev/sde6
172.16.0.165,ceph-osd-3,osd,hlinux,xfs,/dev/sdd,xfs,/dev/sde7
172.16.0.164,ceph-osd-4,osd,hlinux,xfs,/dev/sdb,xfs,/dev/sde5
172.16.0.164,ceph-osd-5,osd,hlinux,xfs,/dev/sdc,xfs,/dev/sde6
172.16.0.164,ceph-osd-6,osd,hlinux,xfs,/dev/sdd,xfs,/dev/sde7
172.16.0.149,compute0,computes
172.16.0.150,compute1,computes
172.16.0.151,compute2,computes
172.16.0.141,controller0,controllers
172.16.0.146,controller1,controllers
172.16.0.145,controller2,controllers
172.16.0.131,seed0,seed

【注: ジャーナルデバイスファイルの詳細には、インストールプロセスによってパーティション番号が追加されます。例えば、/dev/sdn はインストール後に /dev/sdnX になります】

Ansible – /group_vars/allファイル

インストール用の環境変数を定義します。


hlinux@c1admin-overcloud-ceph-admin:/helion-ceph/cephconfiguration/ansible-playbooks$ cat group_vars/all
---
# Variables here are available to all host groups
cephmon_user:   root                                           #Leave this value as is
cephmon_group:  root                                           #Leave this value as is
runrados:       0                                              # Set this to 0 if you do not have rados nodes, to 1 if you have the rados nodes
radosgwHA:      0                                              # Set this to true if you want to setup rados in HA mode where you need min two rados nodes
secretuuid:     123456789123456789123456789           # This the UUID that will be used to setup the helion nodes. Change this prio to running the ceph-client and ceph-admin roles, if you wish to newly generated UUID. The same UUID will work too.
clienttarname:  ceph_client_setup-0.80.7_h1.1.fix7_newdebs.tar # Set this to the tar ball name that is being used for helion client setup. Make sure the tarball has been copied under roles/ceph-client/files folder
passthrough_path: "/helion-ceph/cephconfiguration/ansible-playbooks/roles/helion-seed/files/hp_ceph_passthrough"

Ansible – /group_vars/ceph-cluster


hlinux@c1admin-overcloud-ceph-admin:/helion-ceph/cephconfiguration/ansible-playbooks$ cat group_vars/ceph-cluster
---
# Variables here are applicable to the ceph-cluster host group
osd_journal_size: 10000
mon_master: 172.16.0.165
fsid: 123456789123456789123456789
fssize: 2048
env: baremetal
journal: 1
dependencies:

Cephの統合

HOSでCeph統合を完了するために使用される手順は、こちらで確認できます:
http://docs.hpcloud.com/#commercial/GA1/ceph/1.1commercial.ceph-cluster-client-node-configuration-ansible.html

このプロセスはAnsibleスクリプトを通じて自動化されます。手動統合の手順もこちらで利用可能です: http://docs.hpcloud.com/#commercial/GA1/ceph/1.1commercial.ceph-manual-install.html

Originally published on allthingscloud.eu (2015-10-03).

← All posts