CitrixがWrikeを買収

Citrixがプロジェクト管理ツールのWrikeを19日に買収したそうです。(ZDNet Japanの記事より)

Citrixといえば XenServerとVirtualApps(旧:MetaFrame)ですが、今はVirtualApps や XenDesktop が好調みたいで、リモートワーク特需といったところでしょうか。

そこへ来て、リモートワークに強力な味方になるクラウドタイプのプロジェクト管理ツールというサブスクにも手を出してきました。

CitrixはXenServerなどの製品が他社にシェアを奪われても、ネットワーク機器の会社を買収してNetscalarを出したりするなど、昔から常に変化しながら成長しているイメージがあります。(私の勝手なイメージですが)

しかし、いままではOSやネットワーク、アプリケーションにおける基盤部分のエンタープライズ向け製品が主力だったので、純粋なクラウドアプリであるWrikeの買収は少し意外な感じです。

Wrikeは少し高価格帯の製品なので、企業イメージも損なわないという判断もあるかもしれません。

今後もCitrixはどう変化していくんでしょうか。

私も顧客のCirix Hypervisor (旧:XenServer) をHyper-Vに変更していただく予定があります。いろいろな理由がありますが、例えばバックアップツールなんかは VMWare と Hyper-V 以外はNutanixをサポートするぐらいで、Citrixは全く相手にされていないんですよ。XenServerとは10年以上もの長い付き合いでしたが、もう限界ですね。こちらも変わっていかなければ。

Citrix Hypervisor 8.2とWindow Server 2008R2について

昨年の夏にCitrix Hypervisorの最新版が8.1から8.2になりましたが、Windows7, Windows Server 2008R2がサポートから外れていることに気が付きました。

Windows7やWindows Server 2008R2をゲストVMとして、まだまだ現役で使っている企業は多いかと思いますが、うっかり8.2にバージョンアップすると起動しなくなる可能性があります。

要注意です。

Microsoftのサポートはとっくの昔に切れていますが、使っているソフトウェアの関係でWindows Server 2008R2をゲストVMとして使っている場合、代替え案を早めに検討しないと首が回らなくなる可能性があります。

例えば、ゲストOSを追加するために最新のHypervisorを導入する必要性が出たとしても、これらの古いゲストVMが足かせになるかもしれません。

古いシステムが社内で中核を担っていると身動きができなくなり、セキュリティの問題だけにとどまらず、業務そのものの継続に支障が出るかもしれません。そうなると、かなり大きな問題になってきます。

AzureやVMWareでは Windows Server 2008R2 はまだ動作対象OSから外れる様子はないので、Citrixはちょっとタイミングが早い気がします。どういう戦略なんでしょうか。

vApp自動起動

Citrix HypervisorでvAppを使うとVM(仮想マシン)をグループ化し、複数のVMを指定した順番で起動したりシャットダウンしたりできるようになりますが、vAppには自動起動が備わっていません。

vAppの作成そのものはXenCenterを使って上図の画面で簡単に設定できます。しかし、vAppの自動起動の設定項目がXenCenterに見当たりません。

vAppを手動で起動する場合、以下のようにXenCenterで別のマシンからHypervisorに接続してから「Start vApp」をクリックする必要があり、少々面倒です。

そこで、vAppを自動起動するためにスクリプトの力を借ります。

HypervisorにTeraTermを使ってSSH接続し、以下の内容でスクリプトを作成します。

#AutoStart XenServer vApps with the tag autostart in their description
# Script originally created by Raido Consultants - http://www.raido.be
# Script updated and shared by E.Y. Barthel - https://www.virtues.it
TAG="autostart"

# helper function
function xe_param()
{
    PARAM=$1
    while read DATA; do
        LINE=$(echo $DATA | egrep "$PARAM")
        if [ $? -eq 0 ]; then
            echo "$LINE" | awk 'BEGIN{FS=": "}{print $2}'
        fi
    done
} # Get all Applicances
sleep 20
VAPPS=$(xe appliance-list | xe_param uuid)
for VAPP in $VAPPS
do
    # debug info
    # echo "Esther's AutoStart : Checking vApp $VAPP"
    VAPP_TAGS="$(xe appliance-param-get uuid=$VAPP param-name=name-description)"
    if [[ $VAPP_TAGS == *$TAG* ]]; then
        # action info:
        echo "starting vApp $VAPP";
        xe appliance-start uuid=$VAPP;
        sleep 20
    fi
