DevOps

自動テスト、継続的デリバリー、サービス統合と監視、およびSDLCインフラストラクチャーの構築に取り組んでいるソフトウェアエンジニアのためのQ&A

3
プロビジョニングなしでVMプロビジョニングスクリプトをテストする方法
現在、私はテストにお金と多くの時間がかかるという状態にあります... 背景:SoftlayerでVMを展開し、VMの準備ができた後に必要なすべてのソフトウェアをインストールする展開後スクリプト(bash)を使用しています。問題は、このスクリプトをテストできるのは、1つのVMをデプロイすることだけです。現在、スクリプトが完了するまでに約4時間かかります...そのため、変更を加えるたびに、新しいVMを作成し(費用がかかる)、待機する必要があります。スクリプトが壊れているかどうかを確認するための4時間...これは混乱しており、このままでは、先に進むことができなくなります。 このような状況にアプローチし、毎回新しいVMを展開する必要なく、より迅速にプロビジョニングスクリプトをテストできる新しい方法が必要です。 このシナリオで私を助けるためのツールを知っていますか?


4
DevOps関連のコードと構成をコードリポジトリに構築する方法は?
私たちは会社として成長しており、製品が拡大し、DevOps関連の活動と取り組みも成長しています-展開パイプラインやその他のプラグインを使用して、Bambooからより柔軟で構成可能なJenkinsに切り替えました。Ansibleに切り替え、Dockerを社内のあちこちで使い始めました。 これらすべてのものには、ある程度のコーディングまたは構成が必要です-Ansibleスクリプトと構成、Jenkinsグルーヴィーなスクリプト、Dockerfiles、YAML構成。 今のところ、我々はのためのハイレベルのディレクトリに別の「OPS」リポジトリを作成したjenkins、ansible、docker及びother(ひどい名前であるが、現在はすべて「その他」DevOpsチームのためのオートメーションのものがあります)。 私たちのアプローチは正しく感じられず、拡張できない場合がありますが、DevOps関連のコードをコードリポジトリに保持するためのベストプラクティスと推奨事項は何ですか?

1
apt-getのアップグレードまたはインストール中に構成ファイルを自動的に保持する方法は?
apt-get update; apt-get upgrade -yサーバー上で実行すると、次のメッセージが表示されました。 Setting up sudo (1.8.16-0ubuntu1.5) ... Configuration file '/etc/sudoers' ==> Modified (by you or by a script) since installation. ==> Package distributor has shipped an updated version. What would you like to do about it ? Your options are: Y or I : install the package …


1
クラウドの用語「ファイアホース」とは正確には何ですか?
Loggregator System Cloud Foundryのドキュメントの概要からFirehoseの定義を見つけました。 Firehoseは、Cloud FoundryデプロイメントからのすべてのイベントデータをストリーミングするWebSocketエンドポイントです。データストリームには、ログ、すべてのアプリケーションからのHTTPイベントとコンテナーメトリック、およびすべてのCloud Foundryシステムコンポーネントからのメトリックが含まれます。Cloud Controllerなどのシステムコンポーネントからのログはファイアホースに含まれず、通常はrsyslog構成を介してアクセスされます。 Firehoseからのデータには、アプリケーションログの顧客情報などの機密情報が含まれている可能性があるため、適切な権限を持つユーザーのみがFirehoseにアクセスできます。 この用語のルーツはどこにあり、なぜそのように呼ばれているのですか?コンセプトは他のクラウド製品やプラットフォームでも同じですか? この用語を母国語に翻訳すると面白いです。

2
Git&Jenkins:ブランチで最新のグリーンコミットを取得
CI-CDを推進し始めたばかりであり、新しいステップとして、スタックを最新のグリーン開発で数時間に1回更新することを試みます。私はGit / Bitbucketにかなり慣れていないため、Jenkinsが行うチェックアウトで、「最後のコミット」がブランケットステートメントとしてだけでなく、Jenkinsによって緑色にマークされていることを確認する方法を理解できません。 我々は持っているのNotifierのBitbucketのビルド・ステータスのBitbucketは、コミットが私たちのユニットテストを実行した後に緑のあるトラックを行いますので、インストールされたプラグインを。この情報を活用して正しいコミットが選択されていることを確認する方法はありますか?
10 jenkins  git  bitbucket  bcbsn 

