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 の一部またはすべてを自動化し、配信プロセスを高速化し、通信コストとエラー コストを削減できます。 CICI の英語名は Continuous Integration で、中国語では継続的インテグレーションと翻訳されます。 CI では、開発者は頻繁にトランクにコードを送信します。これらの新しく送信されたコードは、最終的にトランクにマージされる前に、自動テスト フローによってコンパイルおよび検証される必要があります。継続的インテグレーション (CI) は、ソース コードの変更を自動的に検出、プル、ビルドし、(ほとんどの場合) 単体テストするプロセスです。継続的インテグレーションの目的は、開発者が新たに送信した変更が適切であり、コード ベースでの今後の使用に適していることを迅速に確認することです。 CI プロセスの実行と理論的な実践により、新しいコードと元のコードを正しく統合できるかどうかを判断できます。 CDCD は、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 CRD 詳細解説(カスタムリソース定義)
>>: Kubernetes の制限とリクエストを 1 つの記事で理解する
私の周りの友人たちもどんどんインターネット起業家軍団に加わり、その多くがWeiboマーケティングの機...
在宅勤務に関する情報に私たちが初めて注目したのは、ヤフーの新CEOであるメイヤー氏が、在宅勤務を今後...
SEOという言葉を初めて聞いたのは、2007年2月、先輩が私にこう言った時でした。「一緒にSEOを学...
budgetvm は、十分なトラフィックを備えた openvz ベースの SSD ハード ドライブ ...
科学技術の漸進的な発展に伴い、あらゆる分野の競争、特に企業間の競争はますます激しくなっています。注意...
SEO ウェブマスターにとって、ランキングはウェブサイトへのトラフィックの源です。重要なキーワードの...
最近、多くのウェブマスターが、Baidu が多数のウェブサイトを K-ed したことを発見しました。...
[[240137]] 8月15日、著名なベンチャーキャピタル調査機関であるCB Insightsは、...
私は今年1月からウェブサイト開発に携わっています。主要キーワードのランキングは常に1位で、状況は比較...
bandwagonhost/Banwagong vps、このホスト猫の背景を紹介するつもりはありませ...
現在の SEO の道は少し迷っているようで、人々はとらえどころがないと感じています。たとえば、検索エ...
lisahostは、ロサンゼルスデータセンターに米国デュアルISP IP/米国住宅IP/米国ローカル...
現在、Kubernetes の Pod Horizontal Autoscaler (HPA) ...
2021年「中国国際サービス貿易交易会」が9月2日、国家会議センターで開幕した。今年のCIIEのテー...
10月に最も人気のアプリは何ですか?どの開発会社が資金援助者ですか? App Growing は、ネ...