mcpField
C
Civo CLI

Civo CLI

公式
civo.comクラウド・DevOps208civo6 日前に更新
リポジトリ公式サイト

Civo CLI について

Civo CLI は Civo クラウドインフラストラクチャへのコマンドラインアクセスを提供します。ターミナルから直接 Kubernetes クラスター、コンピュートインスタンス、ネットワーク、ストレージボリューム、およびマーケットプレイスアプリケーションをプロビジョニングできます。

主な機能

  1. 01カスタム構成で Kubernetes クラスターを作成・削除する
  2. 02コンピュートインスタンス、ネットワーク、ファイアウォールを管理する
  3. 03クラスターにマーケットプレイスアプリケーションをインストールする
  4. 04クラスター認証情報を取得しローカルアクセスを設定する

活用シーン

  1. 01開発ワークフローにおける Kubernetes クラスタープロビジョニングの自動化
  2. 02スクリプトから複数の Civo インフラストラクチャリソースを管理する
  3. 03Civo クラスター作成をデプロイメントパイプラインに統合する

インストール

OS またはパッケージマネージャーを選び、コマンドをターミナルで実行します。

$
brew install civo/tools/civo

インストール後にcivo --versionを実行して確認します。

コマンド例

よく使うコマンドを使う順に並べています。

01
civo apikey add
02
civo kubernetes create demo
03
civo kubernetes config demo --save

詳細

Civo コマンドラインクライアント

はじめに

Civo CLI は、ターミナルから Civo.com アカウントを管理するためのツールです。Civo のウェブコントロールパネル には、アカウントを管理するための使いやすいインターフェースが用意されています。一方、アカウントの操作を自動化したり、スクリプトを実行したり、複数の複雑なサービスを利用したりする場合は、ここで紹介するコマンドラインインターフェースが役立ちます。このガイドでは、Civo CLI ツールのセットアップと使い方を、例を交えて説明します。

ステータス: このプロジェクトは現在、活発に開発・保守されています。

目次

セットアップ

Civo CLI は Go で構築され、バイナリファイルとして配布されています。複数のオペレーティングシステムに対応しており、https://github.com/civo/cli/releases からダウンロードできます。

macOS へのインストール

Mac をお使いの場合は、Homebrew を使ってインストールできます。

brew tap civo/tools
brew install civo

または、コンソールで次のコマンドを実行してください。

curl -sL https://civo.com/get | sh
Windows へのインストール

Civo CLI は、Chocolatey または Scoop を使って Windows にダウンロードできます。

Chocolatey でインストールするには、PC にパッケージマネージャーの Chocolatey をインストールする必要があります。

  • PC に Chocolatey がインストールされていることを確認してから、次のコマンドを実行してください。
choco install civo-cli

これで、Civo CLI が PC にインストールされます。

Scoop でインストールするには、パッケージマネージャーの Scoop をインストールしてから、次の手順を実行してください。

  • 次のコマンドで extras バケットを追加します。
scoop bucket add extras
  • 次のコマンドで civo をインストールします。
scoop install civo

もちろん、Civo アカウントも必要です。アカウントはこちらから登録できます。

Linux へのインストール

Linux では、さまざまな方法で Civo CLI をインストールできます。

  • 直接シェルスクリプトを使ってインストールします。
curl -sL https://civo.com/get | sh
  • MacOS 向けの上記手順と同様に、brew パッケージマネージャーを使ってインストールします。

  • wget を使ってインストールします。使用するリリースバージョンを指定してください。

以下の例のバージョンは、最新ではない場合があります。この方法を使用する場合は、利用可能な最新バージョンを指定してください。

wget https://github.com/civo/cli/releases/download/v1.0.40/civo-1.0.40-linux-amd64.tar.gz
tar -xvf civo-1.0.40-linux-amd64.tar.gz
chmod +x civo
mv ./civo /usr/local/bin/
  • バイナリをビルドすることもできますが、その場合は Go がインストールされていることを確認してください。
git clone https://github.com/civo/cli.git
cd cli
make
cd ..
cp -r cli $HOME
export PATH="$HOME/cli:$PATH"

これで、Civo CLI のインストールは完了です。次のいずれかのコマンドを実行して、正常に動作することを確認してください。

注: 初めて実行する際は、現在のリージョンを設定してください。詳しくはリージョンを参照してください。

Civo CLI ツールの実行とヘルプの表示

ツールを使うには、選択したオプションを指定して civo を実行します。help または -h コマンドを実行すると、コマンドやそのオプションに関する状況に応じたヘルプを確認できます。 civo help、 civo instance help、 civo instance create help などです。Civo CLI の主な構成要素については、以降のセクションで説明します。

CLI のバージョン/更新

すべてのユーザーに対し、24 時間に 1 回、CLI の更新を促す通知が表示されます。また、エラーが発生した場合にも、CLI のバージョンを更新するよう通知されます。civo update を実行すると、CLI を最新バージョンに更新できます。

Docker の使用

ベース OS をクリーンな状態に保ちたい場合は、Civo の CLI ユーティリティを Docker コンテナ内で実行することもできます。

実行時には、通常、API キーをマウントして永続化します。

touch $HOME/.civo.json
docker run -it --rm -v $HOME/.civo.json:/.civo.json civo/cli:latest

CLI の Kubernetes オプションも使用できます。イメージには Kubectl が含まれているため、使用するにはコンテナ内に設定をマウントするだけです。

touch $HOME/.civo.json
mkdir $HOME/.kube/
touch $HOME/.kube/config
docker run -it --rm -v $HOME/.civo.json:/.civo.json -v $HOME/.kube/config:/root/.kube/config civo/cli:latest

使いやすくするために、エイリアスを設定することをおすすめします。以下は、システムに直接インストールした場合と同じコマンドを Docker イメージで実行するエイリアスの設定例です。

Ubuntu など:

alias civo="docker run -it --rm -v $HOME/.civo.json:/.civo.json civo/cli:latest"
# Maybe put the above line in ~/.bash_profile or ~/.zshrc
civo sshkey list
civo instance list
civo instance create --size g2.xsmall
civo k8s list

Fedora ユーザーの場合:

alias civo="docker run -it --rm -v $HOME/.civo.json:/.civo.json:Z -v $HOME/.kube/config:$HOME/.kube/config:Z civo/cli:latest"

以下は、エイリアスを設定して Kubernetes の使用を開始する例です。

alias civo="docker run -it --rm -v $HOME/.civo.json:/.civo.json -v $HOME/.kube/config:$HOME/.kube/config civo/cli:latest"
# Maybe put the above line in ~/.bash_profile or ~/.zshrc
civo sshkey list
civo instance list
civo instance create --size g2.xsmall
civo k8s list

グローバルオプション

civo CLI には複数のグローバルオプションがあり、次のように使用できます。

      --config string   config file (default is $HOME/.civo.json)
  -f, --fields string   output fields for custom format output (use -h to determine fields)
  -h, --help            help for civo
  -o, --output string   output format (json/human/custom) (default "human")
      --pretty          Print pretty the json output
      --region string   Choose the region to connect to, if you use this option it will use it over the default region
  -y, --yes             Automatic yes to prompts; assume "yes" as answer to all prompts and run non-interactive

API キー

はじめに

コマンドラインツールを使用するには、特別なキーを使って Civo API に認証する必要があります。自動生成された API キーを確認するか、新しいキーを再生成するには、https://www.civo.com/api にアクセスしてください。CLI にはグローバル環境変数 CIVO_TOKEN があり、これが設定されている場合、CLI は設定ファイル内のキーではなくこのトークンを使用します。これは、スクリプトや CI/CD パイプラインで使用する場合に便利です。CIVO_TOKEN を設定すると、civo apikey list コマンドに tempKey という名前の新しい API キー項目が表示されます。

現在の API キーをアカウントに追加する

API Keys コマンドを使って、CLI ツールに API キーを追加できます。 civo apikey add apikey_name apikey のように実行します。

$ civo apikey add Demo_Test_Key DAb75oyqVeaE7BI6Aa74FaRSP0E2tMZXkDWLC9wNQdcpGfH51r
  Saved the API Key Demo_Test_Key as DAb75oyqVeaE7BI6Aa74FaRSP0E2tMZXkDWLC9wNQdcpGfH51r

複数のアカウントに対応するために複数の API キーを保存できるため、civo apikey current [apikey_name] を使って、認証に使用するキーを指定する必要があります。これにより、選択した API キーが以降のコマンドで使用するデフォルトのキーとして設定されます。

$ civo apikey current Demo_Test_Key
  Set the default API Key to be Demo_Test_Key

デフォルトでは、Civo アカウントの認証情報である API キーと、リージョンなどのその他の設定は、ユーザーのホームディレクトリにある .civo.json というファイルに保存されます。環境変数 CIVO_CONFIG を使って、ファイルのデフォルトの保存先を変更できます。

API キーの管理と一覧表示

civo apikey list を実行すると、設定に保存されているすべての API キーを一覧表示できます。また、civo apikey remove apikey_name を使うと、名前を指定してキーを削除できます。

シークレットキーを確認するには civo apikey show を使用します。デフォルトのキーのみが表示されます。ほかのキーを確認するには、civo apikey show NAME を使用してください。

civo apikey list
+--------------+---------+
| Name         | Default |
+--------------+---------+
| my_username  | <=====  |
+--------------+---------+
civo apikey show my_username
+-------------+------------+
| Name        | Key        |
+-------------+------------+
| my_username | secret_key |
+-------------+------------+

インスタンス

はじめに

インスタンスとは、Civo クラウドプラットフォーム上で稼働する仮想サーバーです。サイズはさまざまで、アカウントのクォータの範囲内で任意の数を実行できます。

インスタンスの作成

ホスト名のパラメーターと、必要なオプションを指定して civo instance create を実行すると、インスタンスを作成できます。

Options:
  -t, --diskimage string     the instance's disk image name (from 'civo diskimage ls' command)
  -l, --firewall string      the instance's firewall you can use the Name or the ID
  -h, --help                 help for create
  -s, --hostname string      the instance's hostname
  -u, --initialuser string   the instance's initial user
  -r, --network string       the instance's network you can use the Name or the ID
  -p, --publicip string      This should be either "none" or "create" (default "create")
  -i, --size string          the instance's size (from 'civo instance size' command)
  -k, --sshkey string        the instance's ssh key you can use the Name or the ID
  -g, --tags string          the instance's tags
  -w, --wait                 wait until the instance's is ready
  --allowed-ips <ip1,ip2,...> Specifies a comma-separated list of IP addresses that the instance is allowed to use (for IP/MAC spoofing protection, the allowed_ips need to be within the network subnet that the instance is attached to).
  --network-bandwidth-limit <limit_mbps> Sets the network bandwidth limit for the instance in Mbps. Use 0 for unlimited.

使用例:

$ civo instance create --hostname=api-demo.test --size g4s.small --diskimage=ubuntu-noble --initialuser=demo-user --allowed-ips 192.168.1.100,192.168.1.101 --network-bandwidth-limit 100
  The instance api-demo.test has been created

$ civo instance show api-demo.test
              ID : 112f2407-fb89-443e-bd0e-5ddabc4682c6
        Hostname : api-demo.test
          Status : ACTIVE
            Size : g4s.small
       Cpu Cores : 1
             Ram : 2048
        SSD disk : 25
          Region : LON1
      Network ID : 28244c7d-b1b9-48cf-9727-aebb3493aaac
   Disk image ID : ubuntu-noble
     Snapshot ID :
    Initial User : demo-user
Initial Password : demo-user
         SSH Key :
     Firewall ID : c9e14ae8-b8eb-4bae-a687-9da4637233da
            Tags :
      Created At : Mon, 01 Jan 0001 00:00:00 UTC # Note: This is a placeholder date
      Private IP : 192.168.1.7
       Public IP : 74.220.21.246
     Allowed IPs : 192.168.1.100, 192.168.1.101
Network Bandwidth Limit : 100 Mbps

----------------------------- NOTES -----------------------------

上記のように civo instance show api-demo.test を実行すると、インスタンスの詳細を確認できます。

インスタンスの詳細を表示する

civo instance show コマンドは、特定のインスタンスに関する詳細情報を表示します。

使用方法: civo instance show <INSTANCE_ID_OR_HOSTNAME>

カスタム形式を使用する場合、利用可能なフィールドは次のとおりです。

* id
* hostname
* status
* size
* cpu_cores
* ram_mb
* disk_gb
* region
* network_id
* diskimage_id
* initial_user
* initial_password
* ssh_key
* firewall_id
* tags
* created_at
* private_ip
* public_ip
* notes
* script
* reverse_dns
* allowed_ips
* network_bandwidth_limit

civo instance show の出力に、次の情報が含まれるようになりました。

  • 許可 IP:インスタンスで使用が許可されている IP のカンマ区切りの一覧です。この一覧に含まれていない場合でも、割り当てられたプライベート IP アドレスからのトラフィックは自動的に許可されます。
  • ネットワーク帯域幅の上限:設定済みのネットワーク帯域幅の上限です(例:「500 Mbps」または「無制限」)。
ディスクイメージとインスタンスサイズ

civo diskimage ls を実行すると、ディスクイメージを確認できます。

