Kubernetes に基づく CICD の実践

Kubernetes に基づく CICD の実践

みなさんこんにちは。開発が大好きな運用エンジニアであり、寝ているときでも自分の醜さで目が覚めることが多いクラウドネイティブ愛好家の Qiao Ke です。

DevOpsとは

過去 10 年間、DevOps はホットな話題となってきました。 10 人の人には 10 個のハムレットが頭の中にあり、10 社の企業には 10 個を超える DevOps の定義があります。おそらく、技術職のキャリアの中で、DevOps の定義を 100 以上聞いたことがあるでしょう。では、DevOps とは一体何でしょうか? Wikipedia によると、DevOps とは、ソフトウェア開発者 (Dev) と IT 運用スタッフ (Ops) 間のコミュニケーションとコラボレーションを重視する文化、運動、または実践です。 「ソフトウェア配信」と「アーキテクチャ変更」のプロセスを自動化することで、ソフトウェアの構築、テスト、リリースをより迅速かつ頻繁に、そしてより信頼性の高いものにすることができます。私の意見では、DevOps は、提供される価値を継続的に改善し、高めるための、ソフトウェア開発ライフサイクル全体にわたる一連のベストプラクティスです。 DevOps を通じて、文化を特定の役割に限定されることなく、開発、保守、運用の間で均等に広めることができます。 DevOps では、一連の手段を使用して高速で安定したエンジニアリング プロセスを実現することを重視し、開発から本番までのサイクル全体を通じてすべてのアイデアがユーザーに継続的に価値をもたらすことができるようにします。これは方法論であり、特定のソフトウェア ツールやソフトウェア ツールの組み合わせを指すものではありません。さまざまなツール ソフトウェアまたはソフトウェアの組み合わせにより、DevOps コンセプト アプローチを実装できます。その本質は、特定のツールのセットではなく、方法論の完全なセットです。これは、ソフトウェア開発に関係する OOP、AOP、IOC (または DI) に似ています。それは理論、プロセス、または方法の抽象化または同義語です。

CICDとは

CICD は DevOps 文化の実装であり、CICD パイプラインを通じて、アプリケーションがコードのチェックイン、テスト、ビルド、デプロイメントから実稼働段階までパイプラインを前進できるようにすることを目的としています。企業が CICD を導入すると、CICD の一部またはすべてを自動化し、配信プロセスを高速化し、通信コストとエラー コストを削減できます。

CI

CI の英語名は Continuous Integration で、中国語では継続的インテグレーションと翻訳されます。 CIでは、開発者は頻繁にトランクにコードを送信します。これらの新しく送信されたコードは、最終的にトランクにマージされる前に、自動テスト フローによってコンパイルおよび検証される必要があります。継続的インテグレーション (CI) は、ソース コードの変更を自動的に検出、プル、ビルドし、(ほとんどの場合) 単体テストするプロセスです。継続的インテグレーションの目的は、開発者が新たに送信した変更が適切であり、コード ベースでの今後の使用に適していることを迅速に確認することです。 CI プロセスの実行と理論的な実践により、新しいコードと元のコードを正しく統合できるかどうかを判断できます。

CD

CD は、Continuous Delivery や Continuous Deployment といった複数の英語名に対応することがあり、以下で紹介します。

継続的デリバリー

CI でのビルドと単体テストおよび統合テストの自動化プロセスが完了すると、継続的デリバリーによって検証済みのコードがリポジトリに自動的にリリースされます。効率的な継続的デリバリー プロセスを実現するには、CI が開発パイプラインに組み込まれていることを確認することが重要です。継続的デリバリーの目標は、本番環境にデプロイする準備が整ったコード ベースを用意することです。継続的デリバリーでは、すべての段階 (コード変更のマージから本番環境対応ビルドの配信まで) にテストの自動化とコード リリースの自動化が含まれます。プロセスの最後に、運用チームはアプリケーションを本番環境に迅速かつ簡単に展開したり、エンドユーザーにリリースしたりできます。

継続的インテグレーション

成熟した CI/CD パイプラインの場合、最終段階は継続的なデプロイメントです。継続的デリバリーの拡張機能 (本番環境対応ビルドをコード リポジトリに自動的に公開する) として、継続的デプロイメントはアプリケーションの本番環境へのリリースを自動化します。継続的デプロイメントとは、すべての変更が自動的に本番環境にデプロイされることを意味します。継続的デリバリーとは、すべての変更を本番環境にデプロイできることを意味しますが、ビジネス上の理由により、デプロイしないことを選択することもできます。継続的デプロイメントを実装する場合は、まず継続的デリバリーを実装する必要があります。継続的デリバリーは、ソフトウェアに対するすべての変更をできるだけ早く本番環境に展開する必要があることを意味するものではありません。つまり、コードの変更はいつでも展開できるということです。継続的デリバリーは機能を指し、継続的デプロイメントは方法を指します。継続的デプロイメントは継続的デリバリーの最高段階です。