5
構成管理ツールは、展開ツールとして使用するのに適切ですか?
質問に対する私の答えの裏側:DevOpsはどのようにしてソフトウェアエスクローの手順を改善するのに役立つのですか?テンシバイには質問がありました: 人形やシェフの上にカピストラーノを必要とするものは何ですか? 私の回答は、ノアギブスの記事「カピストラーノとシェフの両方が必要ですか?」へのリンクを投稿することでした。。個人的には、次のことを行うのが最も適切であるというノアの見解に同意します。 デプロイメントには、Capistranoなどの専門のデプロイメントツールを使用します。 構成管理には、Chefなどの専門の構成管理ツールを使用します。 各タイプのツールがタスクを完了するために使用する基本的なアプローチは非常に異なります。 構成管理ツール -システムの望ましい状態を作成および維持するためのものであり、本質的にべき等です。構成管理ツールの例には、Chef、Puppet、Ansible、PowerShell DSC、Salt Stackなどがあります。 導入ツール - ホスティング環境にソフトウェアのバージョンを配信することに関するもので、複数のマシンでソフトウェアの複数のバージョンを維持し、どのバージョンが「最新」であるかを管理する機能を提供します。これらは本質的に必須です。デプロイメントツールの例には、Capistrano、Octopus Deploy、Deployer、およびCommand.ioがあります。 構成管理ツールはデプロイメントツールの仕事を実行できると思います。ターゲットのソフトウェアバージョンを維持する必要がないため、不変インフラストラクチャの場合は、これらが仕事に最も適したツールです。 質問: Chef、Ansible、Puppetなどの構成管理ツールは、べき等モデルと命令モデルの両方を実行できる程度に成熟していますか?

5
アーティファクトの保存にBitbucket-serverを使用しない理由は何ですか?
私はまったく新しいプロジェクトを立ち上げる会社と協力しており、私たちは何のためにどのツールを使用するかについて話しています。構築されたアーティファクト(この場合はAPK)を保存するためのArtifactoryまたはNexusについて話していましたが、ソフトウェアで使用するのと同じようにBitbucketを使用できない理由を尋ね、インストールと維持に必要なツールの数を減らしました。 私の最初の応答は、「ソースはソースリポジトリに入れられ、アーティファクトはアーティファクトリポジトリに入る」でしたが、それは実際にはなぜか、またはなぜかという答えではありません。実際、グーグルで回る理由もありませんでした。 これに追加:この製品は規制された業界向けです。つまり、構築されたアーティファクトの完全なバージョン管理された監査可能な記録が必要です。これが、私たちがこれを調査している理由の1つです。また、いくつかのコメントで述べたように、ここで追加しますが、Bitbucketは一般公開されていないプライベートGCPにインストールするため、他の人がアクセスする心配はありません。 これへの入力はありますか?それらをBitbucketに保存すると、後で私たちに噛みつくものはありますか?

1
Jenkinsのジョブとパイプラインのテスト
現在、ビルド、テスト、デプロイ、その他の自動化されたアクティビティのためのJenkinsジョブとパイプラインがかなりあります。 新しいジョブを変更または追加するたびに、手動でのみテストします。たとえば、「ハッピーパス」を通過し(ジョブがエラーなしで完了した場合)、ジョブまたはパイプラインが失敗したときにいくつかの否定的なテストケースをテストします。エラーコードと通知。 このアプローチは明らかに信頼性が低く、適切に拡張できません。このプロセスをどのように改善できますか?Jenkinsのジョブとパイプラインがどのように機能するかを確認する場合、テストを自動化する場所はありますか?