done

(引用元:https://www.virtues.it/2014/12/step-by-step-guide-automatically-start-a-vapp-on-xenserver/

このスクリプトを以下のパス、ファイル名で保存します。

/opt/autostartvapps.sh

次にviエディタでrc.localを編集し、先ほどのスクリプトが電源投入時に自動実行されるようにします。

vi /etc/rc.d/rc.local

以下の内容を追記して保存します。余裕を見て、40秒待機してからスクリプトを実行するようにしています。

sleep 40

sh /opt/autostartvapps.sh

最後にパーミッションを調整して終了です。

chmod u+x /etc/rc.d/rc.local

これで、次回からvAppが自動起動されるようになりました。

Citrix Hypervisor にSRを追加

先日購入したマザーボードASUS H310M-A R2.0 のマシンにCitrix Hypervisor Express Edition (無償版)をインストールして、LinuxやWindowsのVM (virtual machine)を構築しました。

あとはバックアップの方法ですが、メールや文書ファイル、資料などはOffice 365 (Microsoft 365)でクラウド保管なので、何らかのシステム変更があったときだけディスクイメージを取るというやり方です。

ディスクイメージはバックアップソフトでも取れますが、Hypervisorにストレージを追加してVM Copyを実行するのがお金もかからず手っ取り早いです。

いざというときはコピーしておいたVMをそのまま起動しちゃえば復活です!

この方法なら、リカバリ時間はほぼゼロ。とっても楽です。

大規模になれば「どこに冗長化を置くのか」「復元ポリシーをどう定義するのか」などを入念に検討する必要がありますが、小規模な開発環境のバックアップならとりあえずSRを増やして、SRをとっかえひっかえして小回りよく動くことが得策かと思います。

今回は手元に古いHitachiの1TBのSATAのHDDがあったので、これをHypervisorのSR(Storage Repository)に追加します。

XenCenterでコンソールを開き、fdiskコマンドで追加したハードディスクを初期化して単一パーティションを作成した後、「ll /dev/disk/by-id」でHitachiのディスクがsdb1として認識されていることが確認できました。

後はコンソールにて以下の手順でHDDをSRに登録します。

(1) host uuid を調べる

# xe host-list

(2) SR作成します。「Local Hitachi_HDE721010SLA330」という名前で作成しました。 ここでSRのuuidが生成されますのでメモしておきます。

# xe sr-create type=lvm content-type=user host-uuid=<host uuid> device-config:device=/dev/sdb1 name-label=”Local Hitachi_HDE721010SLA330″

(3) SRをスキャンしてエラーが出ないことを確認します。 尚、ローカルハードディスクを使う場合は typeパラメータを「lvmohba」にします。iSCSIなら「lvmoiscsi」、 NFSなら「nfs」を指定します。

# xe sr-probe type=lvmohba device-config:device=/dev/sdb1

(4) SRのuuidをイントロデュースします

# xe sr-introduce uuid=<sr uuid> shared=false type=lvmohba name-label=”Local Hitachi_HDE721010SLA330″

(4) SRに添付するPBDを作成します。これにより、新規PBDのUUIDが返されます。

# xe pbd-create sr-uuid=<sr uuid> device-config:device=/dev/sdb1 host-uuid=<host uuid>

(5) 作成したpbdをプラグします。

# xe pbd-plug uuid=<pbd uuid>

以上をもってXenCenterにてSRが追加されたことが確認できました。めでたし。

尚、SRを他のHypervisorで使いたくなったら、「xe pbd-list」でpbd uuidを確認してからアンプラグしてHypervisorから離脱させ、移動先のHypervisorでさきほどの手順を実行してプラグしてやれば、SR内のデータを壊さずに復元できます。

# xe pbd-list

# xe pbd-unplug uuid=<pbd uuid>

# xe sr-forget uuid=<sr uuid>

参考URL: https://support.citrix.com/article/CTX220536

しかし、あれですね、Citrix XenServerから製品名を変えたCitrix Hypervisorの行く末はどうなるのでしょう? 

管理ツールはなぜか「XenCenter」から名称が変更されておらず、Xenの名が残っていますが・・・。

無償版のハイパーバイザはKVMが人気のようで、自分は10年以上もXenServerを触っているので慣れているというだけで使っています。今後、KVMの勢力がどれぐらい大きくなるのかが気になります。

ASUS H310M-A R2.0 購入

開発作業用PCのマザーボード ASUS P5B-Vに載せているメモリが破損。

もう、12年も使ったので仕方ないです。CPUもCore2Duo E6300 なので時代遅れも甚だしい。

なぜかストレージだけは交換していて、Samsungの860 EVO 1TB と高スペック。860 EVOの性能を引き出すためにもマザーボードごとの交換を決意しました。

仕事にならないので早速、近所のアプライドへいそいそと。

これを機会に仮想サーバー (Citrix Hypervisor 8.1)をお安く導入しようと思いました。CentOS6 (テスト用)、CentOS7 (Samba用)、Windows10(開発用)の最低3つのOSは稼働させたいのです。

電源と1TBのSSDと筐体はそのまま流用するとして、購入するのは、

・マザーボード

・CPU

・メモリ

です。マザーボードを買いに来るのも数年ぶり。

CPUは Core i3 9100が12,900円でお安いので即決。

Core i5にすると物理6コアまで増えますが値段が2倍だったのでケチっておきました。 これでCitrix Hypervisor上で仮想マシンを最低3台ぐらいは動かすつもりです。

DDR4メモリは16GBで約1万円なり。GUIなしのCentOS 2台とWindows 10を1台ならこれで十分です。

あとはマザーボードですが、税込み7,800円でASUS H310M-A R2.0を購入。

ASUS H310M-A R2.0

microATXなので拡張性は少ないですが、ゲームをするわけではないのでこれで十分でしょう。

左下の黄色い線はLEDになっていて、通電状態を確認できるようです。電源OFFにした後、コンデンサーの電気が放電して空になるまではLEDが光るしくみのようです。通電状態で下手に触ってマザーボードを壊してしまわないように、目で確認できるしくみですね。

フロッピードライブやIDE、IEEE1394のコネクタはなくなっています。 マザーボード右下のPower LEDも3ピン端子から2ピン端子になっているし、 M.2とかいうインターフェイスも搭載されていて浦島太郎のような気分です。

でも、CPUの Core i3-9100 は Core2Duo E6300 と比べて5倍ぐらいのスペックがあるみたいです。3万円でパソコンの能力が5倍になって、仮想マシン3台を手に入れたと考えれば安いもんでしょうか・・・。

下は取り外した P5B-V。12年間、お疲れ様でした。

RAID1も組める安定感抜群のマザー。メモリは壊れましたが、P5B-Vは壊れないままの引退となりました。

翌日にはCitrix Hypervisor 8.1 Express Edition が無事に動作し、CentOS6, CentOS7がインストールできました。

しかし、XenCenterでCPUコア数をよく見ると4コアしか認識していないことに気が付きました! CPU 0 ~ CPU 3 までしか表示されません。

調べてみたら、 今のCore i3シリーズではハイパースレッディング(HT)って廃止されたんですね。物理4コアにハイパースレッディングが効いて仮想8コアが使えると思ってCPUを選んだんですが・・・。よく考えたら、たった1万2千円のCPUで8コアも使えるという考えが甘すぎでした。

  物理2コア × 2(HT) = 4スレッド

だったのが、第8世代からは、

  物理4コア × 1 = 4スレッド

という仕様になって、合計スレッド数に変化はないとのこと。

「今のCore i3 ってすげぇ、物理4コアもあるの? 10年も過ぎたらすごいことになってんだな」って喜んで、合計スレッド数をよく見ないで買った私がアホでした・・・。

Windows Server も動かしたいときはコア数がもう少し多いCPUの方が都合がいいのですが、しばらくは4コアで我慢です。