さくらのクラウドの専有ホスト上でAndroidを動かして遊ぶ

先日さくらのクラウドの、仮想サーバの基盤を利用者専有できる専有ホストにおいてNested VMの対応がアナウンスされました

専有ホストがNested VMに対応しました | さくらのクラウドニュース

利用者側でなにかする必要はなく新規に専有ホストをご契約し、その上で仮想サーバを実行すると、仮想サーバからVMXフラグが確認できNested VMの環境を利用できます。
※提供以前より専有ホストをご利用中のお客様は別途カスタマー窓口までご連絡をお願いします

実際に何に使って見ようかと思ったときに思いついたのがAndroid エミュレータを実行しモバイルアプリの自動テストができないかというものでした。

まさしくピッタリの記事がメルカリさんで公開されています。
Docker × Android エミュレータで、自動テスト(Appium)を並列化・爆速にする環境を作ったお話

Docker AndroidというAndroidエミュレータとnoVNC経由で操作できる環境がパッケージとなったUIテスト用のコンテナイメージも公開されています。
実際の利用方法はDockerがインストールされた環境で実行するだけ。

上部の画像は実際にさくらのクラウドの専有ホスト上でDocker Androidを使ってGalaxy S6とS7 Edgeのエミュレータを実行してみました。
(実際にはこの他にも5個ほどのエミュレータを並行実行されています)

どちらかというと特殊な使い方になるかと思いますが、もちろん普通通りにKVMの環境を構築しNested KVMを構築することも、ISOからVMware ESXiをインストールして仮想環境を構築することも可能です。

これまでよりも仮想基盤として利便性の向上したさくらのクラウド & 専有ホストをお試しください。
今なら2万円クーポン配布キャンペーンを行っているのでその範囲で試してみるというのもありかも:-p

さくらのクラウド FreeTrialキャンペーン開催中

ブログの前段にさくらのクラウド エンハンスドロードバランサーを設定してみた

本日、さくらのクラウドではプロキシ型ロードバランサーサービスである「エンハンスドロードバランサー」において、Let’s Encryptの終端・自動更新機能 + 350円(税別)から利用できる下位プランの提供を開始しました。

非常に機能豊富なアプライアンスになっています。

■さくらのクラウドニュース|エンハンスドロードバランサがLet’s Encryptの発行・自動更新に対応しました

エンハンスドロードバランサ (プロキシ型ロードバランサ)

提供機能
・最大40サーバのバランシング
・DDoS攻撃対策
・HTTPS(SSL)終端
・Let’s Encrypt自動SSL証明書更新
・HTTP/2対応
・無停止プラン変更
・ソーリーサーバ設定

今回のLet’s Encrypt対応でSSL証明書の終端および自動発行・自動更新という便利な機能が使えるようになったので早速このブログの前段に設定してみました。

  1. エンハンスドロードバランサーを作成する
    今回はVIPフェイルオーバーを有効にしてFQDNを発行しました
  2. ドメインの設定よりCNAMEを発行されたFQDNに変更する
  3. エンハンスドロードバランサーの実サーバの設定として、ブログのサーバIPアドレスを指定する
  4. 待受ポートの設定を行う
    HTTPできたアクセスを自動でHTTPSに振り替えたり、HTTP/2での接続に対応したりとGUIの簡単そうでできるので便利です!
  5. 証明書の設定からLet’s Encryptの設定を行う
待受ポートの設定
Let’s Encryptの設定

実際に設定する際にはもう少し細かいプロセスが必要となりますが、ざっくりこのくらいの手順で利用可能です。

Let’s Encryptの更新管理などはエンハンスドロードバランサー側にオフロードできるので、90日更新を意識することはありません(万が一更新に失敗した場合にはメールで通知されます)

面倒なLet’s Encryptの発行・自動更新を管理してくれるというだけでも導入の価値があると思います。
詳細はエンハンスドロードバランサーのマニュアルをご参照ください。


このブログのように、もともとLet’s EncryptでSSL化(KUSANAGI)をしていたサイトの前段にエンハンスドロードバランサーを挟み、エンハンスドロードバランサー側でSSLを終端させると管理画面に正しくアクセスできない事象が発生するかもしれません。

