仮想化通信

日本仮想化技術株式会社の公式エンジニアブログ

Kubernetes

microk8sを触ってみた

ちょっとKubernetesを触りたいときの手段は色々ありますが、microk8sも割と便利なので、簡単な使い方をまとめてみたいと思います。 microk8s.io インストール方法は簡単で、Ubuntuをインストールして sudo snap install microk8s --classic を実行するだけで…

Kubernetes 1.16でYAMLではまる

最近、Kubernetes 1.16を使い始めました。ただ、Kubernetes 1.15まで問題なく動いていたYAMLファイルを使ってPodを作ろうとすると、なんかうまくいかないのでおかしいなと思ったのですが、APIがとうとう削除されたのが原因でした。 github.com ChangeLogをき…

ローカルのDocker Registoryをk3sで構築したKubernetesで利用する方法

ネットワークの都合とか、利用するイメージの都合でDocker Registoryをローカルに構築して使うというシチュエーションがあります。 KubernetesのランタイムとしてDockerを使っている場合は、Dockerのdaemon.jsonにinsecure-registriesを設定する方法があった…

コンテナーでLチカしてみる

今日は誰に役立つかわからないネタです。 Pi-Stopを複数借りることができたので、OSCのラズパイクラスターのデモ用にKubernetes上のPodでアプリを動かすとLEDがピカピカいうのを試してみたいなと思い、試してみることにしました。 用意するもの microSD Rasp…

microk8sでGPUコンテナーを使う環境を整える

先日ブラブラとサイトをみていたら、microk8s + GPUが割と楽しそうだったので試してみました。 ちなみに30分くらいで動かせました。 参考にした情報 https://microk8s.io/docs/ https://ubuntu.com/blog/using-gpgpus-with-kubernetes https://towardsdatasc…

Rancher2のMulti-Cluster Appsを試してみた

Multi-Cluster Apps機能でデプロイしたWordPress Rancher2.2から追加された機能であるMulti-Cluster Appsを試してみました。 これまでのバージョンでは管理下のクラスター「ごと」にアプリケーションカタログ機能を使って、アプリケーションを選んでデプロイ…

k3sをGitLabのCI/CDで使う

GitLabにはCI/CDを実行する機能が標準で搭載されています。 あとはRunnerというものを追加してGitLabと紐づけすることで、CI/CDを実現することができます。 最近のGitLabはKubernetesと連携する機能も標準で搭載されており、関連付けしたKubernetes上でRunne…

Rancher2にrkeでデプロイしたKubernetesノードをインポートして使う

前回、rkeを使ってKubernetesをデプロイしました。 tech.virtualtech.jp というわけで、今回はデプロイしたKubernetesをRancher 2にインポートして使ってみます。 Rancher 2のデプロイとノードのインポート まず、Rancher2を用意します。RancherはDockerがホ…

rkeを今更ながら触ってみた

【2019年9月5日15:00追記】若干修正しました。 【2019年9月5日18:00追記】若干修正しました。 【2019年10月1日19:00追記】/rke/releases/tag/latestがなくなっていたので修正しました。その他、若干修正しました。 これまで、Rancher LabがOSSで開発している…

k3OSを使ってみた

以前、このブログでk3sを取り上げたと思いますが、k3sは何らかのOSの上でk3s Serverもしくはk3s Agentを動かす必要がありました。 それでも十分便利ではあったのですが、その後Rancher Labが新たに「k3OS」というものを発表していたので、そのうち試したいな…

JujuでOpenStackを構築して、その上でKubernetesを動かしてみる

JujuでOpenStackを構築して、その上でKubernetesを動かすことができたのでこちらにまとめてみます。 今回の記事の登場人物は次の通りです。 Ubuntu Juju OpenStack RancherOS Rancher 2.x Kubernetes KubernetesはRancher 2でデプロイすることを想定していま…

話題のk3sを触ってみた

Rancher Labsがまた面白いものを開発していたので、早速k3sを試してみました。 k3s.io 使い方を3行で 対応するアーキテクチャー用のk3sバイナリーをダウンロード k3s server &を実行してちょっと待つ k3s kubectl get noでノードの情報が出てきたら構築完了 …

Kubernetes Ingressを触ってみた

今日はだいぶ前に宿題となっていたKubernetes Ingress機能を使ってみました。 はじめに まず、実際に導入する前に、ここら辺の情報を確認しました。 K8s Ingress(公式) NodePort vs LB vs Ingress Advanced Ingress Configuration JujuでデプロイしたKuberne…

Ubuntu 18.04LTSベースでJuju/MAASを使ってオンプレ環境でKubernetesをデプロイする方法(後編)

後編を進める前に前編を確認してください。 tech.virtualtech.jp Jujuによるアプリケーションのデプロイを実行する前に、JujuとCloud、Model、Charms、Bundleについて理解する必要があります。 詳細はJujuやMAASの公式ドキュメントをご確認いただくとして、…

