タグ

ブックマーク / qiita.com/MahoTakara (20)

  • Argo CD の GitOpsを確認してみた - Qiita

    アルゴCDは、アプリケーションがデプロイ先で、目的の状態となるようにデプロイを自動化する。 デプロイするアプリケーションの更新を追跡、Gitコミット時のタグによる特定バージョンのデプロイなども可能である。 アルゴCDは、Kubernetesコントローラとして実装され、アプリケーションの動作を継続的にモニターして、現在状態から目的とする状態へ変えていく、ウェブ画面からの変更ではできず、Gitリポジトリを通じて状態を設定する。 デプロイされたアプリケーションの現状が、目的とする状態から外れることを OutOfSync (同期外) とみなす。 アルゴCDは、目的とする状態と現状の差異を視覚化しレポートする。現状を目的の状態にするために、自動的同期または手動同期の手段を提供する。 自動的同期では、Gitリポジトリでターゲット状態へ加えられた変更は自動的に適用され、指定された環境へ反映される。 次は

    Argo CD の GitOpsを確認してみた - Qiita
  • Dockerの置き換えを目指す ルートレス&デーモンレスの Podman 入門 - Qiita

    このことから、podman は Red Hat がオープンソース・プロジェクトとして、発展途上であると見なされ、dockerコマンドを置き換えるまでに熟成されるには、もう少し時間が必要と考えられる。 (3) OCIに準拠するコンテナイメージの開発、管理、および、コンテナとして実行 Docker Hubに登録されたコンテナを実行すること、podmanでビルドして、レジストリに登録したイメージを、dockerコマンドで実行することも可能であり、互換性に問題はないと見られる。 (4) デーモンレスのコンテナエンジン podman は、Dockerデーモンの様な root で動作するデーモンを必要としない。つまり、podman コマンドだけで、デーモンの助けを必要とせずにコンテナを実行できる。 (5) コンテナはルートレスモードで実行可能 ルートレスのコンテナは、それらを起動したユーザーよりも多く

    Dockerの置き換えを目指す ルートレス&デーモンレスの Podman 入門 - Qiita
  • Node.js Express で HTTPSを利用するパターン - Qiita

    Node.js Expressフレームワークで、HTTPSサーバーを起動する方法の忘備録です。 Express HTTPサーバーを起動するパターン // Expressフレームワーク var express = require('express'); var app = express(); // ルート設定 app.get('/rest', function (req, res) { res.send('Hello World!'); }); // イベント待機 app.listen(3000); Express HTTPSサーバーを起動するパターン 事前準備として、DNS名を取得して証明書を取得しておきます。HTTPSサーバーと通常のHTTPサーバーとの違いは、HTTPSサーバー起動の部分です。 // Expressフレームワーク var express = require('expr

    Node.js Express で HTTPSを利用するパターン - Qiita
  • EKSやGKEで動作確認したマニフェストをIKSで動かした結果 - Qiita

    クラスタの作成 メニューからコンテナーを選択すると、次の画面が表示されるので、「クラスターの作成」をクリックして、進めます。 東京リージョンの3つのデータセンターに、ワーカーノードを1台づつデプロイします。 ワーカーノードは、仮想サーバーの共有型と占有型、そして、物理サーバー(ベアメタル)の3つから選べます。 仮想サーバーのCPUコア数は、最小2コアから、最大56コアまで選択できます。 経験上では仮想サーバーで8コア以上使っても性能を出すためのチューニングが難しいので、8コア超えるワーカーノードが必要なら、ベアメタルがお勧めです。(個人の見解であり、会社を代表していません) ベアメタルの場合は、4コアから28コアまで利用できます。 ここでのコア数は物理的なコア数です。従って、Xeonプロセッサは、1コア=2スレッドですから、4コアの場合は、仮想サーバーのvCPU 8コアと同等になります。

    EKSやGKEで動作確認したマニフェストをIKSで動かした結果 - Qiita
  • AWS初心者だけど、EKSのクラスタを作って、NodePort と ELBアクセス、EBSのPVを確認したよ - Qiita

    AWS初心者だけど、EKSのクラスタを作って、NodePort と ELBアクセス、EBSのPVを確認したよAWSkuberneteseks 自己研鑽で学んだことのメモです。 準備事項 kubectlをインストールする AWS CLIをインストールする aws-iam-authenticator をインストールする キーペアを作成する サービスロールを作成する クラスタVPCを作成する インストールするものから、先に進めていきます。EKSは、日から一番近いオレゴンのリージョンを利用しました。 1.kubectlコマンドのインストール 筆者が試したところ、CNCFからダウンロードした kubectl コマンドでも、利用できたので、特別にビルドされたものではないようです。 https://docs.aws.amazon.com/ja_jp/eks/latest/userguide/confi

    AWS初心者だけど、EKSのクラスタを作って、NodePort と ELBアクセス、EBSのPVを確認したよ - Qiita
  • コンテナでHTTPSを利用するには (自己署名証明書、自営CA、 公的CAなどからの証明書の取得) - Qiita

    KubernetesでHTTPSを利用する方法として、イングレスに証明書をセットすることで、コンテナやポッドの設定を追加せずに、HTTPSを利用できるようになります。 しかし、パフォーマンスやスケールの観点では、イングレスコントローラーに負荷が集中するために、ポッドのレプリカ数を増やしても、思ったように性能が出せないなどの課題に直面することになります。 (IBM Cloudでは ALBと呼ばれています、) そこで、外部のロードバランサーやイングレスにも頼らず、コンテナの中で、TLS暗号を終端して、スケールさせるという方法について、検討する中で、テスト中にサーバー証明書で困ったので、書き残すことにしました。 この記事は、NginxのコンテナでHTTPSでサービスを公開するには、すなわち、TLS暗号を利用する方法のメモです。TLS暗号のためには、証明書が必要で、次の3つの方法で作成することがで

    コンテナでHTTPSを利用するには (自己署名証明書、自営CA、 公的CAなどからの証明書の取得) - Qiita
  • IKS ブロック・ストレージをポッドから利用して検証した結果 - Qiita

    IKSとはIBM Cloud Kubernetes Service の略で、CNCFの認証を取得した Kubernetes サービスです。 この記事は、IKSのポッドからブロック・ストレージを利用方法と、ファイルストレージとの違いの確認したものです。 IKSの永続ストレージ IKSから利用できる永続ストレージは、IBM Cloud IaaS (旧称 SoftLayer) のストレージサービスの一つ エンデュランス ストレージ (Endurance Storage)と パフォーマンス ストレージ (Performance Storage) を利用することができます。 エンデュランス ストレージはストレージ容量に比例して、秒間あたり受け入れる命令数(IOPS)が増加するという容量と性能が比例するタイプのサービスです。 従って、容量を多く確保すれば、それに伴ってアクセス速度の性能が向上します。

    IKS ブロック・ストレージをポッドから利用して検証した結果 - Qiita
  • ラズパイでKubernetesを動かして見たら、驚いた! - Qiita

    ラズパイで、Kubernetesが動くという記事を見つけて、自分でも試して見ました。 HyperiotOSというDockerコンテナエンジンが、プレインストールされたラズパイのOSを使って、簡単にできるかと思ったのですが、結構、苦労したので、記録として残しておきたいと思います。 しかし、苦労に見合う大きな発見があり、最後の部分に書いておきました。 構成 ラズパイ: Raspberry Pi 3 Model B V1.2 x4 ラズパイのOS: HyperiotOS Version 1.7.1 https://blog.hypriot.com/, Docker-CE 17.10 K8s: バージョン 1.8.14 ポッドネットワーク: Flannel 0.9.1 Hyperiot OSのSDカードの作成 HyperiotOSのダウンロードページ で、hypriotos-rpi-v1.7.1.

    ラズパイでKubernetesを動かして見たら、驚いた! - Qiita
  • Kubernetes v1.10 クラスタをVagrantで構築したメモ - Qiita

    自宅のMac上のVagrant環境で、K8s最新版 v1.10(2018年4月15日現在)をマスターノード1台とワーカーノード2台で構築したメモです。 macOSWindows10の両方で動作する様に、自宅環境と会社のネット環境でも利用できる様に、改良を加えました。 k8s v1.10 システム構成 MacやWindwosの上で動かすと言えば、minikube?と思われのですが、そうではなく、格的なK8sクラスタの構成にチャレンジします。 環境を作るためのハードウェアのスペック、ソフトウェアの名前とバージョン、そして、ネットワークについて、以下に書いておきます。 主な実行環境のスペックとバージョン パソコン環境 MacOS: macOS High Sierra 10.13.4 RAM 16GB, 3.4GHz Intel Core i5 Windwos10 RAM 16GB, 3.4G

    Kubernetes v1.10 クラスタをVagrantで構築したメモ - Qiita
  • Kubernetes "サービス"の概要についての自習ノート - Qiita

    この自習ノートは、IBM Cloud に依存しない Kubernetesの機能についての内容にしたいと思います。 k8sのサービスの機能について、個人が自習したノートであって、一部IBMクラウドの実装について言及していますが、特定のクラウドに依存する内容ではありません。 サービスとは Kubernetesのサービスは、論理的なポッドのセットと、それにアクセスするポリシーを定義する抽象的なものです。 これらは、しばしばマイクロサービスとされます。サービスとして接続先になるポッドのセットは、普通、ラベル・セレクターによって判別されます。 サービスの例 コンテナのレジストリに登録されたアプリケーションのコンテナ・イメージmaho/express1:1.0を kubectl で次のファイルを利用して、3つのノードから成るk8sクラスタにデプロイしたとします。 apiVersion: extensi

    Kubernetes "サービス"の概要についての自習ノート - Qiita
  • Kubernetes "ジョブ" についての自習ノート - Qiita

    この投稿は、Kubernetes(以下 k8s)のジョブについて、理解を深めるために、https://kubernetes.io/docs/concepts/workloads/controllers/jobs-run-to-completion/ を読み解いたもので、個人的な補足や、検証を含むものです。 k8sのジョブとは ジョブは1つまたは複数のポッドを作成し、指定された数のポッドが正常に終了することを保証します。 ポッドが正常に完了すると、ジョブは成功完了を管理します。 指定された数の正常な完了に達すると、ジョブ自体は完了です。 ジョブを削除すると、作成したポッドがクリーンアップされます。 簡単なケースでは、確実に1つのポッドを完了して実行するために、1つのジョブ・オブジェクトを作成します。 ジョブ・オブジェクトは、最初のポッドに障害が発生した場合やノードのハードウェア障害やノードの

    Kubernetes "ジョブ" についての自習ノート - Qiita
  • Kubernetes導入にあたり知っておきたいコンテナの基礎知識(要約) - Qiita

    コンテナとKubernetesによって、ITサービス配信の大改革が起きると予測しています。しかし、一方で、従来のシステム設計の考え方や概念に捕らわれると、日経コンピュータ誌の「動かないコンピュータ」題材を提供する様な事になるかもしれません。 その様な不幸な状況を未然に防ぎ、コンテナがもたらす明るい未来へ進める様に、論文、ホワイトペーパー、ウェブ記事などから学んだ原則や考え方を、「知っておきたいコンテナの基礎知識」として要約します。 物流のコンテナ革命とIT業界のコンテナ 物流業界のコンテナとソフトウェア技術のコンテナを対比して、その価値を再確認してみたいと思います。 物流業界のコンテナによる革命 物流の世界のコンテナは、陸上輸送-海上輸送-陸上輸送という流れで革命的な改革を成し遂げ、輸送コストの削減、重労働からの解放、スピードアップを成し遂げました。 現代人の豊かな生活には、コンテナ革命の

    Kubernetes導入にあたり知っておきたいコンテナの基礎知識(要約) - Qiita
  • Kubernetes 作業キューを使った並列ジョブ - Qiita

    k8sのジョブの利用方法で、Queue with Pod Per Work Item (作業項目毎のポッドのキュー) の意味が良く分からないので、リンク先のCoarse Parallel Processing Using a Work Queue を検証して、その意図する処を確かめたメモです。 概要 目的とする処理方式を図にすると、次の様になります。 主題であるバッチ型処理は、右下の赤い四角形で、RabbitMQ からデータを取得して、バッチ・ジョブを実行します。 この図で Depolyment or Replication Controller と表記した箱で、左上がRabbitMQへのデータの投入側になります。そして、真ん中の箱が、RabbitMQのコンテナが動作するポッドです。その上に描いた紫の小さな箱が、RabbitMQを他のデプロイメントやジョブからアクセスできる様にするための

    Kubernetes 作業キューを使った並列ジョブ - Qiita
  • コンテナ・デザイン・パターンの論文要約  - Qiita

    Brendan Burns, David Oppenheimerらの論文「Design patterns for container-based distributed systems」を読んで、コンテナを活用したシステム設計や開発に、とても有用と感じたので、図を中心にした要約にしてみた。 要約内容に誤りや理解不足な部分もあると思うので、原文も参照していただきたい。また、自身の理解のために、論文中に無い図を加えた点、独自の注釈も加えている。 背景 コンテナ化されたソフトウェアコンポーネントから構築されたマイクロサービスアーキテクチャの人気が高まり、分散システム開発においても同様の革命が起っている。 コンテナの境界の壁は、分散システムの基的なオブジェクトの境界に適している。そこで、コンテナを活用して、コードの低レベルの詳細を抽象化し、アプリケーションやアルゴリズムに共通する高レベルのパター

    コンテナ・デザイン・パターンの論文要約  - Qiita
  • Kubernetesを採用するべき12の理由 - Qiita

    これまでKubernetesについてスタディしてきた事を利用価値の観点から12項目にまとめました。思入れによって私見が混じっている部分もあるかもしれませんが根拠のリンクを添えています。 今後、Kubernetes当に素晴らしい次世代のIT基盤に成長していくと思います、 ビジネス面での利点 理由1 頻繁なアプリケーションのリリースを可能にする実行基盤 アプリケーションの自動的なロールアウトとロールバックは、Deploymentsによって、頻繁な新機能リリースや、緊急のバグ修正版入れ替えなどデリケートな作業を自動化して、安全かつ円滑に実行できます。 アプリケーションの番提供中に、新機能提供や不具合修正などの改定版のコンテナを無停止で切り替える機能を提供する。 切替え中のパフォーマンス的な悪影響やアプリケーションの不具合に伴うサービス停止を回避するため、コンテナ入れ替えの戦略を設定できる。

    Kubernetesを採用するべき12の理由 - Qiita
  • Bluemix NLTK,MeCab,Watson API のコンテナのビルド 忘備録 - Qiita

    IBM Watson APIPythonベースの日語の自然言語処理に必要なツールが入った IBMコンテナ(Dockerコンテナ)をビルドして、IBM Bluemix のリポジトリに登録して、再利用できる様にします。 開発環境用のコンテナですから、もちろんコンテナが継続して実行する工夫もします。 Dockerコンテナのビルド環境の構築 目的のDockerコンテナは、自己のPC環境でビルドして、Bluemix のコンテナのリポジトリーに登録していきます。ビルドする環境は Ubuntu LinuxDocker が便利ですから、最初に自己のPC環境に Vagrantで Ubuntu Linux が動作する環境を作ります。 ここでは Vagrant の環境を準備する方法は以下のリンクが参考になると思います。 Vagrant by HashiCorp Qiita Windows + Va

    Bluemix NLTK,MeCab,Watson API のコンテナのビルド 忘備録 - Qiita
  • 今さら人に聞けない Kubernetes とは? - Qiita

    Kubernetesを一言で言うと、自動デプロイ、スケーリング、アプリ・コンテナの運用自動化のために設計されたオープンソースのプラットフォームです。 Kubernetesによって、要求に迅速かつ効率良く対応ができます。 アプリを迅速に予定通りにデプロイする (コンテナをサーバー群へ展開する) 稼働中にアプリをスケールする(稼働中にコンテナ数を変更する) 新機能をシームレスに提供開始する (稼働中にロールアウトする) ハードウェアの利用率を要求に制限する (コンテナで共存させて稼働率を高くする) Kubernetesのゴールは、下記の様なアプリの運用負担を軽減するためのエコシステムのコンポーネントとツールを整備することです。 可搬性: パブリック・クラウド、プライベート・クラウド、ハイブリッド・クラウド、マルチ・クラウド 拡張可能: モジュール化、追加可能、接続可能、構成可能 自動修復: 自

    今さら人に聞けない Kubernetes とは? - Qiita
  • express-session README.md の 翻訳 - Qiita

    GitHub https://github.com/expressjs/session の README.md の日語訳です。 コンテナのクラスタ構成をテストする場合に、重要な要素なので理解のために、記事を作成しました。 インスタレーション これは、npmレジストリで使用可能なNode.jsモジュールです。 インストールは、npm installコマンドを使用して行います。 session(options) express-sessionはoptionsオブジェクト内のこれらのプロパティを受け入れます。 cookie セッションID Cookieの設定オブジェクト。デフォルト値は {path: '/'、httpOnly:true、secure:false、maxAge:null} です。 このオブジェクトで設定できるオプションは次のとおりです。 cookie.domain Domain

    express-session README.md の 翻訳 - Qiita
  • Node.js express で設定できるテンプレート・エンジンのメモ - Qiita

    Node.js の Express のアプリケーション生成プログラムから指定できるテンプレート・エンジンのメモです。 Node.js バージョン 4.x系 の express コマンド $ ndenv version v4.4.7 (set by /home/tkr/express_work2/.node-version) $ express -V 4.13.4 $ express -h Usage: express [options] [dir] Options: -h, --help output usage information -V, --version output the version number -e, --ejs add ejs engine support (defaults to jade) --hbs add handlebars engine support

    Node.js express で設定できるテンプレート・エンジンのメモ - Qiita
  • node.js のバージョン管理ツール ndenv を試した - Qiita

    Ubuntu にバンドルされている Node.js で利用すると、バージョンを自由に選べない。Googleで調べたらndenv という pyenv や rbenv に良く似たツールがあったので使ってみた。 参照サイト GitHub riywo/ndenv https://github.com/riywo/ndenv 作業ディレクトリ 一般ユーザーのホームディレクトリにインストールします。 いろいろ共存です。 tkr@tkr02:~$ ls -la 合計 64 drwxr-xr-x 9 tkr tkr 4096 1月 2 11:17 . drwxr-xr-x 3 root root 4096 1月 2 07:58 .. -rw------- 1 tkr tkr 1903 1月 2 18:15 .bash_history -rw-r--r-- 1 tkr tkr 220 1月 2 07:58

    node.js のバージョン管理ツール ndenv を試した - Qiita
  • 1