(この記事は、 harpoonの創設者兼CEOであるDominic Holtが共同執筆しています。
Kubernetesは、ソフトウェア、DevOps、クラウドネイティブのエコシステムでスケーラブルで高可用性のコンテナオーケストレーションを確保するためのゲームチェンジャーです。 価値は素晴らしいですが、無料で提供されるわけではありません。 Kubernetes と、それを強化するために必要なすべての基盤となるインフラストラクチャと構成の学習には、多大な労力が費やされます。 自動化されたスケーラビリティ、セキュリティ、およびクラスターのメンテナンスを使用して運用用に構成されたクラスターを稼働させるには、さらに多くの労力がかかります。
結局のところ、Kubernetesには信じられないほどの労力がかかる可能性があり、すべての作業なしですべての価値を得る簡単な方法があるかどうか疑問に思うかもしれません。
この投稿の内容:
銛に会う
harpoon を使用すると、誰でも Kubernetes クラスターをプロビジョニングし、コードや構成を記述することなくソフトウェアをクラウドにデプロイできます。ドラッグアンドドロップインターフェイスで数秒でソフトウェアを稼働させます。 ソフトウェアの監視と更新に関しては、harpoonがリアルタイムで処理して、すべてが完璧に実行されるようにします。 問題が発生した場合は通知され、harpoonはソフトウェアを再デプロイまたはロールバックして、エンドユーザーにシームレスなエクスペリエンスを提供できます。 Harpoonは、キュレーションされた小さなリストだけでなく、あらゆるソフトウェアに対してこれを動的に行います。
クラウドのKubernetesでソフトウェアを実行するには、資格情報を入力して[スタート]ボタンをクリックするだけです。 数分で、運用環境はセキュリティが組み込まれた状態で完全に実行されます。 ソフトウェアの追加は、ソフトウェアを検索して画面にドラッグするのと同じくらい簡単です。 独自のソフトウェアを追加したいですか? 数回クリックするだけでGitHubアカウントに接続し、コードや複雑な構成なしで数秒でビルドおよびデプロイするリポジトリを選択します。
Harpoon を使用すると、ログ記録と監視、クラスターのスケーリング、サービスとイングレスの作成、コードなしで数秒でデータをキャッシュするなど、必要なすべてを実行できます。 harpoonは、DevOpsを誰にとっても達成可能にし、わずかなコストで最大かつ最も技術的に進んだ企業と同じ速度でソフトウェアを顧客に提供することで、競争の場を平準化します。
銛の建築
ハープーンはハイブリッドSaaSモデルで動作し、ハープーンエンタープライズプラットフォームを形成するさまざまなマイクロサービスとコンポーネントをホストするKubernetes自体上で実行されます。 これは、ニルヴァーナへの道をドラッグアンドドロップするときにインターフェースするものです。 ユーザーまたは組織が所有するアカウントにクラウドサービスプロバイダーの認証情報を提供することで、harpoon は terraform を使用して、独自の Kubernetes クラスターを含む、アカウント内の基盤となるすべての仮想インフラストラクチャをプロビジョニングします。 このようにして、すべてのインフラストラクチャとクラスターを完全に制御できます。
完全にプロビジョニングされると、harpoon の UI は、クラスターと通信し、Kubernetes デプロイ、サービス、構成マップ、イングレス、およびその他の主要な構造を作成するために、さまざまな harpoon マイクロサービスにコマンドを送信できます。
クラウドが適していない場合は、基本的にどこにでも展開できる、完全にオンプレミスのエアギャップバージョンの harpoon も提供しています。
なぜ銛?
本番ソフトウェア環境の構築は困難で、時間とコストがかかり、維持するための平均コストは、経験豊富なDevOpsエンジニアの場合は$ 200Kから始まり、大規模なクラスターやチームでは数千万ドルに達することがよくあります。 カスタムスクリプトを作成する代わりにハープーンを使用すると、中小企業では年間数十万ドル、中規模から大規模の企業では年間数百万ドルの人件費を節約できます。
ハープーンを使用すると、チームはわずか数分で最高品質の本番環境の1つを利用できます。 コードを記述せずに、harpoon は安全な環境で本番環境を自動的にセットアップし、YAML や Kubernetes の専門知識がなくてもクラスターを動的に維持できるようにします。 さらに良いことに、銛は使うのが楽しいです。 どの基盤となるテクノロジがソフトウェアをクラウドにデプロイしているかについて心配する必要はありません。 それはうまくいくはずです。 そして、それを機能させるのは簡単なはずです。
なぜハープーンをドッカー拡張機能として実行するのですか?
Docker拡張機能は、ソフトウェアアプリケーションを構築し、日常のワークフローに統合するのに役立ちます。 ハープーンDocker拡張機能を使用すると、ドラッグアンドドロップでデプロイプロセスを簡素化し、アプリケーションをKubernetes環境に直接視覚的にデプロイおよび構成できます。現在、Docker Desktop の harpoon 拡張機能では、次の機能がサポートされています。
- ハープーンをAWSなどのクラウドサービスプロバイダーにリンクし、Kubernetesクラスターと基盤となる仮想インフラストラクチャをデプロイします。
- 単純または複雑なエンタープライズグレードのクラウド展開を、コードや構成スクリプトを記述することなく簡単に実現できます。
- ソースコードリポジトリを接続し、コードなしで自動化されたデプロイパイプラインを数秒でセットアップします。
- リアルタイムの視覚的手がかりでDevOpsチームを強化し、クラウドで実行されているソフトウェアの正常性とステータスを確認します。
- コンテナー イメージを Docker Hub、ソース、またはプライベート コンテナー レジストリからドラッグ アンド ドロップします
- ビジュアルポッド、イングレス、ボリューム、コンフィグマップ、シークレット、ノードを使用して K8s クラスターを管理します。
- サービスメッシュ内のルーティングを、単純なクリックとポート番号だけで動的に操作します。
ハープーンドッカー拡張機能の使用方法
前提条件: Docker Desktop 4.8 以降。
ステップ 1: Docker 拡張機能を有効にする
Docker デスクトップの [設定] タブで Docker 拡張機能を有効にする必要があります。
Docker デスクトップにアクセスして、Docker 拡張機能が有効になっていることを確認します。 [設定]>[拡張機能]>に移動し、[Docker拡張機能を有効にする]チェックボックスをオンにします。
ステップ2:ハープーンドッカー拡張機能をインストールする
harpoon 拡張機能は、Docker Desktop の Extensions Marketplace と Docker Hub で入手できます。 開始するには、拡張機能マーケットプレースで harpoon を検索し、[ インストール] を選択します。
これにより、Docker Hub から最新バージョンの harpoon Docker 拡張機能がダウンロードおよびインストールされます。
ステップ3:銛に登録する
ハープーンを初めて使用する場合は、[登録]ボタンをクリックして登録する必要がある場合があります。 それ以外の場合は、資格情報を使用してログインできます。
ステップ 4: AWS アカウントをリンクする
好きなソフトウェアやKubernetesコンポーネントをドラッグアウトできますが、実際のデプロイを行う場合は、最初にクラウドサービスプロバイダーアカウントをリンクする必要があります。 現時点では、ハープーンはアマゾンウェブサービス(AWS)をサポートしています。 今後、主要なクラウド サービス プロバイダーをすべてサポートする予定です。
AWS 上にソフトウェアをデプロイする場合は、アクセスキー ID とシークレットアクセスキーを harpoon に提供する必要があります。 harpoon は Kubernetes クラスターに加えて AWS に必要なすべてのインフラストラクチャをデプロイしているため、環境を正常にプロビジョニングするには、アカウントへのかなり広範なアクセスが必要です。 キーは、アカウントで Kubernetes を立ち上げ、指定したとおりにクラスターをスケールアップ/スケールダウンするために必要なインフラストラクチャをプロビジョニングするためにのみ使用されます。 私たちは harpoon のセキュリティを非常に真剣に受け止めており、harpoon 自体に広範で階層化されたセキュリティアプローチを使用する以外に、機密データにはディスクレベルとフィールドレベルの暗号化の両方を使用しています。
以下は、クラスターを正常にデプロイするために harpoon が必要とする特定のアクセス許可です。
- アマゾンRDSフィールドアクセス
- IAMFullAccess
- アマゾンEC2フルアクセス
- アマゾンVPCフルアクセス
- アマゾンS3フルアクセス
- AWSキーマネジメントサービスパワーユーザー
ステップ 5: クラスターを開始する
クラウドサービスプロバイダーアカウントをリンクしたら、ワークスペースのクラウド/ノード要素にある[開始]ボタンをクリックするだけです。 それです。 いや本当です! クラウド/ノード要素が黄色に変わり、カウントダウンが表示されます。 エクスペリエンスは多少異なる場合がありますが、クラスターを 6 分以内に起動できることがよくあります。 クラスターが実行されていると、雲が戻り、要素が幸せな青色に輝きます。
ステップ 6: デプロイ
Docker Hub から任意のコンテナー イメージを検索するか、GitHub アカウントをリンクして任意の GitHub リポジトリ (パブリックまたはプライベート) を検索し、ハープーンを使用してデプロイすることができます。 検索結果をワークスペースにドラッグして、ソフトウェアを視覚的に表現できます。
コンテナのデプロイは、「デプロイ」ボタンを押すのと同じくらい簡単です。 Githubコンテナでは、最初にリポジトリを構築する必要があります。 ハープーンがGitHubリポジトリを正常に構築するには、現在、リポジトリにトップレベルのDockerfileが必要ですが、これは業界のベストプラクティスです。 Dockerfileが存在する場合、[ビルド]ボタンをクリックすると、harpoonが自動的にそれを見つけてコンテナイメージをビルドします。 ビルドが成功すると、[デプロイ]ボタンが有効になり、ソフトウェアを直接デプロイできます。
デプロイを作成したら、イングレス、構成マップ、シークレット、永続ボリューム要求など、任意の Kubernetes 要素をアタッチできます。
ヘルプが必要な場合は、ここで詳細情報を見つけることができます: https://docs.harpoon.io/en/latest/usage.html
次のステップ
ハープーン ドッカー拡張機能を使用すると、Kubernetes クラスターのプロビジョニングと管理が容易になります。 ソフトウェアを Kubernetes に視覚的にデプロイし、コードや構成を記述することなく構成できます。 Docker Desktop と直接統合することで、DevOps チームが YAML、ヘルム チャート、または Kubernetes の専門知識がなくても、クラスターを動的に開始して維持することが容易になります。
ハープーンドッカー拡張機能 を自分でチェックしてください!