$ civo diskimage ls
+--------------------------------------+----------------------+----------------+-----------+--------------+
| ID                                   | Name                 | Version        | State     | Distribution |
+--------------------------------------+----------------------+----------------+-----------+--------------+
| a4204155-a876-43fa-b4d6-ea2af8774560 | debian-10            |             10 | available | debian       |
+--------------------------------------+----------------------+----------------+-----------+--------------+
| 25fbbd96-d5ec-4d08-9c75-a5e154dabf9b | debian-11            |             11 | available | debian       |
+--------------------------------------+----------------------+----------------+-----------+--------------+
| 887f05e7-e3b0-49b5-9ab9-6f35848e1e56 | debian-12            |             12 | available | debian       |
+--------------------------------------+----------------------+----------------+-----------+--------------+
| 9b661c46-ac4f-46e1-9f3d-aaacde9b4fec | debian-9             |              9 | available | debian       |
+--------------------------------------+----------------------+----------------+-----------+--------------+
| d0e47b5e-b9af-4386-9902-2ded1018dd29 | rocky-10             |             10 | available | rocky        |
+--------------------------------------+----------------------+----------------+-----------+--------------+
| d052a966-385d-4018-931e-3637fe97cd13 | rocky-9              |              9 | available | rocky        |
+--------------------------------------+----------------------+----------------+-----------+--------------+
| 170db96f-8458-44aa-83ca-0c31fb81a835 | rocky-9-1            |            9.1 | available | rocky        |
+--------------------------------------+----------------------+----------------+-----------+--------------+
| 21613daa-a66b-44fc-87f5-b6db566d8f91 | ubuntu-cuda11-8      | 22.04-cuda11-8 | available | ubuntu       |
+--------------------------------------+----------------------+----------------+-----------+--------------+
| 13232803-0928-4634-9ab8-476bff29ef1b | ubuntu-cuda12-2      | 22.04-cuda12-2 | available | ubuntu       |
+--------------------------------------+----------------------+----------------+-----------+--------------+
| ece39039-56ac-4bf6-8b39-78bd895d8385 | ubuntu-cuda12-6      | 24.04-cuda12-6 | available | ubuntu       |
+--------------------------------------+----------------------+----------------+-----------+--------------+
| 8d7e4997-f97d-43c8-9936-8329bbbcc6cf | ubuntu-cuda12-8      | 24.04-cuda12-8 | available | ubuntu       |
+--------------------------------------+----------------------+----------------+-----------+--------------+
| 0b346fc3-2d7e-4be7-8881-34787417f7ff | ubuntu-cuda12-9      | 24.04-cuda12-9 | available | ubuntu       |
+--------------------------------------+----------------------+----------------+-----------+--------------+
| d927ad2f-5073-4ed6-b2eb-b8e61aef29a8 | ubuntu-focal         |          20.04 | available | ubuntu       |
+--------------------------------------+----------------------+----------------+-----------+--------------+
| eda67ea0-4282-4945-9b7b-d3e1cba1d987 | ubuntu-jammy         |          22.04 | available | ubuntu       |
+--------------------------------------+----------------------+----------------+-----------+--------------+
| d2c2c728-512d-4087-906a-8486fcf4a1c7 | ubuntu-noble         |          24.04 | available | ubuntu       |
+--------------------------------------+----------------------+----------------+-----------+--------------+

civo size ls を実行すると、インスタンスサイズの一覧を確認できます。

$ civo size ls
+--------------------+--------------------------------+------------+-----+---------+-----+
| Name               | Description                    | Type       | CPU | RAM     | SSD |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.xsmall          | Extra Small                    | Instance   |   1 |    1024 |  25 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.small           | Small                          | Instance   |   1 |    2048 |  25 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.medium          | Medium                         | Instance   |   2 |    4096 |  50 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.large           | Large                          | Instance   |   4 |    8192 | 100 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.xlarge          | Extra Large                    | Instance   |   6 |   16384 | 150 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.2xlarge         | 2X Large                       | Instance   |   8 |   32768 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.kube.xsmall    | Extra Small - Standard         | Kubernetes |   1 |    1024 |  30 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.kube.small     | Small - Standard               | Kubernetes |   1 |    2048 |  40 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.kube.medium    | Medium - Standard              | Kubernetes |   2 |    4096 |  50 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.kube.large     | Large - Standard               | Kubernetes |   4 |    8192 |  60 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4p.kube.small     | Small - Performance            | Kubernetes |   4 |   16384 |  60 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4p.kube.medium    | Medium - Performance           | Kubernetes |   8 |   32768 |  80 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4p.kube.large     | Large - Performance            | Kubernetes |  16 |   65536 | 120 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4p.kube.xlarge    | Extra Large - Performance      | Kubernetes |  32 |  131072 | 180 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4c.kube.small     | Small - CPU optimized          | Kubernetes |   8 |   16384 |  60 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4c.kube.medium    | Medium - CPU optimized         | Kubernetes |  16 |   32768 |  80 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4c.kube.large     | Large - CPU optimized          | Kubernetes |  32 |   65536 | 120 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4c.kube.xlarge    | Extra Large - CPU optimized    | Kubernetes |  64 |  131072 | 180 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4m.kube.small     | Small - RAM optimized          | Kubernetes |   2 |   16384 |  60 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4m.kube.medium    | Medium - RAM optimized         | Kubernetes |   4 |   32768 |  80 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4m.kube.large     | Large - RAM optimized          | Kubernetes |   8 |   65536 | 120 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4m.kube.xlarge    | Extra Large - RAM optimized    | Kubernetes |  16 |  131072 | 180 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.db.xsmall       | Extra Small                    | Database   |   1 |    2048 |  20 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.db.small        | Small                          | Database   |   2 |    4096 |  40 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.db.medium       | Medium                         | Database   |   4 |    8192 |  80 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.db.large        | Large                          | Database   |   6 |   16384 | 160 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.db.xlarge       | Extra Large                    | Database   |   8 |   32768 | 320 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.db.2xlarge      | Double Extra Large             | Database   |  10 |   65536 | 640 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.kf.small        | Small - CPU optimized          | KfCluster  |   4 |   16384 |  60 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.kf.medium       | Medium - CPU optimized         | KfCluster  |   8 |   32768 |  80 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.kf.large        | Large - CPU optimized          | KfCluster  |  16 |   65536 | 120 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.kf.xlarge       | Extra Large - CPU optimized    | KfCluster  |  32 |  131072 | 180 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.xsmall         | xSmall - Standard              | Instance   |   1 |    1024 |  25 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.small          | Small - Standard               | Instance   |   1 |    2048 |  25 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.medium         | Medium - Standard              | Instance   |   2 |    4096 |  50 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.large          | Large - Standard               | Instance   |   4 |    8192 | 100 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.xlarge         | Extra Large - Standard         | Instance   |   6 |   16384 | 150 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.2xlarge        | 2X Large - Standard            | Instance   |   8 |   32768 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.kube.small     | Small - Nvidia A100 80GB       | Kubernetes |  12 |  131072 | 100 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.kube.medium    | Medium - Nvidia A100 80GB      | Kubernetes |  24 |  262144 | 100 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.kube.large     | Large - Nvidia A100 80GB       | Kubernetes |  48 |  524288 | 100 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.kube.xlarge    | Extra Large - Nvidia A100 80GB | Kubernetes |  96 | 1048576 | 100 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.small          | Small - Nvidia A100 80GB       | Instance   |  12 |  131072 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.medium         | Medium - Nvidia A100 80GB      | Instance   |  24 |  262144 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.large          | Large - Nvidia A100 80GB       | Instance   |  48 |  524288 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.xlarge         | Extra Large - Nvidia A100 80GB | Instance   |  96 | 1048576 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.40.small       | Small - Nvidia A100 40GB       | Instance   |   8 |   65536 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.40.medium      | Medium - Nvidia A100 40GB      | Instance   |  16 |  131072 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.40.large       | Large - Nvidia A100 40GB       | Instance   |  32 |  262133 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.40.xlarge      | Extra Large - Nvidia A100 40GB | Instance   |  64 |  524288 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.40.kube.small  | Small - Nvidia A100 40GB       | Kubernetes |   8 |   65536 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.40.kube.medium | Medium - Nvidia A100 40GB      | Kubernetes |  16 |  131072 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.40.kube.large  | Large - Nvidia A100 40GB       | Kubernetes |  32 |  262133 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.40.kube.xlarge | Extra Large - Nvidia A100 40GB | Kubernetes |  64 |  524288 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| an.g1.l40s.x1      | Small - Nvidia L40S 40GB       | Instance   |  12 |  131072 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| an.g1.l40s.x2      | Medium - Nvidia L40S 40GB      | Instance   |  24 |  262133 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| an.g1.l40s.x4      | Large - Nvidia L40S 40GB       | Instance   |  48 |  524288 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| an.g1.l40s.x8      | Extra Large - Nvidia L40S 40GB | Instance   |  96 | 1048576 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| an.g1.l40s.kube.x1 | Small - Nvidia L40S 40GB       | Kubernetes |  12 |  131072 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| an.g1.l40s.kube.x2 | Medium - Nvidia L40S 40GB      | Kubernetes |  24 |  262133 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| an.g1.l40s.kube.x4 | Large - Nvidia L40S 40GB       | Kubernetes |  48 |  524288 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| an.g1.l40s.kube.x8 | Extra Large - Nvidia L40S 40GB | Kubernetes |  96 | 1048576 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
インスタンススナップショット

スナップショットを使用すると、インスタンスの特定時点のコピーを作成できます。このスナップショットを使って、新しいインスタンスを作成したり、既存のインスタンスを以前の状態に復元したりできます。

スナップショットの作成

インスタンスのスナップショットを作成するには:

$ civo instance snapshot create INSTANCE_NAME [flags]

Flags:
  -n, --name string   The name of the snapshot (default: auto-generated)
  -d, --description string   Description for the snapshot
スナップショットの一覧表示

特定のインスタンスで利用可能なすべてのスナップショットを確認するには:

$ civo instance snapshot list INSTANCE_NAME/ID
スナップショットからの復元

スナップショットからインスタンスを復元するには:

$ civo instance snapshot restore INSTANCE_NAME/ID SNAPSHOT_NAME/ID [flags]

Flags:
  -d, --description string   New description for the restored instance
      --hostname string      New hostname for the restored instance (optional)
      --private-ipv4 string  New private IPv4 address for the restored instance (optional)
      --overwrite-existing   Overwrite an existing instance if it shares the same IP or hostname (defaults to false)

例:

$ civo instance snapshot restore my-instance-id snap-123 --hostname restored-instance-new-name --overwrite-existing
スナップショットの更新

インスタンスのスナップショット名または説明を更新するには:

$ civo instance snapshot update INSTANCE_NAME/ID SNAPSHOT_NAME/ID [flags]

Flags:
  -n, --name string         New name for the snapshot
  -d, --description string  New description for the snapshot

例:

$ civo instance snapshot update my-instance my-snapshot --name new-snapshot-name --description "Updated snapshot description"
スナップショットの削除

スナップショットを削除するには:

$ civo instance snapshot remove INSTANCE_NAME/ID SNAPSHOT_NAME/ID
インスタンスのデフォルトユーザーのパスワードの確認

civo instance password ID/hostname を実行すると、インスタンスのデフォルトユーザーのパスワードを確認できます。

$ civo instance password api-demo.test
The instance api-demo.test (112f2407-fb89-443e-bd0e-5ddabc4682c6) has the password BrbXNW2RUYLe (and user demo-user)

このコマンドにオプション -o と -f を付けて実行すると、パスワードのみを出力できます。スクリプトで使用する場合に便利です。

$ civo instance password api-demo.test -o custom -f Password
BrbXNW2RUYLe
インスタンスのパブリック IP アドレスの確認

インスタンスにパブリック IP アドレスが設定されている場合は、civo instance public-ip ID/hostname を使って表示できます。

$ civo instance public-ip api-demo.test -o custom -f public_ip # Corrected from 'show' to 'public-ip'
74.220.21.246

上記の例では、-o と -f を使用して、出力に IP アドレスのみを表示しています。

ファイアウォールの設定

インスタンスでは、個別に設定したファイアウォールを使用できます。デフォルトでは、すべてのポートを開放するルールが設定されたファイアウォールとともにインスタンスが作成されます。インスタンスのセキュリティをさらに強化するには、ルールを設定する必要があります(詳しくはファイアウォールを参照してください)。ルールを設定したら、civo firewall ls を実行して確認できます。

$ civo firewall ls
+--------------------------------------+------------------------------------+---------+-------------+-----------------+
| ID                                   | Name                               | Network | Total rules | Total Instances |
+--------------------------------------+------------------------------------+---------+-------------+-----------------+
| c9e14ae8-b8eb-4bae-a687-9da4637233da | Default (all open)                 | Default |           3 |               0 |
| f79db64d-41f0-4be0-ae80-ce4499164319 | Kubernetes cluster: Demo           | Default |           2 |               0 |
+--------------------------------------+------------------------------------+---------+-------------+-----------------+

ファイアウォール ID を取得し、civo instance firewall ID/hostname firewall_id コマンドを使って、ファイアウォールをインスタンスに関連付けることができます。例:

$ civo instance firewall api-demo.test f79db64d-41f0-4be0-ae80-ce4499164319
Set the firewall for the instance api-demo.test (112f2407-fb89-443e-bd0e-5ddabc4682c6) to Kubernetes cluster: Demo (f79db64d-41f0-4be0-ae80-ce4499164319)
インスタンスの許可 IP の更新