Kubernetes Podアプリに外部HAProxyでVIPアクセスする

今回はKubernetesのPodでWebサービスを起動した時に、外部HAProxyを使ってVIPでアクセスする方法をまとめたいと思います。 前提条件は次の通りです。 JujuとMAASで構築したKubernetesを想定 nodePortを固定してPodを作成している 外部HAProxyサーバーは固定…

Airshipを試してみた

2018年7月19日の今日は、OpenStackの誕生日だそうです。 Happy Birthday! OpenStackは2010年の今日、米Rackspace HostingとNASAの共同でオープンソースのクラウドソフトウェアを作るプロジェクトであるOpenStackプロジェクトが開始されました。 それから8年…

Kubernetesで永続ストレージを構築するツールのRook 0.8(の開発版)を使う

本ブログで度々話題に上がるRookですが、現在Stableは0.7.1がリリースされており、まもなく大幅に機能強化された0.8がリリースされます。 バージョン0.8では次のページにあるようなダッシュボードが追加されており、別途kubectl createすれば利用可能です。…

Jujuでデプロイするサービスを追加する方法

これまで説明したように、YAMLファイルにデプロイするアプリケーション、サービス同士の繋がり、オプションを設定すれば記述した通りJujuが環境をセットアップしてくれます。Canonicalが提供するUbuntu Jujuは非常に便利なデプロイツールです。 次のYAMLは私…

Spinnakerのパイプラインによる自動デプロイ

前回のエントリでKubernetesクラスタへSpinnakerをデプロイしました。 http://tech.virtualtech.jp/entry/2018/05/23/134107 Spinnakerのパイプラインを使用し、自動デプロイ環境を作成してみます。 筆者: コムシス情報システム株式会社 山本 聡 自動デプロ…

JujuでCalicoを使ったKubernetes環境を構築する(後編)

前編はこちらです。 tech.virtualtech.jp 前編ではKubernetes MasterとWorkerの2台構成の環境を作りました。後編ではまずWorkerノードを増やしてみます。 Jujuでアプリケーションを構築した場合、ノードを追加してスケールするのは簡単にできます。 前編と同…

JujuでCalicoを使ったKubernetes環境を構築する(前編)

KubernetesはPod用のネットワークとしてFlannelを採用されることが多いと思います。 JujuでデプロイできるKubernetesの構成でも、多くのBundleではFlannelが指定されています。 しかしこのFlannel、VXLANやGREなどを利用してL2ネットワークを構築するため、…

Kubernetesと永続ストレージの使い方

Kubernetesは現在、バックエンドエンジンとしてDockerを利用しています。 Podの作成はYAML形式でエディターで書いて、kubectl createコマンドで簡単に作成できます。 作成したPodはkubectl execコマンドを使って、bashシェルなどにログインすれば仮想マシン…

Jujuで構築するKubernetesでGPUを使うには(2)手書き文字解析編

tech.virtualtech.jp 今回は前回構築したKubernetes GPU環境でMNISTを動かしてみます。 MNISTは手書き文字を解析するサンプルプログラムです。 これを実現する方法はいくつかありますが、前回予告した通り、Chainerを使って実行してみます。 Podを作成するに…

KubernetesクラスタへSpinnakerを構築

Kubernetesはコンテナアプリケーションのオーケストレーターです。 yamlによるサービス構築がkubectlコマンドで実行できますが、 さらに自動化されたデプロイ環境が欲しくなってくるのではないでしょうか。 そこで前回構築したKubernetesにContinuous Delive…

KubernetesでPodを作る方法

KubernetesでPodを作る方法は公式のドキュメント「Kubernetes 101」にまとめられていますし、Web検索すると同じような内容のブログ記事やフォーラムのFAQが見つかります。 多くの人がこんな内容のYAMLファイルを書いて、Nginx 1.7.9をデプロイしたはずです。…

JUJU + MAAS を使用したKubernetes構築 + 監視設定

最近当ブログでよく書かれているKubernetes。 そのKubernetesについて、物理サーバを使用した構築を行ってみようと考えました。 今回はJUJU + MAASによるKubernetes(k8s)の構築と、 PrometheusとGrafanaを使用したリソース監視の環境を作成した結果を公開い…

Jujuで構築するKubernetesでGPUを使うには

JujuでKubernetesをデプロイする方法については以前、次のように書きました。 tech.virtualtech.jp では、今回は「Jujuで構築するKubernetesでGPUを使うには」と言う話を書きたいと思います。 と言っても割と簡単で、Kubernetes WorkerノードにNVIDIAのGPUを…

Jujuで構築するKubernetes

最近弊社ではKubernetesの検証を始めています。 Kubernetesは、展開、スケーリング、コンテナー上で動くアプリケーションの管理を自動化するために設計されたオープンソースのプラットフォームです。2014年にKubernetesプロジェクトがGoogle主導のもと始まり…