いまやWebアプリの開発やデプロイにおいて、コンテナは欠かせないものになってきました。 コンテナ実行環境にも色々ありますが、その中でも支配的なのがDockerでしょう。 ですがDockerは、その構造上いくつかの問題も抱えています。 今回はDockerと互換性を持ちながらも、よりセキュアに運用できるPo…
背景 本家のruncで実装されているSELinux機能が、Youki (Rustでruncを再実装するOSS)に実装されていないことがわかった。 そこで、SELinux機能をYoukiに導入することになったのだが、SELinux crateが無かったのでRustで再実装することになり、そのプロジェクトにアサインしてもらった。 しかし、SELinuxについて何も知らなかったので、SELiuxについて色々と調べたことをまとめた。 SELinuxとは何か? security-enhanced Linuxの略称。MAC制御を行うことができる。通常のセキュリティに加えてSELinuxを設定することで、システムセキュリティを更に強化できる。 Labelとpolicyを組み合わせたセキュリティ制御が特徴である。process・file・networkなどのobject、process・userなどのsu
公開日 2024/08/14更新日 2024/08/09メンテナンスコスト削減を実現したOpenTelemetryへの挑戦 ~NTTデータに学ぶ、オブザーバビリティの取り組み~ オブザーバビリティの重要性が高まっている現在、その実現に向けたオープンソースプロジェクトであるOpenTelemetryが注目を集めています。一方、OpenTelemetryの具体的な導入事例やOpenTelemetryを用いたオブザーバビリティの取り組みについては、発信されている情報はまだ多くありません。 そんななか、Findy Toolsでは株式会社NTTデータの取り組みに注目。NTTデータでは、クラウドネイティブ環境やマイクロサービスアーキテクチャの採用増加に伴い、システムが複雑に。この課題に対応するため、OpenTelemetry を軸としたオブザーバビリティの実現に積極的に取り組んでいるといいます。 今回
こんにちは。Cacooチームの木村です。以前プルリクを起点に検証環境が自動で構築されるようにしたら すぐにレビューできるようになったのでみんなハッピーになれた話をしたのですが、色々課題があったのでKubernetesのJobを使って改善しましたので紹介します。 この記事はヌーラバー真夏のブログリレー2024の12日目の記事です。 【経緯】プルリク環境は便利 前回の記事では、以下のような経緯からプルリク環境を構築しました。 開発中の機能を試せる検証環境がある 検証環境があると複数人でレビューできて便利 便利すぎてみんなが検証環境のリビジョンを変更したがる プルリクエスト用の環境が構築される仕組みをつくった 複数のプロジェクトが同時進行してても、みんながそれぞれの環境を試せて便利 プルリク環境はチーム内でたいへん好評でした。使い方は非常に簡単で、プルリクエストを作成すると、CIがそのブランチの
技術部の染矢です。研修中にドット絵を作っていたと思えば、いつの間にか技術研修をする側になっていました。なんとまあ、時の流れというのは恐ろしいものでしょうか。 ペパボでは今年から新卒技術研修の一環として「オブザーバビリティ研修」を実施することにしました。ペパボの中では新しい取り組みであるため、オブザーバビリティ研修のみの内容で一記事を執筆することにしました。他の研修内容も含めたまとめ記事も近いうちに公開されることでしょう。 この記事では、オブザーバビリティ研修を新卒技術研修に組み込んだ意図と、研修内容、また研修設計時に考えていたことを紹介します。 オブザーバビリティ研修を取り入れた背景 ペパボの新卒技術研修では複数の技術を学びます。WebアプリケーションフレームワークからWebフロントエンド、インフラ、機械学習など幅広い技術を、実際に手を動かしながら習得します。 昨年までの研修で、次の課題が
はじめに マイクロサービスアーキテクチャの台頭により、サービスメッシュ技術は現代のクラウドネイティブ環境において外せない選択肢の一つとなっています。 その理由は明確です。マイクロサービスに求められる非機能要件の多くは類似しており、これをアプリケーション側で個別に実装すると、開発者やインフラエンジニアの負担が増大するからです。 ここで登場するのがサービスメッシュです。サービスメッシュの採用により、これらの非機能要件をインフラ層で一元管理することが可能となり、アプリケーション開発者とインフラエンジニアの責務を明確に分離できます。つまり、各エンジニアが自身の専門領域にフォーカスできるのです。これは単なる効率化ではなく、イノベーションを加速させるためサービス開発する上での労苦をなくします。 そして、サービスメッシュの世界で圧倒的な存在感を放っているのがIstioです。その包括的な機能と広範な採用で
Too Long; Didn't ReadTaylor Thomas is the Head of Engineering at Cosmonic. He was a core maintainer of Helm for 4 years, and co-creator of Bindle and Krustlet. He is now a contributor to, and maintainer of, CNCF wasmCloud and is helping to bring the Cosmonic distributed application development platform to market. At the Pasadena leg of Kubernetes Community Days (co-located with SCaLE 20x), I had t
はじめに こんにちは。インフラ部のlyluckです。 この記事ではオンプレミスKubernetesクラスター環境のデータがDatadogへ送りきれず欠損した現象と、その解消方法について紹介します。 背景 ピクシブでは2023年からオンプレミスKubernetesクラスターが稼働し始めました。 徐々にクラスター上で稼働するサービスが増えつつあります。今では10ノードほどの規模のクラスター上で10程度のサービスが稼働しており、常に300台ほどのPodが起動しています。 クラスターやクラスター上のリソースの監視にはDatadogを利用していましたが、時間帯によっては監視データが欠損することが問題になりました。 リソースの監視に支障をきたしたり、意図しないアラートのトリガーが発生してしまったりしたため、この問題に対応することになりました。 まとめ クラスターチェックランナーを使ってKubernet
こんにちは、研究開発部Architectグループ ML Platformチームの藤岡です。今回はKubernetes上に負荷試験基盤を構築したので、その取り組みについて紹介しようと思います。 目次 目次 背景 負荷試験基盤の要件 負荷試験ツールの選定 負荷試験基盤のシステム概要 シナリオファイルの管理方法 Kubernetes operator pattern の利用 GitHub Actionsの共通化 Slack通知用のAPIを用意 負荷試験の導入 負荷試験シナリオの詳細 負荷試験の実行 負荷試験の結果 おわりに 背景 研究開発部ではマイクロサービスで開発することが多く、各事業部向けにさまざまなシステムをAPI形式で提供しています。 APIを作成した際には負荷試験を行っており、リリース前にAPIのパフォーマンスを確認しています。 しかし現状では、各々のローカル環境で負荷試験を実施してい
Netflixは2024年7月23日(米国時間)、大規模なデータ/ML(機械学習)ワークフローオーケストレーター「Maestro」のオープンソース化を発表した。 Maestroは、大規模なデータ/MLワークフロー(データパイプラインやMLモデルのトレーニングパイプラインなど)を管理するために設計された、スケーラブルなワークフローオーケストレーターだ。リトライ、キューイング、コンピュートエンジンへの分散など、ワークフローのライフサイクル全体を管理する。 ユーザーは、Dockerイメージ、ノートブック、bashスクリプト、SQL、Pythonなど、さまざまな形式でビジネスロジックをパッケージ化できる。有向非巡回グラフ(DAG)のみをサポートする従来のワークフローオーケストレーターとは異なり、Maestroは巡回グラフ、foreachループ、サブワークフロー、条件分岐など処理を繰り返すような複雑
I've been working on systems administration / engineering / infrastructure development for many years and somehow I've managed to avoid any interaction with Kubernetes. This avoidance wasn't accidental; my work required very tight control of workload placement in physical locations. Over time, I developed a skeptical view of Kubernetes without really having a solid basis for it, other than a vague
As Kubernetes develops and matures, features may be deprecated, removed, or replaced with better ones for the project's overall health. This article outlines some planned changes for the Kubernetes v1.31 release that the release team feels you should be aware of for the continued maintenance of your Kubernetes environment. The information listed below is based on the current status of the v1.31 re
アップグレードは回数をこなさないとうまくいかない 実践!企業におけるAKSアップグレード戦略 Session#3 イオンスマートテクノロジーで実践しているAKSアップグレード戦略 #1/2 イオンスマートテクノロジーで実践しているAKSアップグレード戦略 齋藤光氏:「イオンスマートテクノロジーで実践しているAKSアップグレード戦略」ということで、ここまで真壁さんと吉川さんが話されたことに対してのアンサーソング的な発表になるかと思いますが、よろしくお願いします。 自己紹介ですが、あらためまして齋藤と申します。イオンスマートテクノロジーには2022年の5月に入社して、SREチームの立ち上げみたいなところをやってきています。今回の発表の内容にも関わるんですけど、「Kubernetes」アップグレードに失敗しない漢を目指して日々奮闘中です。 2023年にも登壇をしていて、SRE NEXTとかClo
この記事は、CYBOZU SUMMER BLOG FES '24 (クラウド基盤本部 Stage) DAY 9 の記事です。 こんにちは。DBRE チーム の山下です。 サイボウズではサービスを運用する上で多くのバッチ処理を実行しています。 Kubernetes 基盤を利用するにあたって、バッチ処理によく使われるのが Job だと思います。サイボウズでも多くの Job を活用しています。 そんな Kubernetes の Job ですが、リトライに関して想定と異なる挙動が見つかったためコードリーディング、kind での検証の両面から調査しました。 今回は調査によって得られた Kubernetes の Job のリトライの挙動に関する知見をご紹介します。 Job の概要 まずは簡単に Job について説明します。 Job は単発のジョブを実現するための Kubernetes リソースです。
表を見ると、KubernetesコミュニティのMinikubeとRancher Labs のK3sがGitHubスター数において他よりも倍以上多く、人気のディストリビューションであると思われます。 なお、MicroK8sのサイトでもMicroK8sとK3s、minikubeを比較した結果が公開されています。 ■MicroK8s公式サイト:MicroK8s vs K3s vs minikube 4.実際に構築してみる 今回はMinikube、MicroK8sを構築し、Kubernetesを実際に動かしてみます。 最後にドキュメントベースでの比較ではなく、動かしてみた際の比較を行います。 構築手順 今回はUbuntu上に構築しました。 詳細な構築手順は各公式ドキュメントに記載されているため割愛します。 Minikube Dockerのインストール ユーザーの作成 プロキシ環境下の場合はプロキシ
エーピーコミュニケーションズの吉川俊甫氏が、「がんばらない」AKS(Azure Kubernetes Service)のアップグレード方法について、5つ紹介しました。全2回。 AKSのアップグレード、しんどくない? 吉川俊甫氏(以下、吉川):エーピーコミュニケーションズの吉川です。「『がんばらない』AKSアップグレード方法を考えよう」というセッションをお話ししたいと思います。 正直、テクニカルなところは、もう全部真壁さんがしゃべってしまったので、私は、AKSのアップグレードに苦しんでいるみなさんの気持ちに寄り添うエモーショナルな、エモい感じのお話をしようかなと思っています。よろしくお願いします。 ということで、自己紹介です。吉川と申します。先ほどご紹介があったとおり、株式会社エーピーコミュニケーションズに所属していまして、今は、テクニカルエバンジェリストという職種で仕事をしています。 マイ
Kubernetes(K8s)は、コンテナ化されたアプリケーションのデプロイ、スケーリング、および管理を自動化するオープンソースプラットフォームです。その中心に位置するのがkubeletというコンポーネントで、これは各ノードで動作し、Pod内のコンテナが正しく動作していることを保証します。このコラムでは、Google Cloud Platform(GCP)上で動作するKubernetesのkubeletについて詳しく解説します。 kubeletとは何か?kubeletは、Kubernetesクラスタ内の各ノードで動作するエージェントです。kubeletの主な役割は、PodSpecs(Podの仕様)を取得し、それに基づいてPod内のコンテナが正常に動作していることを確認することです。PodSpecsはさまざまなメカニズムを通じて提供されますが、kubeletはKubernetesによって作成
この記事の概要 本記事では、コンテナ専用OSの1つであるTalos Linuxを使用してKubernetesクラスタを構築します。 個人的に何かしらのコンテナ専用OSを触ってみたいと思い調べてみたところ、Talos Linuxというディストリビューションを見つけ面白そうだと思ったのですが、日本語でまとまっている記事がなさそうだったので記事にしました。 Talos Linuxとは Talos Linuxとは、Kubernetesでの使用に特化したLinuxディストリビューションです。 Kubernetesクラスタを構築する際、Nodeに使用するLinuxのディストリビューションの選択はユーザーに委ねられます。一般的にはUbuntuなどのディストリビューションが使用されることが多い印象ですが、近年ではコンテナを動かすことに特化したLinuxディストリビューション(コンテナ専用OS)が存在し、そ
はじめに こんにちは、Red Hat のコンサルタントの陳です。今回は、Red Hat Developer Sandbox を利用し、GitOps の開発を簡単に試せる手順をご紹介します。より実践的な内容で OpenShift の魅力を感じていただければと思います。 目次 Red Hat Developer Sandbox とは? GitOps とは? このブログで得られるもの リポジトリの紹介 仕組みの紹介 実施手順 おわりに 1. Red Hat Developer Sandboxとは? Red Hat Developer Sandboxは、誰でも無料で手軽にOpenShiftを体験できるクラウドベースの環境です。これを利用することで、インフラの設定や管理に煩わされることなく、すぐにアプリケーションの開発やデプロイを始めることができます。 2. GitOpsとは? GitOps は、G
背景 インストールする CAを作る trust-managerで配布する useDefaultCAs: true 実際にTLSを有効化して通信する TLSを有効化したAPIサーバをデプロイする サーバと通信する CAの更新 CAの保管場所 クラスタ外との通信の暗号化 まとめ 背景 近年、自社データセンター内の通信であっても盗聴を防げるように通信を暗号化することが求められており、うちの家のKubernetesクラスタでもなんとなく通信を暗号化しようかなという気持ちになった。一方、サービスメッシュによるmTLSのような比較的重厚な仕組みを導入するのはあまり前向きになれず、単にクラスタ内で使える証明書をcert-managerから発行して各サービスが扱うことで達成できないか考えた。 cert-managerでself-signedな証明書を作っても、その証明書のsecretにあるca.crtなど
はじめに こんにちは。インフラ部のlyluckです。 この記事ではArgo RolloutsのRolloutがProgressDeadlineExceededによってDegradedになってしまう現象と、その対策について紹介します。 背景 ピクシブではKubernetesクラスタ内の一部のアプリでArgo RolloutsのRolloutを使ってblue-greenデプロイをしています。 Argo Rolloutsとはblue-greenデプロイや、canaryデプロイなどの便利なデプロイ機能をKubernetesに追加してくれるツールです。その中心となるリソースがRolloutです。Podの数を管理するという点でDeploymentと似ていますがデプロイの戦略が選べたり、細かなデプロイステップの制御ができたりします。 Argo Rolloutsをv1.7.1にバージョンアップしたところ、
Multus CNIって? MultusはPodに複数のネットワークインタフェースをアタッチ可能とするCNIプラグインです。Multus自体が複数インタフェースを利用可能なCNIだと勘違いしていましたが、複数のCNIを同時に利用可能とするためのメタCNIプラグインとして稼働するようです。Multus自体、ハイパフォーマンスを要求される通信事業者向けコンテナアプリケーションで、サービス系、管理系のネットワークインターフェースを分離するような目的で使われることが多いようなので、私も通信事業者に務めるエンジニアの端くれとして、Multusのクイックスタートガイドを参考に簡単に動きを確認してみようと思います。 手順概要 準備 MutlusバイナリのインストールとDaemonsetのデプロイ 追加ネットワークインタフェース用CustomResourceDefinition(NetworkAttach
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く