インスタンスで許可する IP アドレスを管理する新しいコマンドです(IP/MAC スプーフィング対策)。既存の許可 IP リストを置き換えます。

使用方法: civo instance allowed-ips-update <INSTANCE_ID_OR_NAME> --ips <ip1,ip2,...>

引数とフラグ:

  • <INSTANCE_ID_OR_NAME>(必須):インスタンスの ID またはホスト名。
  • --ips <ip1,ip2,...>:設定する IP アドレスをカンマ区切りで指定します。許可 IP をすべてクリアするには、空文字列を指定します(例:--ips "")。

例:

許可 IP を設定するには:

civo instance allowed-ips-update my-instance-01 --ips 192.168.0.10,192.168.0.11

許可 IP をすべてクリアするには:

civo instance allowed-ips-update my-instance-01 --ips ""
インスタンスのネットワーク帯域幅制限の更新

既存のインスタンスのネットワーク帯域幅制限を更新する新しいコマンドです。

使用方法: civo instance bandwidth-update <INSTANCE_ID_OR_NAME> --limit <BANDWIDTH_MBPS>

引数とフラグ:

  • <INSTANCE_ID_OR_NAME>(必須):インスタンスの ID またはホスト名。
  • --limit <BANDWIDTH_MBPS>(必須):希望するネットワーク帯域幅の制限値を Mbps で指定します。無制限にするには 0 を使用します。

例:

制限を 500 Mbps に設定するには:

civo instance bandwidth-update my-instance-01 --limit 500

無制限に設定するには(API では 0 が無制限を意味すると仮定):

civo instance bandwidth-update my-instance-01 --limit 0
インスタンスの一覧表示

civo instance list を実行すると、特定の API キーに関連付けられたすべてのインスタンスを一覧表示できます。

インスタンスサイズの一覧表示

civo instance size を実行すると、すべてのインスタンスサイズを一覧表示できます。

インスタンスの再起動

ユーザーは、クラッシュしたソフトウェアの修復などのために、いつでもインスタンスを再起動できます。civo instance reboot instanceID/hostname を実行してください。確認メッセージが表示されます。

$ civo instance reboot api-demo.test
 Rebooting api-demo.test. Use 'civo instance show api-demo.test' to see the current status.

ハード再起動する場合は、代わりに civo instance hard-reboot instanceID/hostname を実行してください。

インスタンスの削除

コマンドを使って、アカウントからインスタンスを削除できます。削除は即時に行われるため、注意して使用してください。インスタンスのスナップショットと、マッピングされたストレージはすべて残ります。 使用方法:civo instance remove instanceID/hostname。例:

$ civo instance remove api-demo.test
The instance (api-demo.test) has been deleted
インスタンスの停止(シャットダウン)と起動

civo instance stop instanceID/hostname を実行すると、いつでもインスタンスをシャットダウンできます。

$ civo instance stop api-demo.test
 Stopping api-demo.test. Use 'civo instance show api-demo.test' to see the current status.

アカウント内のシャットダウンしたインスタンスは、civo instance start instanceID/hostname を実行すると再び起動できます。

$ civo instance start api-demo.test
 Starting api-demo.test. Use 'civo instance show api-demo.test' to see the current status.
インスタンスのタグの(再)設定

タグは、インスタンスを区別して管理する際に役立ちます。次のように civo instance tags instanceID/hostname 'tag1 tag2 tag3...' を使って、インスタンスのタグを再設定できます。

$ civo instance tags api-demo.test 'ubuntu demo'
 The instance api-demo.test (b5f82fa7-b8e4-44aa-9dda-df02dab71d6c) has been tagged with ubuntu demo. Use 'civo instance show api-demo.test' to see the current tags.'
$ civo instance show api-demo.test
              ID : b5f82fa7-b8e4-44aa-9dda-df02dab71d6c
        Hostname : api-demo.test
          Status : SHUTOFF
            Size : g3.small
       Cpu Cores : 1
             Ram : 2048
        SSD disk : 25
          Region : LON1
      Network ID : 28244c7d-b1b9-48cf-9727-aebb3493aaac
   Disk image ID : ubuntu-bionic
     Snapshot ID :
    Initial User : demo-user
Initial Password : demo-user
         SSH Key :
     Firewall ID : c9e14ae8-b8eb-4bae-a687-9da4637233da
            Tags : ubuntu demo
      Created At : Mon, 01 Jan 0001 00:00:00 UTC
      Private IP : 192.168.1.7
       Public IP : 74.220.16.23

----------------------------- NOTES -----------------------------
インスタンス情報の更新

インスタンスの名前を変更したり、メモを追加したりする場合は、次のように instance update コマンドを使用できます。

$ civo instance update api-demo.test --hostname api-demo-renamed.test --notes 'Hello, world!'
The instance api-demo-renamed.test (b5f82fa7-b8e4-44aa-9dda-df02dab71d6c) has been updated

$ civo instance show api-demo-renamed.test
              ID : 715f95d1-3cee-4a3c-8759-f9b49eec34c4
        Hostname : api-demo-renamed.test
          Status : ACTIVE
            Size : g3.small
       Cpu Cores : 1
             Ram : 2048
        SSD disk : 25
          Region : LON1
      Network ID : 28244c7d-b1b9-48cf-9727-aebb3493aaac
   Disk image ID : ubuntu-bionic
     Snapshot ID :
    Initial User : demo-user
Initial Password : demo-user
         SSH Key :
     Firewall ID : c9e14ae8-b8eb-4bae-a687-9da4637233da
            Tags :
      Created At : Mon, 01 Jan 0001 00:00:00 UTC
      Private IP : 192.168.1.7
       Public IP : 74.220.21.246

----------------------------- NOTES -----------------------------

Hello, world!

いずれか一方の項目だけを更新する場合は、--name または --notes のスイッチを省略できます。

インスタンスのアップグレード(サイズ変更)

Civo のクォータに空きがあれば、任意のインスタンスのサイズを大きくできます。civo sizes ls に表示されるサイズを new_size に指定し、civo instance upgrade instanceID/hostname new_size を使ってインスタンスをアップグレードできます。

$ civo instance upgrade api-demo-renamed.test g3.medium
 The instance api-demo-renamed.test (9579d478-a09e-4196-a08c-f52545a90fea) is being upgraded to g3.medium

$ civo instance show api-demo-renamed.test
          Status : ACTIVE
            Size : g3.medium
       Cpu Cores : 2
             Ram : 4096
        SSD disk : 50
          Region : LON1
      Network ID : 28244c7d-b1b9-48cf-9727-aebb3493aaac
   Disk image ID : ubuntu-bionic
     Snapshot ID :
    Initial User : demo-user
Initial Password : demo-user
         SSH Key :
     Firewall ID : c9e14ae8-b8eb-4bae-a687-9da4637233da
            Tags : ubuntu, demo
      Created At : Mon, 01 Jan 0001 00:00:00 UTC
      Private IP : 192.168.1.9
       Public IP : 74.220.17.71

----------------------------- NOTES -----------------------------

Hello, world!

サイズ変更には数分かかる場合がありますのでご注意ください。

リカバリーモード

リカバリーモードを使用すると、トラブルシューティングのためにインスタンスをリカバリー環境で起動できます。

# Enable recovery mode for an instance
civo instance recovery enable INSTANCE_ID/HOSTNAME

# Disable recovery mode for an instance
civo instance recovery disable INSTANCE_ID/HOSTNAME

# Check recovery mode status
civo instance recovery-status INSTANCE_ID/HOSTNAME

recovery-status コマンドでは、次のフィールドを使って出力形式をカスタマイズできます。

  • id - インスタンス ID
  • hostname - インスタンスのホスト名
  • status - 現在のリカバリーモードの状態
VNC/コンソールアクセス

console コマンドを使用すると、ブラウザベースの VNC コンソールからインスタンスにアクセスできます。

# Open VNC console (default duration)
civo instance console INSTANCE_ID/HOSTNAME

# Open VNC console with custom duration
civo instance console INSTANCE_ID/HOSTNAME --duration 2h

--duration フラグでは、Go の期間形式を指定できます。

  • "30m" - 30 分
  • "1h" - 1 時間
  • "24h" - 24 時間

コマンドを実行すると、次の処理が行われます。

  1. 指定したインスタンスの VNC アクセスを有効にします
  2. 安全な VNC URL を生成します
  3. デフォルトのブラウザーでコンソールを自動的に開きます
  4. タイムアウトするまで最大 35 秒間、接続を試みます
# Check the status of a VNC/console session
civo instance console status INSTANCE_ID/HOSTNAME

# Stop an active VNC/console session
civo instance console stop INSTANCE_ID/HOSTNAME

Kubernetes クラスター

はじめに

Kubernetes サブコマンドを使用して、Civo 上の Kubernetes クラスターを管理できます。

クラスターの一覧表示

作成済みのクラスターを確認するには、civo kubernetes list を実行します。

$ civo kubernetes list
+--------------------------------------+----------------+--------+-------+-------+--------+
| ID                                   | Name           | Region | Nodes | Pools | Status |
+--------------------------------------+----------------+--------+-------+-------+--------+
| 5604340f-caa3-4ac1-adb7-40c863fe5639 | falling-sunset | NYC1   |     2 |     1 | ACTIVE |
+--------------------------------------+----------------+--------+-------+-------+--------+
Kubernetes のサイズ一覧表示

civo kubernetes size を実行すると、すべての Kubernetes サイズを一覧表示できます。

$ civo kubernetes size
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| Name               | Description                    | Type       | CPU Cores | RAM MB  | SSD GB | Selectable |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4s.kube.xsmall    | Extra Small - Standard         | Kubernetes |         1 |    1024 |     30 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4s.kube.small     | Small - Standard               | Kubernetes |         1 |    2048 |     40 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4s.kube.medium    | Medium - Standard              | Kubernetes |         2 |    4096 |     50 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4s.kube.large     | Large - Standard               | Kubernetes |         4 |    8192 |     60 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4p.kube.small     | Small - Performance            | Kubernetes |         4 |   16384 |     60 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4p.kube.medium    | Medium - Performance           | Kubernetes |         8 |   32768 |     80 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4p.kube.large     | Large - Performance            | Kubernetes |        16 |   65536 |    120 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4p.kube.xlarge    | Extra Large - Performance      | Kubernetes |        32 |  131072 |    180 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4c.kube.small     | Small - CPU optimized          | Kubernetes |         8 |   16384 |     60 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4c.kube.medium    | Medium - CPU optimized         | Kubernetes |        16 |   32768 |     80 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4c.kube.large     | Large - CPU optimized          | Kubernetes |        32 |   65536 |    120 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4c.kube.xlarge    | Extra Large - CPU optimized    | Kubernetes |        64 |  131072 |    180 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4m.kube.small     | Small - RAM optimized          | Kubernetes |         2 |   16384 |     60 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4m.kube.medium    | Medium - RAM optimized         | Kubernetes |         4 |   32768 |     80 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4m.kube.large     | Large - RAM optimized          | Kubernetes |         8 |   65536 |    120 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4m.kube.xlarge    | Extra Large - RAM optimized    | Kubernetes |        16 |  131072 |    180 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4g.kube.small     | Small - Nvidia A100 80GB       | Kubernetes |        12 |  131072 |    100 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4g.kube.medium    | Medium - Nvidia A100 80GB      | Kubernetes |        24 |  262144 |    100 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4g.kube.large     | Large - Nvidia A100 80GB       | Kubernetes |        48 |  524288 |    100 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4g.kube.xlarge    | Extra Large - Nvidia A100 80GB | Kubernetes |        96 | 1048576 |    100 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4g.40.kube.small  | Small - Nvidia A100 40GB       | Kubernetes |         8 |   65536 |    200 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4g.40.kube.medium | Medium - Nvidia A100 40GB      | Kubernetes |        16 |  131072 |    400 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4g.40.kube.large  | Large - Nvidia A100 40GB       | Kubernetes |        32 |  262133 |    400 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4g.40.kube.xlarge | Extra Large - Nvidia A100 40GB | Kubernetes |        64 |  524288 |    400 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| an.g1.l40s.kube.x1 | Small - Nvidia L40S 40GB       | Kubernetes |        12 |  131072 |    200 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| an.g1.l40s.kube.x2 | Medium - Nvidia L40S 40GB      | Kubernetes |        24 |  262133 |    200 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| an.g1.l40s.kube.x4 | Large - Nvidia L40S 40GB       | Kubernetes |        48 |  524288 |    400 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| an.g1.l40s.kube.x8 | Extra Large - Nvidia L40S 40GB | Kubernetes |        96 | 1048576 |    400 | Yes        |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+

クラスターの作成

クラスター名のパラメーターと、指定するオプションを付けて civo kubernetes create を実行すると、クラスターを作成できます。