原因はエンハンスドロードバランサーから実サーバまでの通信はHTTPで、KUSANAGI側でHTTPの通信を受けた際に自動でHTTPSへのリダイレクトが発生するが、エンハンスドロードバランサーからはHTTPで通信がきて・・・という無限ループが発生するためです。

wp-config.php を見直すことで対応可能です。

if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')
    $_SERVER['HTTPS'] = 'on';

詳細はFunction Reference/is ssl « WordPress Codexとなります。
以上で無事管理画面にもアクセスできるようになりました!

さくらのクラウドにUbuntu 19.04 デスクトップ版を使ってVDIを作ってみた

Ubuntu 19.04がリリースされていたので、サーバ版のISOではなくデスクトップ版のISOイメージからインストールして、リモートデスクトップ環境を作ってみました。

Ubuntu Desktop 19.04 Download

ISOをダウンロードしてさくらのクラウドにFTPでアップロード。
アップロード後にそこからサーバ作成し、リモートコンソールから最初のセットアップを完了させます。

インストール自体は非常に簡単に簡単にあっという間に完了です。
ちなみにインストールの最初で日本語を選択すると完全に日本語化されています。
ただこの状態ではリモート接続できないのでXRDPをインストールします。

# apt -y install xrdp vnc4server
# systemctl enable xrdp 

APTでインストールできました!

その後もChromiumをインストールして利用していますが接続が不安定になるということもなくかなり安定して使えています。
全体的に安定し洗練されているので普段使いの環境として構築してゆこうかと思います:-p

さくらのクラウドの請求額を毎日Slackに通知してみた

はじめに

先日Developer.ioで面白い記事が上がっているのを見つけました。
AWSサービス毎の請求額を毎日Slackに通知してみた

クラウドサービスのように利用状況に応じて従量課金となるものであれば日々の利用金額を把握するというのは非常に重要かと思います。

さて、さくらのクラウドで同じことをしようと思った場合にどうしたらいいのか再現してみました。

設定方法

0.SlackのWebhookの発行手順
この手順自体はDeveloper.ioさんの事前準備の手順を参照ください。

1.さくらのクラウドのコントロールパネルから料金アラートを設定する

コントロールパネルからのホーム画面上の請求情報のタブをクリックし監視したいアカウントの「アラート金額」の設定を有効にします。

すると設定ウインドウが表示されるのでアラート金額に1円以上を指定します。
あと、先程発行したSlackのWebhookを指定すればメール/Slackいずれか、またはその両方に通知することができるようになります。

ちなみに通知の頻度は「指定以上の請求となったタイミング」ではなく、「請求金額が指定金額以上である毎日」通知がされます。
なので1円で設定しておくと今月のご請求予定金額が毎日通知されるわけです。

終わりに

ね、簡単でしょ。
利用料金を通知させるのに複雑な設定は必要ありません。

ぜひご活用ください!

参考情報

さくらのクラウドマニュアル シンプル監視|料金アラート

あってよかった「自動バックアップ」

久しぶりにこのブログにログインしたところWordpressのバージョンアップが通知されていました。
コレ自体は特に大したことではないので、何も気にせずバージョンアップ…

見事に「只今メンテナンス中です。しばらくお待ちください」の表示のまま何もできなくなる事象に遭遇。
おそらく本体か、プラグインか、テーマの更新時に何かしらのファイルやDBがなにかおかしなことになったものと思います。

さくらのクラウド上で動いているのでリモートコンソールから乗り込んで対応するということも可能だったんですが、本質的にそんなめんどくさい対応は嫌だったので、ディスクイメージを自動で取得する「自動バックアップ」で毎日取得しているアーカイブの最新のイメージに書き戻しを行いました。

さくらのクラウド マニュアル | 自動バックアップ

当然ですが正常に動作しているときに取られたアーカイブからの書き戻しなので、復旧後は問題なくこのブログが表示されています(今読んでくださっているもの自動バックアップからの書き戻し後になります)

特に正常に動作しているときにはあまり意識しないことかもしれませんがバックアップは重要ですよ。 & さくらのクラウドなら自動バックアップでディスクイメージ毎バックアップ取得できますよ。という記事でした。

(自動バックアップを設定していなかったらこのブログ放棄していたかもしれません😇)

Windows Server 2019上でVM経由せずにLinuxコンテナを実行する