CICDとDevOpsの関係

CICD はソフトウェア エンジニアリングの実践方法であり、DevOps は文化です。 CICD は DevOps 文化システムの一部に過ぎませんが、現在の国内の実践から見ると、CICD は最も重要な部分です。

企業はどのように CICD を実装できるでしょうか?

企業にとって、CICD は欠かせない要素であり、クラウド ネイティブの発展に伴い、CICD ツール セットも盛んになっています。

しかし、Jenkins は古くからある CICD ツールとして今でも重要な役割を果たしており、ほとんどの企業は CICD を導入する際に Jenkins の使用を優先するでしょう。

この目的のために、私は Jenkins 実装に基づいた CICD コースを開発しました。このコースでは、完全な CICD を 0 から 1 まで構築できます。コース全体では以下をカバーします。

  • Kubernetesの導入と使用
  • Helm チャートの開発と使用
  • Jenkins パイプラインの開発と共有ライブラリの使用
  • Argocd 継続的デプロイメント
  • Argo がグレースケール版をリリース
  • ......

<<:  シンガポールで仕事を見つけるための重要なスキルとして、IoT、5G、クラウドコンピューティングが挙げられている

>>:  クラウドへの移行時に企業が直面する7つの一般的な課題

推薦する

在庫: 2019 年注目の SaaS スタートアップ 10 社

SaaS リーダーが新機能を追加し、スタートアップ企業が競争に参入するにつれて、SaaS (Soft...

spinservers: 高構成\大帯域幅\安価な米国サーバー、月額 89 ドル、2*e5-2630L v2/64g メモリ/1.6TSSD/30T トラフィック/10Gbps 帯域幅

spinservers の親会社はハードウェアを販売しているため、常に高構成で低価格のアメリカの独立...

[長期更新] 期限切れだがまだ購入可能な「格安 VPS」プロモーションの racknerd のリスト

Racknerd VPS は設立以来、さまざまな VPS プロモーションをリリースしてきました。コス...

ウェブサイトの作成と最適化のための3つの前提条件

私、Ni Yeming を含め、ウェブサイトを構築する前に、なぜウェブサイトを構築したいのかをはっき...

ソフトコンテンツマーケティングの最高の結果、見逃せない小さな詳細

細部が成功と失敗を決定します。ソフトテキストマーケティングで最高の結果を得るにはどうすればよいでしょ...

ウェブサイトを合理的かつ秩序正しく配置する方法

ウェブサイトのポジショニングは、多くのウェブマスターにとって頭痛の種です。良いポジショニングは、ウェ...

ParaScaleがクラウドストレージプラットフォームを立ち上げ、顧客から好意的なフィードバックを受ける

クラウド ストレージは過去 1 年間で大きな注目を集めました。クラウド ストレージという用語は新しい...

ブラックフライデーの草の根ウェブマスターの悪夢

かつて、金曜日は多くの草の根ウェブマスターが心待ちにしていた日であり、毎週の百度アップデートは何千人...

厦門オリンピック金メダリスト林清峰選手のドメイン名が5万元で売却。専門家「ウェブサイトを構築する方が良い」

林青峰のドメイン名を5万で売っている人がいる業界関係者は、スポーツ選手のドメイン名に投資するのは、彼...

ブラジルサーバー: zenlayer、30% オフ、リオデジャネイロ/フォルタレザ データセンター、10Gbps 帯域幅、月額 167 ドルから

Zenlayerは、南米ブラジルに独自のブラジルデータセンターを開設しました。データセンターはブラジ...

なぜ Apple アプリが先に登場し、Android アプリが後から登場したのでしょうか?

Google の Android と Apple の iOS は現在、世界のスマートフォン OS 市...

大物キャスターが生放送室から「脱出」

昨年末の大物キャスターの脱税事件以来、ライブ配信業界の余波は未だ収まっていない。年末にはトップキャス...

Godaddy Web ホスティング 50% オフ + 無料ドメイン名

Godaddy 仮想ホスト半額割引コード: cjcwd50h、ホストの年間支払いを購入するとドメイン...

新しく立ち上げたウェブサイトを最適化する方法

多くの新しいウェブマスターは、オンラインになった後にウェブサイトを最適化する方法を知らず、混乱し、困...

喜び、怒り、悲しみ、幸せを与えてくれた百度に感謝します

この記事はランキングについても、インクルージョンについても触れていません。あくまでも私について、つま...