-a, --applications string          optional, use names shown by running 'civo kubernetes applications ls'
-p, --cni-plugin string            optional, possible options: flannel,cilium. (default "flannel")
-c, --create-firewall              optional, create a firewall for the cluster with all open ports
-e, --existing-firewall string     optional, ID of existing firewall to use
-u, --firewall-rules string        optional, can be used if the --create-firewall flag is set, semicolon-separated list of ports to open (default "default")
-h, --help                         help for create
-m, --merge                        merge the config with existing kubeconfig if it already exists.
-t, --network string               the name of the network to use in the creation (default "default")
-n, --nodes int                    the number of nodes to create (the master also acts as a node). (default 3)
-r, --remove-applications string   optional, remove default application names shown by running  'civo kubernetes applications ls'
 --save                         save the config
-s, --size string                  the size of nodes to create. (default "g4s.kube.medium")
 --switch                       switch context to newly-created cluster
-v, --version string               the k3s version to use on the cluster. Defaults to the latest. Example - 'civo k3s create --version 1.21.2+k3s1' (default "latest")
-w, --wait                         a simple flag (e.g. --wait) that will cause the CLI to spin and wait for the cluster to be ACTIVE

注

  • '--create-firewall' を指定すると、'--firewall-rules' を使用していない場合に、ファイアウォールでポート 80、443、6443 が開放されます。
  • '--create-firewall' と '--existing-firewall' フラグは同時に使用できません。
  • '--firewall-rules' フラグは '--create-firewall' と併用する必要があります。
  • '--firewall-rules' フラグには、次の値を指定できます。
    • 'all' を渡すと、すべてのポートが開放されます。
    • 'start_port-end_port' 形式で終了ポートを指定できます(例:8000-8100)
    • CIDR 表記を指定できます(例:0.0.0.0/0)
    • CIDR 表記を指定しない場合、デフォルトの CIDR 表記として 0.0.0.0/0(パブリックに開放)が設定されます
    • CIDR 表記にスラッシュと数値のセグメントが含まれていない場合、デフォルトで /32 になります
    • 1 つのルール内では、カンマ区切りで複数のポートに同じ CIDR 表記を指定できます
    • ルールを区切るには、セミコロンを使用し、すべてを二重引用符で囲みます(以下を参照) 次の例はいずれも有効です。
    • "80,443,6443:0.0.0.0/0;8080:1.2.3.4"(80、443、6443 をパブリックに開放し、8080 は 1.2.3.4/32 のみに開放)
    • "80,443,6443;6000-6500:4.4.4.4/24"(80、443、6443 をパブリックに開放し、6000~6500 は 4.4.4.4/24 のみに開放)
$ civo kubernetes create my-first-cluster
Created Kubernetes cluster my-first-cluster
クラスターへのプールの追加

クラスターの稼働中に、追加のプールを動的にクラスターへ追加できます(プールは最低 1 つ必要です)。クラスター名(または ID)、実行する新しいノード数を指定する --nodes パラメーター、プールのサイズを指定する --size パラメーターを使用します。 --node と --size が指定されていない場合は、デフォルト値が使用されます。

civo kubernetes node-pool create my-first-cluster
The pool (8064c7) was added to the cluster (my-first-cluster)
クラスター内のプールをスケーリングする

クラスターの稼働中に、クラスター内のプールをスケーリングできます。クラスター名(または ID)、プール ID(6 文字以上)、およびプール内の新しいノード数を指定する --nodes を渡します。プール ID の詳細は civo k3s show my-first-cluster で確認できます。

civo kubernetes node-pool scale my-first-cluster pool-id --nodes 5
クラスター内のプールを削除する

クラスター内のプールを削除できます。クラスター名(または ID)と、プール ID(6 文字以上)を渡します。

civo kubernetes node-pool delete my-first-cluster pool-id
クラスター内のノードを再作成する

何らかの理由でクラスター内の特定のノードを再作成する必要がある場合は、recycle コマンドを使用できます。クラスターの名前または ID と、再作成するノード名を --node= の後に指定します。

$ civo k8s recycle my-first-cluster --node=k3s-my-first-cluster-5ae1561e-node-pool-a56f
The node (k3s-my-first-cluster-5ae1561e-node-pool-a56f) was recycled

注: ノードを再作成すると、そのノードは完全に削除されます。recycle コマンドはノードをドレインしません。ノードを削除してから新しいノードを作成し、クラスターに追加します。このコマンドは、ノード自体に問題が発生し、新しいノードに置き換える必要がある場合を想定しています。

クラスター構成の表示または保存

クラスターの構成情報を出力するには、civo kubernetes config cluster-name を実行します。kubeconfig ファイルが画面に出力されます。

クラスターの構成をローカルの ~/.kube/config ファイルに保存できます。この操作には kubectl のインストールが必要です。使用方法:

civo kubernetes config my-first-cluster -s
Saved config to ~/.kube/config

すでに ~/.kube/config ファイルがある場合、--merge オプションも指定しない限り、保存されるクラスター構成によって既存の内容が_上書き_されます。複数のクラスター構成がある場合、マージすると任意のタイミングでコンテキストを切り替えられます。構成を別の場所に保存する場合は、パスとともに --local-path または -p パラメーターを使用します。--switch を使用すると、CLI によって Kubernetes のコンテキストが新しいクラスターに自動的に切り替わります。

civo kubernetes config my-first-cluster -s --merge
Merged with main kubernetes config: /root/.kube/config
Saved configuration to: /root/.kube/config

Access your cluster with:
kubectl config use-context my-first-cluster
kubectl get node
クラスターの名前を変更する

名前はクラスターの一覧以外では使用されません(つまり、クラスター内に書き込まれることはありません)が、クラスター名を変更する場合は、次のように実行できます。

civo kubernetes rename my-first-cluster --name="Production"
Kubernetes cluster my-first-cluster is now named Production
デフォルトのアプリケーションなしでクラスターを起動する

デフォルトでは、Traefik は k3s にバンドルされています。Traefik なしでクラスターをセットアップするには、作成コマンドで remove-applications オプションを使用して、Traefik なしでクラスターを起動できます。

civo kubernetes create --remove-applications=Traefik-v2-nodeport --nodes=2 --wait

このコマンドでは、civo kubernetes applications ls の実行結果に表示されるアプリケーション名を使用します。

クラスターの削除

クラスターを完全に使い終えた場合は、次のコマンドで削除できます。

civo kubernetes remove my-first-cluster

Kubernetes アプリケーション

はじめに

Applications Marketplace から、コマンドラインインターフェースを通じてアプリケーションをインストールできます。インストール方法は、新しいクラスターを作成する場合と、既存のクラスターにアプリケーションを追加する場合で異なります。

利用可能なアプリケーションの一覧表示

Marketplace で利用可能なアプリケーションの最新一覧を取得するには、civo kubernetes apps list を実行します。この記事の執筆時点では、一覧は次のとおりです。

+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| Name                        | Version           | Category     | Plans                                                                                      | Dependencies                      |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| acorn                       | 0.7.1             | management   | Disabled Auto-TLS, Enabled Auto-TLS                                                        |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| ambassador-edge-stack       | 3.8.0             | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| apisix-ingress-controller   | 1.6.0             | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| argo-rollouts               | v1.4.1            | ci_cd        |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| argo-workflows              | v3.0.3            | ci_cd        |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| argocd                      | v2.11.4           | ci_cd        |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| aspnet                      | 5.0.5             | management   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| atmo                        | 0.2.2             | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| bitwarden-passwordless-dev  | 1.0.74            | management   |                                                                                            | cert-manager                      |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| bitwarden-unified           | 2024.1.0          | management   |                                                                                            | cert-manager                      |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| blackbox-exporter           | 5.8.2             | monitoring   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| cerbos                      | 0.34.0            | security     |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| cert-manager                | v1.15.1           | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| chaos-mesh                  | (default)         | ci_cd        |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| civo-cluster-autoscaler     | v1.25.0           | management   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| code-server                 | 3.11.1            | management   | 1GB, 2GB, 5GB                                                                              | cert-manager                      |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| dapr                        | 1.11.0            | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| devtron                     |                   | ci_cd        |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| dynamic-pv-scaler           | 0.1.0             | storage      |                                                                                            | prometheus-operator               |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| edp                         | 3.8.1             | ci_cd        | GitHub, GitLab                                                                             | argocd, tekton, traefik2-nodeport |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| enroute-onestep             | 0.8.0             | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| epinio                      | v1.11.1           | management   |                                                                                            | cert-manager                      |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| falco                       |              0.27 | security     |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| ferretdb                    | 1.22.0            | database     | 5GB, 10GB, 20GB                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| flagsmith                   | 0.39.0            | ci_cd        |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| flux                        | Latest            | ci_cd        |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| gatekeeper                  | 3.4.0             | security     |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| ghost                       | 5.87.1            | management   | 5GB, 10GB, 15GB                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| gimlet                      | v0.17.2           | management   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| gitea                       | 1.12.5            | management   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| gitlab                      | 16.2.3            | management   | Community edition, Enterprise edition                                                      | cert-manager                      |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| gloo-edge                   | latest            | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| haproxy                     |               1.5 | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| helm                        | 2.16.5            | management   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| istio                       | multiple          | architecture | Istio Latest, Istio v1.10.1, Istio v1.9.5, Istio v1.8.6                                    |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| jenkins                     | 2.452.2           | ci_cd        | 5GB, 10GB, 20GB                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| joomla                      |               5.2 | management   | 5GB, 10GB, 20GB                                                                            | mariadb:5GB, cert-manager         |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| kafka                       | 2.7.0             | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| keda                        | 2.14.0            | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| keptn                       | 0.8.7             | ci_cd        |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| ketch                       | 0.7.0             | management   |                                                                                            | cert-manager                      |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| keycloak                    | 25.0.1            | security     |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| kong-ingress-controller     | 3.0.1             | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| kriten                      | 4.0.1             | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| kube-hunter                 | latest            | security     |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| kubeclarity                 | Latest            | security     |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| kubefirst                   | v2.4.6            | management   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| kubeflow                    | 1.6.0-rc.1        | management   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| kubenav                     | 3.1.0             | management   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| kubernetes-dashboard        | v2.4.0            | management   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| kubernetes-external-secrets | 0.9.14            | security     |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| kubesphere                  | v3.4.1            | management   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| kubevela                    | 1.0.1             | management   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| kubevious                   | v1.0.3            | management   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| kubewarden                  | v1.14.0           | security     |                                                                                            | cert-manager                      |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| kyverno                     | 1.8.2             | security     |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| linkerd                     | Latest            | architecture | Linkerd Minimal, Linkerd & Jaeger, Linkerd with Dashboard, Linkerd with Dashboard & Jaeger |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| litmuschaos                 | 2.0.0             | ci_cd        |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| loki                        | v2.9.11           | monitoring   |                                                                                            | prometheus-operator               |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| longhorn                    | 1.3.2             | storage      |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| maesh                       | v1.4.5            | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| mariadb                     | 11.4.2            | database     | 5GB, 10GB, 20GB                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| metrics-server              | (default)         | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| minio                       | 2019-08-29        | storage      | 5GB, 10GB, 20GB                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| mongodb                     | 4.2.12            | database     | 5GB, 10GB, 20GB                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| netdata                     | Latest            | monitoring   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| neuvector                   | latest            | security     |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| nextcloud                   | 29.0.3            | management   | 5GB, 10GB, 20GB                                                                            | mariadb:5GB, cert-manager         |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| nexus3                      | 3.30.1            | ci_cd        |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| nginx                       | latest            | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| ngrok-ingress-controller    | 0.12.1            | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| nodered                     | 1.2.7             | architecture | 5GB, 10GB, 20GB                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| openfaas                    | 0.18.0            | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| openobserve                 | v0.8.1            | monitoring   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| otomi                       | 1.0.0             | management   |                                                                                            | metrics-server                    |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| paralus                     | 0.2.3             | security     |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| parca                       | v0.15.0           | monitoring   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| percona-mysql               | 1.11.0            | database     | 10GB, 20GB, 50GB                                                                           |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| permission-manager          | 1.6.0             | management   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| pmm                         | 2.36.0            | monitoring   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| polaris                     | 7.3.2             | security     |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| portainer                   | 2.16.2            | management   | Community edition, Business edition                                                        |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| postgresql                  |              16.3 | database     | 5GB, 10GB, 20GB                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| projectsveltos              | v0.29.1           | management   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| prometheus-operator         | 0.38.1            | monitoring   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| pyroscope                   | 0.2.5             | monitoring   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| rabbitmq                    | 3.13.4-management | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| rancher                     | 2.8.5             | management   |                                                                                            | cert-manager                      |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| redis                       | 7.2-alpine        | database     |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| rekor                       | 0.2.2             | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| reloader                    | v0.0.125          | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| rqlite                      | 8.26.6            | database     | 1GB, 5GB, 10GB, 3Replicas                                                                  |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| sealed-secrets              | v0.26.2           | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| selenium                    |                 4 | ci_cd        |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| shipa                       | 1.7.2             | management   |                                                                                            | cert-manager                      |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| siglens-oss                 | 0.1.22            | monitoring   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| spinkube                    | v0.1.0            | management   |                                                                                            | cert-manager                      |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| system-upgrade-controller   | v0.6.2            | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| tekton                      | v0.50.5           | ci_cd        |                                                                                            | metrics-server                    |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| traefik2-loadbalancer       | 2.11.0            | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| traefik2-nodeport           | 2.9.4             | architecture |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| unifi-controller            | stable-6          | management   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| uptime-kuma                 | 1.23.3            | monitoring   | 1GB, 2GB                                                                                   |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| vault                       | 0.24.0            | security     | Standalone, Dev, High-Availability                                                         |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| volcano                     | v1.9.0            | management   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| weavescope                  | v1.13.2           | monitoring   |                                                                                            |                                   |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
| wordpress                   | 5.6.2             | management   | 5GB, 10GB, 20GB                                                                            | mariadb:5GB                       |
+-----------------------------+-------------------+--------------+--------------------------------------------------------------------------------------------+-----------------------------------+
クラスターにインストール済みのアプリケーションの詳細を表示する