3
SREチームにとってスクラムまたはかんばんは本当に便利ですか?
スクラムやかんばんなどのアジャイルプラクティスは、主にソフトウェア開発用に設計されました。 中断および予定外の作業は、ほとんどのSRE(サイト信頼性エンジニアリング)またはDevOpsチームが行うことの重要なコンポーネントです。Jiraのような追跡システムを使用して作業を管理することは常に役立ちますが、スプリントまたはかんばんはSREチームにとって本当に機能しますか? 私が見る制約は: 仕事は本質的に非常に動的であり、優先順位は日々変化します。このため、2週間のスプリント期間は非常に積極的で、不要なオーバーヘッドが追加されます。 待機中の人々は問題に別の側面を追加します。時々、複数のチームメンバーがオンコール/事後のタスクに関与する場合があります。 チームには単一の「製品」がないため、一般的な計画プロセスに身を任せません。 タスク間の重複がないため、毎日のスタンドアップ会議はあまり意味がないかもしれません チームは複数のパートナーチームに関連するタスクに取り組んでいるため、複数のJiraプロジェクトにまたがっている可能性があります。スプリントまたはカンバンボードでは1つのJiraプロジェクトしか許可されないため、すべての作業に対応できない場合があります。 私が話し合った多くのSREから聞いたところによると、スプリント計画はそれらに対してまったく機能していません。コミュニティから、スプリントとかんばんの経験について聞いてみたいと思います。 私もこの質問をscrum.orgで行いました: SREチームはスクラムを効果的に使用できますか?
10 process  sre  agile 

1
EclipseでDockerツールを構成する方法は?
Eclipseプラグイン「Dockerツール」は、Docker Machineのインストール、またはネットワーク接続を想定しているようです。 しかし、Windows 10では、このプラグインが期待するものとは異なるように見えるため、必要な実行可能ファイルを参照できません。また、どうすればローカルネットワークのURLを確認できますか?Docker情報はこれを明らかにしません。

7
DevOpsのアナロジーのフェッチとは何ですか?
一部のプレゼンターは、類似性を使用して特定のテクノロジーを明確にします。たとえば、異なるas-a-Service(aaS)スタックの違いを説明するPizza as a Service 2.0があります。 このピザの類似点の利点は、複数の類似点、つまりランタイム別名ピザと自家製別名レガシーで構成されることです。 あるGoogleの「DevOpsの類推」では、さまざまな画像が表示されますが、非常に目立つものはありません。 「フェッチ」の定義 プレゼンテーションで画像を表示する それについて30秒話す エレベーターピッチの間、ますます多くの人々がDevOpsを理解し、それは彼らによって完全に明らかです。
9 culture 

2
Multibranch Jenkinsビルドで一部のブランチを無効にする方法は?
Jenkinsfileで任意のブランチを実行するためのマルチブランチジョブセットがあります。 マルチブランチパイプラインで実行されているジョブのリストからブランチを削除する場合に考えられるオプションがいくつかあります。 ブランチを削除できます そのブランチのJenkinsfileを削除できます 2番目の解決策は良いですが、コミットしてブランチのgitリポジトリにプッシュする必要があることを除いて、そのブランチが別のブランチにマージされると、Jenkinsfileが吹き飛ばされます。 マルチブランチパイプラインの一部のブランチのみを無効にする最良の方法は何ですか?

2
DevOps導入前のメトリックの課題
TL; DR、開発、特に展開の自動化が変更の失敗率を改善することをどのように証明しますか? 私たちは皆、現在の(主に手動の)手段を使用して、「デプロイメントの失敗」に関するメトリックをキャプチャしようとしています。残念ながら、「失敗」はめったに起こりませんよね?何かがうまくいかないとき、チームは一緒に(通常は英雄的に)問題を修正します(通常はアクセス許可、構成の欠落、ドリルを知っています)。だから...展開がどのように進んだかを尋ねると、答えは「うまくいった」です。 しかし、直感的には、それは良くないことです。2017年の開発状況レポートによると、約31〜45%の「変更失敗率」があります。それは直感的には正しいように聞こえますが、インシデントとして追跡されていますか?いや。通常は検証中にかなり迅速に修正されるためです。実際にデプロイメントをロールバックすることは、はるかにまれです。 したがって、故障率を正確に報告するには規律が必要です。私たちは物事が機能することを望んでおり、それを実現するために必要なことをしているので、そのように報告することに無関心です。 では、開発、特に展開の自動化が変更失敗率を改善することをどのように証明しますか? (PSはこれに「#devops-capability-model」のタグを付けようとしました)
9 metrics 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.