前回の記事の続きとなります。
さくらのクラウドのWindows Server 2019でWindows Subsystem for Linuxを試してみた

これまでもHyper-VやVirtualboxにLinux環境を構築してDocker環境を構築することはできました。
前回インストールしたWindows Subsystem for Linux上にDockerをインストールしてみようという話となります。

これによりNested VMが許容されていないクラウド上でもWindows上でLinuxコンテナの実行が実現します。

今回の内容を実行するにはWindows Server 2019上にWindows Subsystem for Linuxのインストールが完了している必要があります。

Ubuntu環境に入りその後手順は非常に簡単です。

sudo apt install docker.io
sudo cgroupfs-mount
sudo usermod -aG docker $USER
sudo service docker start

一旦インストールが完了後再起動します。

起動都度以下のコマンドは毎回必要になります。

sudo cgroupfs-mount
sudo service docker start

Hello-worldしてみた結果

様々なブログなどでも書かれている通りdocker-composeは動きません。
また、DockerHubでいろいろ試してみましたがうまく動かない物もありました(この辺は私のスキル不足感が否めません。。。)

WSL内のUbuntu内のDocker内で、httpdを実行しローカルのIEから接続する図

必ずしも万能(構築や不明な状態への対応などが必要となる)ではありませんが、
WindowsコンテナだけでなくLinuxコンテナも動作するので、環境が限定されている場合などいろいろと活用できそうです。

なおこの記事もかなりトライ・アンド・エラーの結果なんとか動くようになりました。
もしかしたら必要な手順などが足りていない場合もあるかもしれませんが、その際にはフィードバックよろしくおねがいします。

さくらのクラウドのWindows Server 2019でWindows Subsystem for Linuxを試してみた

さくらのクラウドでは他の事業者に先駆けてWindows Server 2019の提供を行っております。
さくらのクラウドにおける「Windows Server 2019」の提供開始について

Windows Server 2019の特徴としてクライアント版Windows 10と同様にWSL(Windows Subsystem for Linux)を利用することができます。
というわけで早速試してみました。

目次

1.役割と機能の追加から「Windows Subsystem for Linux」をインストールする

※再起動が発生するのでご注意下さい。

2.Powershell経由で実行ファイルのダウンロードと準備

Windows 10の場合Microsoft Storeからダウンロードできますが、Windows Serverには標準ではMicrosoft Storeが用意されていません。
厳密にはビジネス版Microsoft Storeというものがあるそうですが今回は直接実行ファイルをダウンロードしてみます。

なお、インストールの手順としてはこちらに公式が公開しております。
Windows Server Installation Guide

また、現時点で入手可能なディストリビューションはこちらです。
Downloading distros

今回はUbuntu 18.04をダウンロードします。

Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1804 -OutFile Ubuntu.appx -UseBasicParsing

ダウンロードが完了したらファイル名を変更します。

Rename-Item Ubuntu.appx Ubuntu.zip
Expand-Archive ~/Ubuntu.zip ~/Ubuntu

3.インストール

あとは単純にExeファイルを実行するだけとなります

上記の Ubuntu1804.exe を実行することでインストールが開始され、初期管理ユーザとパスワードの入力が求められます。

起動してみる

実際にPowershellやコマンドプロンプトの画面ないから 「Bash」 と入力することで立ち上がってきます。

これでWindows Server上でUbuntuが実行する環境が準備できました。
Linux上ではWindowsを起動することはできません*がWindows上ではLinux環境が実行するので一粒で二度美味しい:-p
*いろいろと語弊あり

さくらのクラウドの便利機能・サービス 60選!

これはさくらインターネットAdvent Calendar 2018 10日目の記事です。
(遅刻してすみません。)

はじめまして。
さくらインターネットでさくらのクラウドを担当している重藤です。

さくらインターネットの提供するサービスは非常に幅広く、本当にたくさんの機能を提供しています。ひとつの新機能を提供するのにも、その裏側ではいろいろいな物語があります。

それぞれの機能をちゃんと知ってもらいお客様に届けたい。サービスを提供する側としてもサービスを使ってもらいフィードバックを得ることは今後の改善にも繋がります。

さくらのクラウドを使っている皆様はこの中からひとつでも得るものがあれば嬉しく思います。

Continue reading “さくらのクラウドの便利機能・サービス 60選!”