このオプションを使用すると、クラスターにインストールされている各アプリのインストール後の手順を確認できます。

civo kubernetes application show Traefik apps-demo-cluster

最初のパラメーターはアプリ名、2 番目のパラメーターはクラスター名です。

新しいクラスターへのアプリケーションのインストール

新しいクラスターにインストールするアプリケーションを指定するには、上記の一覧にある name を指定して、クラスターの作成時に列挙します。

civo kubernetes create apps-demo-cluster --nodes=2  --applications=Redis,Linkerd

クラスターの詳細を確認すると、新しくインストールされたアプリケーションが表示されます。

$ civo kubernetes show apps-demo
                ID : 1199efbe-e2a5-4d25-a32f-0b7aa50082b2
              Name : apps-demo-cluster
           # Nodes : 2
              Size : g2.medium
            Status : ACTIVE
           Version : 0.8.1
      API Endpoint : https://[Cluster-IP]:6443
         Master IP : [Cluster-IP]
      DNS A record : 1199efbe-e2a5-4d25-a32f-0b7aa50082b2.k8s.civo.com

Nodes:
+------------------+----------------+--------+
| Name             | IP             | Status |
+------------------+----------------+--------+
| kube-master-1e91 |      (IP)      | ACTIVE |
| kube-node-e678   |      (IP)      | ACTIVE |
+------------------+----------------+--------+

Installed marketplace applications:
+---------+-----------+-----------+--------------+
| Name    | Version   | Installed | Category     |
+---------+-----------+-----------+--------------+
| Traefik | (default) | Yes       | architecture |
| Linkerd | 2.5.0     | Yes       | architecture |
| Redis   | 3.2       | Yes       | database     |
+---------+-----------+-----------+--------------+

注: metrics-server などのアプリケーションは、新しく作成するすべてのクラスターにデフォルトでインストールされます。デフォルトのアプリケーションをインストールする必要がない場合は、次のように --remove-applications フラグを使用します。

civo kubernetes create apps-demo-cluster --nodes=2 --applications=Redis,Linkerd --remove-applications=metrics-server
既存のクラスターへのアプリケーションのインストール

既存のクラスターに新しいアプリケーションを追加するには、クラスターと追加するアプリケーションを指定して、civo applications コマンドを実行します。

$ civo kubernetes applications add Longhorn --cluster=apps-demo
Added Longhorn 0.5.0 to Kubernetes cluster apps-demo-cluster
プランが必要なアプリケーションのインストール

データベースアプリケーションなど、一部のアプリケーションではストレージプランが必要です。インストール時に、プランの選択肢から指定できます。プランが必要なアプリケーションにプランを指定しなかった場合、CLI から通知され、デフォルトのサイズが提案されます。

$ civo kubernetes applications add mariadb --cluster=apps-demo
You requested to add MariaDB but didn't select a plan. Please choose one... (5GB, 10GB, 20GB) [5GB]: 10GB
Thank you, next time you could use "MariaDB:10GB" to choose automatically
Added MariaDB 10.4.7 to Kubernetes cluster apps-demo-cluster

ドメインとドメインレコード

はじめに

すべてのインスタンスの逆引き DNS は、自動的にホストされます。ドメインの正引き(通常の)DNS を管理する場合は、アカウント内で無料で管理できます。

このセクションは、実質的に次の 2 つに分かれています。1)ドメイン名自体の管理、2)ドメイン名内のレコードの管理です。

ドメイン名の登録は提供しておらず、DNS のホスティングのみを提供しています。ドメイン名を購入する場合は、優れた親切なサポートと非常に競争力のある価格を提供している LCN.com をおすすめします。

新しいドメインの設定

ユーザーは誰でも、別の場所で登録したドメイン名を追加し、Civo.com で管理できます。ドメインのネームサーバーを(レジストラーを通じて)ns0.civo.com と ns1.civo.com に向けるよう変更してください。

新しいドメインを設定するコマンドは civo domain create domainname です。

$ civo domain create civoclidemo.xyz
Created a domain called civoclidemo.xyz with ID 418181b2-fcd2-46a2-ba7f-c843c331e79b

その後、このドメインに DNS レコードを追加できます。

ドメイン名の一覧表示

作成したドメインを確認するには、civo domain list を実行します。

$ civo domain list
+--------------------------------------+-----------------+
| ID                                   | Name            |
+--------------------------------------+-----------------+
| 418181b2-fcd2-46a2-ba7f-c843c331e79b | civoclidemo.xyz |
+--------------------------------------+-----------------+
ドメインの削除

ドメインを削除する場合は、civo domain remove domain_id を実行すると、システムによってドメインと関連する DNS レコードが直ちに削除されます。この削除は即時に行われるため、ご注意ください。

DNS レコードの作成

DNS レコードの作成コマンドでは、civo domain record create domain_id [options] の形式で複数のオプションを指定します。オプションは次のとおりです。

Options:
-n, --name string    the name of the record
-p, --priority int   the priority of record only for MX record
-t, --ttl int        The TTL of the record (default 600)
-e, --type string    type of the record (A, CNAME, TXT, SRV, MX)
-v, --value string   the value of the record

使用方法は次のとおりです。

$ civo domain record create civoclidemo.xyz -n www -t 600 -e A -v 192.168.1.1

Created a record www1 for civoclidemo.xyz with a TTL of 600 seconds and with a priority of 0 with ID 4e181dde-bde8-4744-8984-067f957a7d59
DNS レコードの一覧表示

civo domain record list domain.name を実行すると、特定のドメインに作成したすべてのレコードの概要を確認できます。

$ civo domain record list civoclidemo.xyz
+--------------------------------------+------+---------------------+-------------+------+----------+
| ID                                   | Type | Name                | Value       | TTL  | Priority |
+--------------------------------------+------+---------------------+-------------+------+----------+
| 4e181dde-bde8-4744-8984-067f957a7d59 | A    | www.civoclidemo.xyz | 192.168.1.1 | 1000 | 0        |
+--------------------------------------+------+---------------------+-------------+------+----------+
DNS レコードの削除

civo domain record remove record_id を実行すると、所有するドメインから特定の DNS レコードを削除できます。関連するレコードは直ちに削除されるため、ご注意ください。

$ civo domain record remove 4e181dde-bde8-4744-8984-067f957a7d59
The domain record called www with ID 4e181dde-bde8-4744-8984-067f957a7d59 was deleted

ファイアウォール

はじめに

Civo CLI のファイアウォールコンポーネントを使用して、インスタンスのカスタムファイアウォールルールを設定できます。自由に設定できますが、インスタンスへのアクセスを自分で遮断しないようご注意ください。デフォルトでは、カスタムファイアウォールのすべてのポートが閉じています。

ファイアウォールにはルールを設定でき、その後のコマンドで選択したインスタンスに適用できます。

新しいファイアウォールの設定

新しいファイアウォールを作成するには、civo firewall create new_firewall_name を使用します。

$ civo firewall create civocli_demo
Created a firewall called civocli_demo with ID ab2a25d7-edd4-4ecd-95c4-58cb6bc402de

デフォルトでは、新しく作成したファイアウォールにデフォルトのルールが適用されます。

デフォルトのルールを適用せずにファイアウォールを作成するには、--no-default-rules フラグを使用します。

civo firewall create new_firewall_name --no-default-rules

-r または --create-rules フラグを false に設定して、デフォルトのルールを適用せずにファイアウォールを作成することもできますが、この方法は非推奨であり、今後のバージョンで削除されます。どちらの場合も、使用方法は次のとおりです。

civo firewall create new_firewall_name --create-rules=false

次に、必須パラメーターと任意で選択できるパラメーターを指定して、civo firewall rule create firewall_id で新しいルールを追加すると、インスタンスとの接続を許可するルールを設定できます。パラメーターは次のとおりです。以下の例でも使用しています。

Options:
-a, --action string      the action of the rule can be allow or deny (default is allow) (default "allow")
-c, --cidr string        the CIDR of the rule you can use (e.g. -c 10.10.10.1/32,148.2.6.120/32) (default "0.0.0.0/0")
-d, --direction string   the direction of the rule can be ingress or egress (default is ingress) (default "ingress")
-e, --endport string     the end port of the rule
-h, --help               help for create
-l, --label string       a string that will be the displayed as the name/reference for this rule
-p, --protocol string    the protocol choice (TCP, UDP, ICMP) (default "TCP")
-s, --startport string   the start port of the rule

使用例:

$ civo firewall rule create civocli_demo --startport=22 --direction=ingress --label='SSH access for CLI demo' -a allow
 New rule SSH access for CLI demo created

$ civo firewall rule list civocli_demo
+--------------------------------------+-----------+----------+------------+----------+--------+-----------+-------------------------+
| ID                                   | Direction | Protocol | Start Port | End Port | Action | Cidr      | Label                   |
+--------------------------------------+-----------+----------+------------+----------+--------+-----------+-------------------------+
| 74fff0d7-0ba4-497b-bbc1-83179b4e3b23 | ingress   | tcp      |         22 |       22 | allow  | 0.0.0.0/0 | SSH access for CLI demo |
+--------------------------------------+-----------+----------+------------+----------+-----------+----------------------------------+

特定のファイアウォールで有効なルールをすべて確認するには、civo firewall rule ls firewall_id を実行します。firewall_id は、対象のファイアウォールの UUID です。

ファイアウォールの管理

civo firewall list を使用すると、ファイアウォールの概要を確認できます。どのファイアウォールにルールが設定されているか、また、いずれかのインスタンスが特定のファイアウォールを使用しているかどうかが表示されます。次の例では、設定したばかりのファイアウォールにはルールが1つありますが、使用しているインスタンスはありません。

$ civo firewall list
+--------------------------------------+--------------------+---------+-------------+-----------------+----------------+--------------------+
| ID                                   | Name               | Network | Total rules | Total Instances | Total Clusters | Total LoadBalancer |
+--------------------------------------+--------------------+---------+-------------+-----------------+----------------+--------------------+
| 3ac0681d-2f71-4921-ae20-019272d9248b | Default (all open) | Default |           3 |               0 |              0 |                  0 |
+--------------------------------------+--------------+-------------+----------------+----------------+----------------+--------------------+

特定のファイアウォールを使用するようにインスタンスを設定するには、このガイドのインスタンス/ファイアウォールの設定を参照してください。

特定のファイアウォールのルールの詳細を確認するには、civo firewall rule list firewall_id を使用します。

ファイアウォールルールとファイアウォールの削除

ファイアウォールルールは、削除対象のルールが属するファイアウォール ID を確認したうえで、次のように civo firewall rule remove firewall_id rule_id を実行するだけで削除できます。

$ civo firewall rule remove 09f8d85b-0cf1-4dcf-a472-ba247fb4be21 4070f87b-e6c6-4208-91c5-fc4bc72c1587
  Removed Firewall rule 4070f87b-e6c6-4208-91c5-fc4bc72c1587

$ civo firewall rule list 09f8d85b-0cf1-4dcf-a472-ba247fb4be21

同様に、次のように civo firewall remove firewall_id を実行すると、ファイアウォール自体を削除できます。

$ civo firewall remove 09f8d85b-0cf1-4dcf-a472-ba247fb4be21
  Removed firewall 09f8d85b-0cf1-4dcf-a472-ba247fb4be21

$ civo firewall list

ネットワーク

はじめに

Civo では、インスタンスを相互に分離するための完全なプライベートネットワークを利用できます。たとえば、3つのインスタンスを設定し、そのうち1つを とロードバランサーとして使用し、ほかのインスタンスをデータベースサーバーや、プライベート IP のみを持つ独立したアプリケーションサーバーとして動作させることができます。

ネットワークの表示

civo network list を実行すると、現在設定されているネットワークを一覧表示できます。ネットワーク ID、名前ラベル、CIDR 範囲が表示されます。

ネットワークの作成

civo network create network_label を使用して、新しいプライベートネットワークを作成できます。

$ civo network create cli-demo
Create a private network called cli-demo with ID 74b69006-ea59-46a0-96c4-63f5bfa290e1
ネットワークの一覧表示

すべてのネットワークを一覧表示するには、civo network ls を実行します。

$ civo network ls
+--------------------------------------+----------+--------+---------+
| ID                                   | Label    | Region | Default |
+--------------------------------------+----------+--------+---------+
| 28244c7d-b1b9-48cf-9727-aebb3493aaac | Default  | LON1   | true    |
| fa21edfa-c089-421c-8008-0c0c7784386a | test     | LON1   | false   |
| 35ec87e7-fbd2-4ee8-849a-f88d7363e23f | cli-demo | LON1   | false   |
+--------------------------------------+----------+--------+---------+
ネットワークの削除

ネットワークが不要で、アプリケーションがそのネットワーク経由のルーティングに依存していない場合は、civo network remove network_ID を実行するだけで削除できます。

$ civo network remove 74b69006-ea59-46a0-96c4-63f5bfa290e1
Removed the network cli-demo with ID 74b69006-ea59-46a0-96c4-63f5bfa290e1

オブジェクトストア

はじめに

オブジェクトストアは、Civo 上の S3 互換データストレージ構造です。アカウントにオブジェクトストアを作成すると、各オブジェクトストアのサイズ制限と割り当て量の範囲内で、非構造化データを管理できます。

オブジェクトストアの一覧表示

civo objectstore ls を実行すると、アカウント内のすべてのオブジェクトストアを一覧表示できます。

$ civo objectstore ls
+--------+----------+------+---------------------------+--------+
| ID     | Name     | Size | Object Store Endpoint     | Status |
+--------+----------+------+---------------------------+--------+
| 699e42 | cli-demo |  500 | objectstore.lon1.civo.com | ready  |
| 083e59 | test     |  500 | objectstore.lon1.civo.com | ready  |
+--------+----------+------+---------------------------+--------+
オブジェクトストアの作成

オブジェクトストア名をパラメーターとして指定し、civo objectstore create を実行すると、オブジェクトストアを作成できます。--size フラグを使用してサイズを指定することもできます。サイズを指定しない場合、デフォルトで 500GB に設定されます。--region フラグを指定しない場合、現在アクティブなリージョンにオブジェクトストアが作成されます。

$ civo objectstore create cli-demo

Creating Object Store cli-demo in LON1
To check the status of the Object Store run: civo objectstore show cli-demo
オブジェクトストアの更新

Civo の割り当て量に余裕があれば、オブジェクトストア名と新しいサイズを指定して civo objectstore update を実行すると、サイズを更新できます。

$ civo objectstore update cli-demo --size=1000

The Object Store with ID 699e42a7-918b-42f7-ac22-fb9869e835ad was updated to size: 1000 GB
オブジェクトストアの削除

オブジェクトストア名を指定して civo objectstore delete を実行すると、オブジェクトストアを削除できます。

$ civo objectstore delete cli-demo

Warning: Are you sure you want to delete the cli-demo Object Store (y/N) ? y
The Object Store (cli-demo) has been deleted

オブジェクトストアの認証情報

はじめに

オブジェクトストアへのアクセスは、認証情報の管理によって制御されます。新しいオブジェクトストアを作成すると、デフォルトの管理者用認証情報一式が作成されます。作成したオブジェクトストア用に別の認証情報を作成したり、アプリケーションで使用するために認証情報をエクスポートしたりできます。

オブジェクトストアの認証情報の一覧表示

civo objectstore credential ls を実行すると、アカウント内のすべてのオブジェクトストア認証情報を一覧表示できます。

$ civo objectstore credential ls

+----------------------+----------------------+--------+
| Name                 | Access Key           | Status |
+----------------------+----------------------+--------+
| cli-demo-xazd-7de9b2 | 3W-X-Y-X-Y-X-Y-X-Y-X | ready  |
| cli-demo-fa5d-fe8d50 | QW-X-Y-X-Y-X-Y-X-Y-N | ready  |
+----------------------+----------------------+--------+
オブジェクトストアの認証情報の作成

認証情報名をパラメーターとして指定し、civo objectstore credential create を実行すると、オブジェクトストアの認証情報を作成できます。----access-key フラグと --secret-key フラグを使用して、アクセスキーとシークレットアクセスキーをそれぞれ指定することもできます。フラグを指定しない場合は、両方のキーが自動的に生成されます。

$ civo objectstore credential create cli-demo-credential --access-key=YOUR_ACCESS_KEY --secret-key=YOUR_SECRET_KEY
Creating Object Store Credential cli-demo-credential in LON1
認証情報のエクスポート

認証情報のアクセスキーを指定して civo objectstore credential export を実行すると、認証情報をエクスポートできます。エクスポート形式として env と s3cfg の2種類をサポートしています。認証情報のエクスポート形式の詳細については、civo objectstore credential export --help で表示されるヘルプテキストを参照してください。

--format フラグを指定しない場合、デフォルトでは env 形式にエクスポートされます。

$ civo objectstore credential export --access-key=YOUR_ACCESS_KEY

# Tip: You can redirect output with (>> ~/.zshrc) to add these to Zsh's startup automatically
export AWS_ACCESS_KEY_ID=YOUR_ACCESS_KEY
export AWS_SECRET_ACCESS_KEY=YOUR_SECRET_KEY
export AWS_DEFAULT_REGION=LON1
export AWS_HOST=https://objectstore.lon1.civo.com
オブジェクトストアの認証情報の削除

認証情報名をパラメーターとして指定し、civo objectstore credential delete を実行すると、オブジェクトストアの認証情報を削除できます。

$ civo objectstore credential delete cli-demo-fa5d-7de9b2

Warning: Are you sure you want to delete the cli-demo-fa5d-7de9b2 Object Store Credential (y/N) ? y
The Object Store Credential (cli-demo-fa5d-7de9b2) has been deleted

ディスクイメージ

Civo CLI では、diskimage コマンドを使ってディスクイメージを包括的に管理できます。この機能を使用すると、Civo アカウント内のディスクイメージの一覧表示、作成、詳細表示、削除ができます。

ディスクイメージの一覧表示
civo diskimage ls [--custom]

利用可能なすべてのディスクイメージを一覧表示します。--custom フラグを使用すると、一覧にカスタムイメージのみを表示できます。

利用可能な出力フィールド:

  • id
  • name
  • version
  • state
  • distribution

カスタム形式の出力例:

civo diskimage ls -o=custom -f=id,name
ディスクイメージの作成
civo diskimage create --name NAME --distribution DISTRO --version VERSION --path PATH [--os TYPE] [--logo_path LOGO]

必須フラグ:

  • --name, -n:ディスクイメージの名前
  • --distribution, -d:ディストリビューション名(例:ubuntu、centos)
  • --version, -v:ディストリビューションのバージョン
  • --path, -p:ディスクイメージファイルへのパス

任意のフラグ:

  • --os, -t:オペレーティングシステムの種類(linux/windows、デフォルトは linux)
  • --logo_path, -l:SVG ロゴファイルへのパス

要件:

  • ディスクイメージは .raw または .qcow2 形式である必要があります
  • ロゴは SVG 形式である必要があります
ディスクイメージの詳細表示
civo diskimage show ID/NAME

ID または名前を指定してディスクイメージを検索し、詳細を表示します。

ディスクイメージの削除
civo diskimage delete ID/NAME

アカウントからディスクイメージを削除します。

**注:**すべてのディスクイメージ操作は、現在選択されているリージョンに従います。

クォータ

Civo に登録したすべてのお客様には、アカウントにデフォルトのクォータが適用されます。クォータは料金や支払いとは関係なく、同時に使用できるリソース量の上限を定めるものです。civo quota show を実行すると、いつでもクォータの状況を確認できます。執筆時点での現在のクォータ使用状況は次のとおりです。

$ civo quota show
+------------------+-------+-------+
| Item             | Usage | Limit |
+------------------+-------+-------+
| Instances        | 4     | 16    |
| CPU cores        | 5     | 16    |
| RAM MB           | 7168  | 32768 |
| Disk GB          | 150   | 400   |
| Volumes          | 4     | 16    |
| Snapshots        | 1     | 48    |
| Public IPs       | 4     | 16    |
| Subnets          | 1     | 10    |
| Private networks | 1     | 10    |
| Firewalls        | 1     | 16    |
| Firewall rules   | 1     | 160   |
+------------------+-------+-------+
Any items in red are at least 80% of your limit

クォータの増加が正当な理由で必要な場合は、クォータページにアクセスして申請してください。増加を不当に拒否することはありません。これは、プラットフォームの成長速度を管理し、API を使用する臨時のスクリプトが利用可能なリソースを突然使い果たさないようにするために設けられています。

サイズ

Civo インスタンスには、ニーズや予算に応じてさまざまなサイズがあります。civo sizes list を実行すると、利用可能なインスタンスのサイズの詳細を取得できます。次のような結果が表示されますが、内容は選択したリージョンによって異なります。

$ civo sizes list
+--------------------+--------------------------------+------------+-----+---------+-----+
| Name               | Description                    | Type       | CPU | RAM     | SSD |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.xsmall          | Extra Small                    | Instance   |   1 |    1024 |  25 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.small           | Small                          | Instance   |   1 |    2048 |  25 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.medium          | Medium                         | Instance   |   2 |    4096 |  50 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.large           | Large                          | Instance   |   4 |    8192 | 100 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.xlarge          | Extra Large                    | Instance   |   6 |   16384 | 150 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.2xlarge         | 2X Large                       | Instance   |   8 |   32768 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.kube.xsmall    | Extra Small - Standard         | Kubernetes |   1 |    1024 |  30 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.kube.small     | Small - Standard               | Kubernetes |   1 |    2048 |  40 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.kube.medium    | Medium - Standard              | Kubernetes |   2 |    4096 |  50 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.kube.large     | Large - Standard               | Kubernetes |   4 |    8192 |  60 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4p.kube.small     | Small - Performance            | Kubernetes |   4 |   16384 |  60 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4p.kube.medium    | Medium - Performance           | Kubernetes |   8 |   32768 |  80 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4p.kube.large     | Large - Performance            | Kubernetes |  16 |   65536 | 120 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4p.kube.xlarge    | Extra Large - Performance      | Kubernetes |  32 |  131072 | 180 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4c.kube.small     | Small - CPU optimized          | Kubernetes |   8 |   16384 |  60 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4c.kube.medium    | Medium - CPU optimized         | Kubernetes |  16 |   32768 |  80 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4c.kube.large     | Large - CPU optimized          | Kubernetes |  32 |   65536 | 120 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4c.kube.xlarge    | Extra Large - CPU optimized    | Kubernetes |  64 |  131072 | 180 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4m.kube.small     | Small - RAM optimized          | Kubernetes |   2 |   16384 |  60 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4m.kube.medium    | Medium - RAM optimized         | Kubernetes |   4 |   32768 |  80 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4m.kube.large     | Large - RAM optimized          | Kubernetes |   8 |   65536 | 120 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4m.kube.xlarge    | Extra Large - RAM optimized    | Kubernetes |  16 |  131072 | 180 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.db.xsmall       | Extra Small                    | Database   |   1 |    2048 |  20 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.db.small        | Small                          | Database   |   2 |    4096 |  40 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.db.medium       | Medium                         | Database   |   4 |    8192 |  80 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.db.large        | Large                          | Database   |   6 |   16384 | 160 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.db.xlarge       | Extra Large                    | Database   |   8 |   32768 | 320 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.db.2xlarge      | Double Extra Large             | Database   |  10 |   65536 | 640 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.kf.small        | Small - CPU optimized          | KfCluster  |   4 |   16384 |  60 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.kf.medium       | Medium - CPU optimized         | KfCluster  |   8 |   32768 |  80 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.kf.large        | Large - CPU optimized          | KfCluster  |  16 |   65536 | 120 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g3.kf.xlarge       | Extra Large - CPU optimized    | KfCluster  |  32 |  131072 | 180 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.xsmall         | xSmall - Standard              | Instance   |   1 |    1024 |  25 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.small          | Small - Standard               | Instance   |   1 |    2048 |  25 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.medium         | Medium - Standard              | Instance   |   2 |    4096 |  50 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.large          | Large - Standard               | Instance   |   4 |    8192 | 100 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.xlarge         | Extra Large - Standard         | Instance   |   6 |   16384 | 150 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.2xlarge        | 2X Large - Standard            | Instance   |   8 |   32768 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.kube.small     | Small - Nvidia A100 80GB       | Kubernetes |  12 |  131072 | 100 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.kube.medium    | Medium - Nvidia A100 80GB      | Kubernetes |  24 |  262144 | 100 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.kube.large     | Large - Nvidia A100 80GB       | Kubernetes |  48 |  524288 | 100 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.kube.xlarge    | Extra Large - Nvidia A100 80GB | Kubernetes |  96 | 1048576 | 100 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.small          | Small - Nvidia A100 80GB       | Instance   |  12 |  131072 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.medium         | Medium - Nvidia A100 80GB      | Instance   |  24 |  262144 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.large          | Large - Nvidia A100 80GB       | Instance   |  48 |  524288 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.xlarge         | Extra Large - Nvidia A100 80GB | Instance   |  96 | 1048576 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.40.small       | Small - Nvidia A100 40GB       | Instance   |   8 |   65536 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.40.medium      | Medium - Nvidia A100 40GB      | Instance   |  16 |  131072 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.40.large       | Large - Nvidia A100 40GB       | Instance   |  32 |  262133 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.40.xlarge      | Extra Large - Nvidia A100 40GB | Instance   |  64 |  524288 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.40.kube.small  | Small - Nvidia A100 40GB       | Kubernetes |   8 |   65536 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.40.kube.medium | Medium - Nvidia A100 40GB      | Kubernetes |  16 |  131072 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.40.kube.large  | Large - Nvidia A100 40GB       | Kubernetes |  32 |  262133 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.40.kube.xlarge | Extra Large - Nvidia A100 40GB | Kubernetes |  64 |  524288 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| an.g1.l40s.x1      | Small - Nvidia L40S 40GB       | Instance   |  12 |  131072 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| an.g1.l40s.x2      | Medium - Nvidia L40S 40GB      | Instance   |  24 |  262133 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| an.g1.l40s.x4      | Large - Nvidia L40S 40GB       | Instance   |  48 |  524288 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| an.g1.l40s.x8      | Extra Large - Nvidia L40S 40GB | Instance   |  96 | 1048576 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| an.g1.l40s.kube.x1 | Small - Nvidia L40S 40GB       | Kubernetes |  12 |  131072 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| an.g1.l40s.kube.x2 | Medium - Nvidia L40S 40GB      | Kubernetes |  24 |  262133 | 200 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| an.g1.l40s.kube.x4 | Large - Nvidia L40S 40GB       | Kubernetes |  48 |  524288 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| an.g1.l40s.kube.x8 | Extra Large - Nvidia L40S 40GB | Kubernetes |  96 | 1048576 | 400 |
+--------------------+--------------------------------+------------+-----+---------+-----+

インスタンスの種類の名前を忘れた場合、このコマンドで確認できます。CLI ツールでインスタンスを作成する際は、インスタンスのサイズ名を指定する必要があります。

また、--filter を使用すると種類で結果を絞り込めます。指定可能なオプションは instance と kubernetes です。例:

$ civo sizes list --filter kubernetes
+--------------------+--------------------------------+------------+-----+---------+-----+
| Name               | Description                    | Type       | CPU | RAM     | SSD |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.kube.xsmall    | Extra Small - Standard         | Kubernetes |   1 |    1024 |  30 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.kube.small     | Small - Standard               | Kubernetes |   1 |    2048 |  40 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.kube.medium    | Medium - Standard              | Kubernetes |   2 |    4096 |  50 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4s.kube.large     | Large - Standard               | Kubernetes |   4 |    8192 |  60 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4p.kube.small     | Small - Performance            | Kubernetes |   4 |   16384 |  60 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4p.kube.medium    | Medium - Performance           | Kubernetes |   8 |   32768 |  80 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4p.kube.large     | Large - Performance            | Kubernetes |  16 |   65536 | 120 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4p.kube.xlarge    | Extra Large - Performance      | Kubernetes |  32 |  131072 | 180 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4c.kube.small     | Small - CPU optimized          | Kubernetes |   8 |   16384 |  60 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4c.kube.medium    | Medium - CPU optimized         | Kubernetes |  16 |   32768 |  80 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4c.kube.large     | Large - CPU optimized          | Kubernetes |  32 |   65536 | 120 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4c.kube.xlarge    | Extra Large - CPU optimized    | Kubernetes |  64 |  131072 | 180 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4m.kube.small     | Small - RAM optimized          | Kubernetes |   2 |   16384 |  60 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4m.kube.medium    | Medium - RAM optimized         | Kubernetes |   4 |   32768 |  80 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4m.kube.large     | Large - RAM optimized          | Kubernetes |   8 |   65536 | 120 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4m.kube.xlarge    | Extra Large - RAM optimized    | Kubernetes |  16 |  131072 | 180 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.kube.small     | Small - Nvidia A100 80GB       | Kubernetes |  12 |  131072 | 100 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.kube.medium    | Medium - Nvidia A100 80GB      | Kubernetes |  24 |  262144 | 100 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.kube.large     | Large - Nvidia A100 80GB       | Kubernetes |  48 |  524288 | 100 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.kube.xlarge    | Extra Large - Nvidia A100 80GB | Kubernetes |  96 | 1048576 | 100 |
+--------------------+--------------------------------+------------+-----+---------+-----+
| g4g.40.kube.small  | Small - Nvidia A100 40GB       | Kubernetes |   8 |   65536 | 200 |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4g.40.kube.medium | Medium - Nvidia A100 40GB      | Kubernetes |  16 |  131072 | 400 |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4g.40.kube.large  | Large - Nvidia A100 40GB       | Kubernetes |  32 |  262133 | 400 |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| g4g.40.kube.xlarge | Extra Large - Nvidia A100 40GB | Kubernetes |  64 |  524288 | 400 |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| an.g1.l40s.kube.x1 | Small - Nvidia L40S 40GB       | Kubernetes |  12 |  131072 |  200 |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| an.g1.l40s.kube.x2 | Medium - Nvidia L40S 40GB      | Kubernetes |  24 |  262133 |  200 |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| an.g1.l40s.kube.x4 | Large - Nvidia L40S 40GB       | Kubernetes |  48 |  524288 |  400 |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+
| an.g1.l40s.kube.x8 | Extra Large - Nvidia L40S 40GB | Kubernetes |  96 | 1048576 |  400 |
+--------------------+--------------------------------+------------+-----------+---------+--------+------------+

SSH キー

はじめに

クラウドインスタンスへのログインに使用するアカウントの SSH キーを管理するために、Civo CLI ツールでは次のコマンドを利用できます。適切な SSH キーをまだお持ちでない場合は、状況に応じて新しいキーを生成してください。

新しい SSH キーのアップロード

Civo に新しいキーをアップロードするには、公開 SSH キーへのパスが必要です。使用方法は次のとおりです:civo ssh create NAME --key /path/to/FILENAME

SSH キーの一覧表示

civo ssh list を実行すると、現在のアカウント所有者に登録されている SSH キーを一覧表示できます。

$ civo sshkeys ls
+--------------------------------------+------------------+----------------------------------------------------+
| ID                                   | Name             | Fingerprint                                        |
+--------------------------------------+------------------+----------------------------------------------------+
| 8aa45fea-a395-471c-93a6-27485a8429f3 | civo_cli_demo    | SHA256:[Unique SSH Fingerprint]                    |
+--------------------------------------+------------------+----------------------------------------------------+
SSH キーの削除

ID を指定して remove を呼び出すと、SSH キーを削除できます。

$ civo ssh remove 531d0998-4152-410a-af20-0cccb1c7c73b
Removed SSH key cli-demo with ID 531d0998-4152-410a-af20-0cccb1c7c73b

ディスクイメージ

はじめに

Civo インスタンスはディスクイメージから構築されます。現在、centos、debian、ubuntu がサポートされています。インスタンスを作成するには、ディスクイメージ ID が必要です。これは civo diskimage ls を実行すると確認できます。

利用可能なディスクイメージの一覧表示
$ civo diskimage ls
+--------------------------------------+-----------------+----------------+-----------+--------------+
| ID                                   | Name            | Version        | State     | Distribution |
+--------------------------------------+-----------------+----------------+-----------+--------------+
| 21613daa-a66b-44fc-87f5-b6db566d8f91 | ubuntu-cuda11-8 | 22.04-cuda11-8 | available | ubuntu       |
+--------------------------------------+-----------------+----------------+-----------+--------------+
| a4204155-a876-43fa-b4d6-ea2af8774560 | debian-10       |             10 | available | debian       |
+--------------------------------------+-----------------+----------------+-----------+--------------+
| eda67ea0-4282-4945-9b7b-d3e1cba1d987 | ubuntu-jammy    |          22.04 | available | ubuntu       |
+--------------------------------------+-----------------+----------------+-----------+--------------+
| d927ad2f-5073-4ed6-b2eb-b8e61aef29a8 | ubuntu-focal    |          20.04 | available | ubuntu       |
+--------------------------------------+-----------------+----------------+-----------+--------------+
| 13232803-0928-4634-9ab8-476bff29ef1b | ubuntu-cuda12-2 | 22.04-cuda12-2 | available | ubuntu       |
+--------------------------------------+-----------------+----------------+-----------+--------------+
| ffb6fd93-cb06-4e8d-8058-46003b78e2ff | talos-v1.2.8    | 1.25.5         | available | talos        |
+--------------------------------------+-----------------+----------------+-----------+--------------+
| 9a16a77e-1a1f-45c8-87fd-6d1a19eeaac9 | talos-v1.5.0    | 1.27.0         | available | talos        |
+--------------------------------------+-----------------+----------------+-----------+--------------+
| 25fbbd96-d5ec-4d08-9c75-a5e154dabf9b | debian-11       |             11 | available | debian       |
+--------------------------------------+-----------------+----------------+-----------+--------------+
| 170db96f-8458-44aa-83ca-0c31fb81a835 | rocky-9-1       |            9.1 | available | rocky        |
+--------------------------------------+-----------------+----------------+-----------+--------------+
| 9b661c46-ac4f-46e1-9f3d-aaacde9b4fec | debian-9        |              9 | available | debian       |
+--------------------------------------+-----------------+----------------+-----------+--------------+

ボリューム

はじめに

ボリュームは、インスタンス向けのサイズを柔軟に変更できる追加ストレージです。ボリュームを作成してインスタンスに関連付けると、バックアップやデータベースファイルに利用できる追加の仮想ディスクが提供され、別のインスタンスに移動することもできます。

Kubernetes クラスターのボリュームは、事前に作成する必要はありません。PersistentVolume と PersistentVolumeClaim のクラスターオブジェクトを作成すると、アカウントにボリュームが作成されます。

ボリュームはアカウントのクォータを消費するため、クォータの上限までしか作成できません。クォータシステムの詳細については、クォータをご覧ください。

ボリュームの作成

civo volume create NAME SIZE(GB) を実行すると、新しいボリュームを作成できます。

Options:
  -h, --help             help for create
  -t, --network string   The network name/ID where the volume will be created (default "default")
  -s, --size-gb int      The new size in GB (required)
$ civo volume create CLI-demo-volume -s 25
Created a volume called CLI-demo-volume with ID 59076ec8-edba-4071-80d0-e9cfcce37b12
インスタンスへのボリュームのアタッチ

ボリュームをインスタンスにマウント(アタッチ)すると、そのインスタンスでボリュームをドライブとして使用できるようになります。

$ civo volume attach CLI-demo-volume api-demo.test
The volume called CLI-demo-volume with ID 59076ec8-edba-4071-80d0-e9cfcce37b12 was attached to the instance api-demo.test

新しく作成したボリュームの場合、パーティションを作成し、フォーマットしてマウントする必要があります。詳しくは、こちらの Learn ガイドをご覧ください。 注:ボリュームを一度にアタッチできるインスタンスは 1 つだけです。

インスタンスからのボリュームのデタッチ

ボリュームを別のインスタンスに移動する場合や、使用を終えた場合は、アンマウントしてから civo volume detach volume_id を実行してデタッチできます。

$ civo volume detach CLI-demo-volume
The volume called CLI-demo-volume with ID 59076ec8-edba-4071-80d0-e9cfcce37b12 was detached
ボリュームの一覧表示

civo volume list を使用すると、ボリュームの概要、サイズ、ステータスを確認できます。

$ civo volume ls
+--------------------------------------+------------------------------------------+---------+----------+----------+-------+-------------+-----------+
| ID                                   | Name                                     | Network | Cluster  | Instance | Size  | Mount Point | Status    |
+--------------------------------------+------------------------------------------+---------+----------+----------+-------+-------------+-----------+
| 59076ec8-edba-4071-80d0-e9cfcce37b12 | CLI-demo-volume                          | Default |          |          | 25 GB |             | available |
+--------------------------------------+------------------------------------------+---------+----------+----------+-------+-------------+-----------+

API から報告される場合、一覧には Delivered 列(ボリュームが現在提供しているサイズ。リサイズ中は Size より反映が遅れ、リサイズに失敗した場合はそのまま変わりません)と、Resize 列(直近のリサイズの状態。完了しなかった場合はプラットフォームによる理由も表示)が追加されます。

ボリュームの削除

クォータを解放してアカウントへの請求額を抑えるには、civo volume delete volume_id でボリュームを削除できます。この削除は即時に行われます。

$ civo volume delete CLI-demo-volume
The volume called CLI-demo-volume with ID 59076ec8-edba-4071-80d0-e9cfcce37b12 was deleted

Kubernetes ボリュームのステータスが dangling と表示されている場合は、civo volume delete <VOLUME-NAME> --region <REGION-NAME> を実行して削除すると、クォータを解放し、それ以上の請求を防ぐことができます。

リソーススナップショット

リソーススナップショットを使用すると、リソースのスナップショットを管理できます。

重要


現在、リソーススナップショットに表示されるのはインスタンススナップショットのみです。今後、ほかのリソースタイプもサポートされる予定です。

次のコマンドを使用して、スナップショットの一覧表示、詳細の表示、更新、削除、復元ができます。

# List all resource snapshots
civo resource-snapshot list

# Show details of a specific snapshot
civo resource-snapshot show SNAPSHOT_ID/NAME

# Update a snapshot
civo resource-snapshot update SNAPSHOT_ID/NAME

# Delete a snapshot
civo resource-snapshot delete SNAPSHOT_ID/NAME

# Restore a snapshot
civo resource-snapshot restore SNAPSHOT_ID/NAME

スナップショットの一覧表示でカスタム出力形式に使用できるフィールドは次のとおりです。

  • id
  • name
  • description
  • resource_type
  • created_at
スナップショットのスケジュール

スナップショットのスケジュールを使用すると、リソースのスナップショットの作成と管理を自動化できます。

重要


現在、スナップショットのスケジュールはインスタンススナップショットでのみ使用できます。今後、ほかのリソースタイプもサポートされる予定です。

スケジュールの作成

スナップショットのスケジュールを作成するには、次のコマンドを実行します。

$ civo snapshot schedule create --name SCHEDULE_NAME --cron CRON_EXPRESSION --instance-id="INSTANCE_ID1,INSTANCE_ID2,..." --max-snapshots MAX_SNAPSHOTS [flags]

Flags:
  -d, --description string    Description for the snapshot schedule
  -v, --include-volumes       Include attached volumes in snapshots
スケジュールの一覧表示

利用可能なすべてのスケジュールを表示するには、次のコマンドを実行します。

$ civo snapshot schedule list
スケジュールの詳細表示

特定のスケジュールの詳細を表示するには、次のコマンドを実行します。

$ civo snapshot schedule show SCHEDULE_NAME/ID
スケジュールの更新

スナップショットのスケジュールの詳細を更新するには、次のコマンドを実行します。

$ civo snapshot schedule update SCHEDULE_NAME/ID [flags]

Flags:
  -d, --description string   New description for the snapshot schedule
  -n, --name string          New name for the snapshot schedule
  -p, --paused string        Whether to pause the snapshot schedule (use 'true' or 'false')

例:

$ civo snapshot schedule update my-snapshot --name new-schedule-name --description "Updated schedule description" --paused true
スケジュールの削除

スナップショットのスケジュールを削除するには、次のコマンドを実行します。

$ civo snapshot schedule remove SCHEDULE_NAME/ID

チーム

チームはユーザーをグループ化したもので、各メンバーには1つ以上の権限、つまりロールが割り当てられます。ユーザーはログイン時に使用するチームを選択する必要はなく、操作対象とするアカウントを選択するだけです。利用できる権限は、そのアカウント内のチーム全体でユーザーが持つ権限の合計です。

すべてのチームを一覧表示する

civo teams lsを実行すると、すべてのチームの一覧を取得できます。

$ civo teams ls
+--------------------------------------+------------------+
| ID                                   | Name             |
+--------------------------------------+------------------+
| 39a755c3-87b4-4d7b-9b05-a8dfb8672081 | Support          |
| 3f233c4f-b931-44f2-9417-acf79b7f1a2d | Developers       |
| 5fdff566-a77a-4343-9c41-8ad714ec8593 | Management       |
| ad54-4614-8740-8604216b7ad4          | Technical Staff  |
| d1bc7dd6-2930-4c8d-b9df-0b9b2bfbf68c | Site Reliability |
| e7ec2649-ad54-4614-8740-8604216b7ad4 | Owners           |
+--------------------------------------+------------------+
新しいチームを作成する

アカウントに新しいチームを作成するには、civo teams create <NEW-TEAM-NAME>を実行します。指定した名前で新しいチームが作成されます。

$ civo teams create Community
Created a team called Community with team ID 475a087b-bec8-4a66-ac14-95bc09bd8d1e
チーム名を変更する

チーム名を変更するには、civo teams rename <OLD-TEAM-NAME> <NEW-TEAM-NAME>を実行します。

$ civo teams rename Community Advocacy
The team with ID 475a087b-bec8-4a66-ac14-95bc09bd8d1e was renamed to Advocacy
チームを削除する

チームを削除するには、civo teams delete <TEAM-NAME>を実行します。

$ civo teams delete Advocacy
Warning: Are you sure you want to delete the Advocacy team  (y/N) ? y
The team (Advocacy) has been deleted

権限

チームの各メンバーには、1つ以上の権限、つまりロールが割り当てられます。利用できる権限は、そのアカウント内のチーム全体でメンバーが持つ権限の合計です。

すべての権限を一覧表示する

利用可能なすべての権限を一覧表示するには、civo permissions lsを実行します。

$ civo permissions ls
+-------------------------+----------------------------+------------------------------------------------------------------------------------------------+
| Code                    | Name                       | Description                                                                                    |
+-------------------------+----------------------------+------------------------------------------------------------------------------------------------+
| *.*                     | Owner                      | Can perform any action                                                                         |
| organisation.owner      | Organisation Owner         | Can administer organisation details                                                            |
| billing.*               | Billing Administrator      | Can view/change billing details and see invoices                                               |
| billing.details_viewer  | Billing Details Viewer     | Can view billing details                                                                       |
| billing.invoices_viewer | Billing Invoices Viewer    | Can view invoices                                                                              |
| billing.details_changer | Billing Details Changer    | Can change billing details                                                                     |
| team.*                  | Team Administrator         | Can administer teams and their members                                                         |
| team.viewer             | Team Viewer                | Can view existing teams and their members                                                      |
| team.creater            | Team Creater               | Can create new teams, as well as add/remove team members                                       |
| team.updater            | Team Updater               | Can update team details, as well as add/remove team members                                    |
| team.deleter            | Team Deleter               | Can remove teams (and therefore all team members)                                              |
| kubernetes.*            | Kubernetes Administrator   | Can view/change Kubernetes clusters                                                            |
| kubernetes.viewer       | Kubernetes Viewer          | Can view existing Kubernetes clusters                                                          |
| kubernetes.creater      | Kubernetes Creater         | Can create new Kubernetes clusters                                                             |
| kubernetes.updater      | Kubernetes Updater         | Can make changes to existing Kubernetes clusters, such as scaling or marketplace installations |
| kubernetes.deleter      | Kubernetes Deleter         | Can delete Kubernetes clusters                                                                 |
| firewall.*              | Firewall Administrator     | Can view/change firewalls                                                                      |
| firewall.viewer         | Firewall Viewer            | Can view existing firewalls and their rules                                                    |
| firewall.creater        | Firewall Creater           | Can create new firewalls                                                                       |
| firewall.updater        | Firewall Updater           | Can update existing firewalls and change their rules                                           |
| firewall.deleter        | Firewall Deleter           | Can delete firewalls                                                                           |
| compute.*               | Compute Administrator      | Can view/change Compute instances                                                              |
| compute.viewer          | Compute Viewer             | Can view existing Compute instances                                                            |
| compute.creater         | Compute Creater            | Can create new Compute instances                                                               |
| compute.updater         | Compute Updater            | Can update (e.g. scale, rename) existing Compute instances                                     |
| compute.deleter         | Compute Deleter            | Can delete Compute instances                                                                   |
| loadbalancer.*          | Loadbalancer Administrator | Can view/change Loadbalancers                                                                  |
| loadbalancer.viewer     | Loadbalancer Viewer        | Can view existing Loadbalancers                                                                |
| loadbalancer.creater    | Loadbalancer Creater       | Can create new Loadbalancers                                                                   |
| loadbalancer.updater    | Loadbalancer Updater       | Can update (e.g. scale, rename) existing Loadbalancers                                         |
| loadbalancer.deleter    | Loadbalancer Deleter       | Can delete Loadbalancers                                                                       |
| dns.*                   | DNS Administrator          | Can view/change DNS domain names and records                                                   |
| dns.viewer              | DNS Viewer                 | Can view existing DNS domain names and records                                                 |
| dns.creater             | DNS Creater                | Can create new DNS domain names and records                                                    |
| dns.updater             | DNS Updater                | Can update existing DNS domain names and records                                               |
| dns.deleter             | DNS Deleter                | Can delete DNS domain names and records                                                        |
| network.*               | Network Administrator      | Can view/change networks                                                                       |
| network.viewer          | Network Viewer             | Can view existing networks                                                                     |
| network.creater         | Network Creater            | Can create new networks                                                                        |
| network.updater         | Network Updater            | Can rename existing networks                                                                   |
| network.deleter         | Network Deleter            | Can delete networks                                                                            |
| quota.manager           | Quota Manager              | Can request changes to the account quota                                                       |
| volume.*                | Volume Administrator       | Can view/change volumes                                                                        |
| volume.viewer           | Volume Viewer              | Can view volumes                                                                               |
| volume.creater          | Volume Creater             | Can create new volumes                                                                         |
| volume.updater          | Volume Updater             | Can change existing volumes (e.g. manage attachments)                                          |
| volume.deleter          | Volume Deleter             | Can delete volumes                                                                             |
| sshkey.*                | SSH Keys Administrator     | Can view/change SSH keys                                                                       |
| sshkey.viewer           | SSH Keys Viewer            | Can view existing SSH keys                                                                     |
| sshkey.creater          | SSH Keys Creater           | Can upload new SSH keys                                                                        |
| sshkey.updater          | SSH Keys Updater           | Can change existing SSH keys                                                                   |
| sshkey.deleter          | SSH Keys Deleter           | Can delete SSH keys                                                                            |
| webhook.*               | Webhook Administrator      | Can view/change webhooks                                                                       |
| webhook.viewer          | Webhook Viewer             | Can view existing webhooks                                                                     |
| webhook.creater         | Webhook Creater            | Can create new webhooks                                                                        |
| webhook.updater         | Webhook Updater            | Can change existing webhooks                                                                   |
| webhook.deleter         | Webhook Deleter            | Can delete webhooks                                                                            |
+-------------------------+----------------------------+------------------------------------------------------------------------------------------------+

リージョン

Civo の成長に伴い、インスタンスを利用できるリージョンが増えていきます。civo region lsを実行すると、利用可能なリージョンを一覧表示できます。ブロックストレージ(ボリューム)はリージョンごとに管理されるため、あるリージョンにインスタンスを構成した場合、そのインスタンスにアタッチするボリュームも同じリージョンにある必要があります。

すべてのリージョンを一覧表示する

civo region lsを実行すると、すべてのリージョンの一覧を取得できます。

civo region ls
+--------+--------+----------------+---------+
| Code   | Name   | Country        | Current |
+--------+--------+----------------+---------+
| nyc1   | nyc1   | United States  |         |
+--------+--------+----------------+---------+
| phx1   | phx1   | United States  |         |
+--------+--------+----------------+---------+
| dg-exm | dg-exm | United Kingdom |         |
+--------+--------+----------------+---------+
| fra1   | fra1   | Germany        |         |
+--------+--------+----------------+---------+
| lon1   | lon1   | United Kingdom | <=====  |
+--------+--------+----------------+---------+
リージョンを変更する

リージョンを変更するには、civo region current <REGION-CODE>を実行するだけです。次のようなメッセージが表示されます。

 civo region current NYC1

デフォルトリージョンが(New York 1)NYC1に設定されました

非対話モードでリージョンを使用する

非対話モードでリージョンを設定するには、次のようにコマンドに--region <REGION-CODE>を渡します。

civo kubernetes create production-01 -n 4 --wait --region NYC1

シェルの自動補完を有効にする

civoバイナリはbash、zsh、powershell、fishに対応しており、次のように使用できます。

civo completion [bash|zsh|powershell|fish]

シェルで補完スクリプトを読み込むと、civoの自動補完が有効になります。

ただし、補完スクリプトはbash-completionに依存するため、まずこのソフトウェアをインストールする必要があります(type _init_completionを実行すると、bash-completionがすでにインストールされているか確認できます)。

bash-completionをインストールする

bash-completionは多くのパッケージマネージャーから提供されています(こちらを参照)。apt-get install bash-completionやyum install bash-completionなどでインストールできます。

上記のコマンドを実行すると、bash-completionのメインスクリプトである/usr/share/bash-completion/bash_completionが作成されます。パッケージマネージャーによっては、このファイルを~/.bashrcファイルで手動で読み込む必要があります。

確認するには、シェルを再読み込みしてtype _init_completionを実行します。コマンドが成功すれば準備完了です。そうでない場合は、次の内容を~/.bashrcファイルに追加してください。

source /usr/share/bash-completion/bash_completion

シェルを再読み込みし、type _init_completionを入力してbash-completionが正しくインストールされていることを確認してください。

civoの自動補完を有効にする

すべてのシェルセッションでcivoの補完スクリプトが読み込まれるように設定します。設定方法は2つあります。

  • ~/.bashrcファイルで補完スクリプトを読み込みます。

    echo 'source <(civo completion bash)' >>~/.bashrc
    
  • 補完スクリプトを/etc/bash_completion.dディレクトリに追加します。

    civo completion bash >/etc/bash_completion.d/civo
    

civoにエイリアスを設定している場合は、シェル補完を拡張して、そのエイリアスでも機能するようにできます。

echo 'alias c=civo' >>~/.bashrc
echo 'complete -F __start_civo c' >>~/.bashrc
zsh-completion のインストール

Zsh 用の civo 補完スクリプトは、コマンド civo completion zsh で生成できます。シェルで補完スクリプトを読み込むと、civo の自動補完が有効になります。

すべてのシェルセッションで有効にするには、次の内容を ~/.zshrc ファイルに追加してください。

source <(civo completion zsh)

civo にエイリアスを設定している場合は、そのエイリアスでもシェル補完が機能するように拡張できます。

echo 'alias c=civo' >>~/.zshrc
echo 'complete -F __start_civo c' >>~/.zshrc

シェルを再読み込みすると、civo の自動補完が機能するはずです。

complete:13: command not found: compdef のようなエラーが発生した場合は、次の内容を ~/.zshrc ファイルの先頭に追加してください。

autoload -Uz compinit
compinit

zsh 用の civo 補完コードを起動時に自動読み込みするには、次のコマンドを実行してください。

civo completion zsh > "${fpath[1]}/_civo"

コントリビューション

バグ報告やプルリクエストは、GitHub の https://github.com/civo/cli で歓迎しています。

ライセンス

このコードは、Apache License 2.0 の条件のもとでオープンソースとして公開されています。

すべてのコントリビューターに感謝します ❤

README の画像

コメント