並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 2979件

新着順 人気順

namespaceの検索結果241 - 280 件 / 2979件

  • Introducing workerd: the Open Source Workers runtime

    Introducing workerd: the Open Source Workers runtime09/27/2022 Today I'm proud to introduce the first beta release of workerd, the JavaScript/Wasm runtime based on the same code that powers Cloudflare Workers. workerd is Open Source under the Apache License version 2.0. workerd shares most of its code with the runtime that powers Cloudflare Workers, but with some changes designed to make it more p

      Introducing workerd: the Open Source Workers runtime
    • Terraformとdriftctlで行うGoogle Cloud 権限管理の省力化 - ZOZO TECH BLOG

      はじめに こんにちは、ML・データ部MLOpsブロックの岡本です。 MLOpsブロックでは日々複数のGoogle Cloudプロジェクトを管理しています。これらのプロジェクトでは、データサイエンティストやプロジェクトマネージャーなど別チームのメンバーが作業することもあり、必要に応じてメンバーのGoogleアカウントへ権限を付与しています。 権限の付与はプロジェクトの管理者であるMLOpsブロックメンバーが行いますが、これは頻繁に発生する作業でありトイルとなっていました。 また権限付与後はこれらを継続的に管理し、定期的に棚卸しすることで不要になった権限を削除する必要があります。しかし当初の運用だと権限の棚卸しの対応コストが大きく、これが実施されずに不要な権限が残り続けるという課題もありました。 本記事ではMLOpsブロックで抱えていたGoogle Cloudプロジェクト内での権限管理における

        Terraformとdriftctlで行うGoogle Cloud 権限管理の省力化 - ZOZO TECH BLOG
      • GCP を用いた高性能かつスケーラブルなオンライン予測システムの構築方法

        Yaboo Oyabu, Machine Learning Specialist, Google Cloud Kazuhiro Yamasaki, Deep Learning Solution Architect, NVIDIA 概要このチュートリアルでは GCP 上で NVIDIA Tesla T4 と TensorRT Inference Server (以降 TRTIS) を用いて高性能なオンライン予測システムを構築する手順と、そのパフォーマンス計測・チューニング方法を説明します。このチュートリアルを完了すると、TensorRT に最適化された機械学習モデルが Cloud Storage に格納されます。また、 オンライン予測と負荷テストを実施するための GKE クラスタが作成されます。 本記事は Google Cloud Next 2019 Tokyo におけるセッション『GCP

          GCP を用いた高性能かつスケーラブルなオンライン予測システムの構築方法
        • Kubernetesにおける秘匿情報の扱い方を考える - inductor's blog

          はじめに KubernetesではWebアプリケーションから業務用のワークフロー(バッチ処理とか)に至るまで様々なアプリケーションを動かすことができるが、現実世界において苦労するポイントの1つは、ワークロードに秘匿情報を渡すための方法である。 例えば、アプリケーションの上でデータベースに接続するために必要なエンドポイントの情報やパスワードなどの認証情報は、アプリケーションのソースコードに直接書くことはご法度だし、コンテナ化する際に内包することも原則タブーである。また環境変数として注入する場合でも、その情報が物理ディスクに残ってしまう場合などを考え最新の注意を払う必要がある。 ここではKubernetes上のワークロードに秘匿情報をできるだけ安全にわたすための方法を運用者・開発者の目線で考える。 Kubernetesが持つ外部情報注入の仕組み Kubernetesの場合、アプリケーションに情

            Kubernetesにおける秘匿情報の扱い方を考える - inductor's blog
          • E2E 自動テストの布教に立ち塞がる5つの壁と打ち込んだ楔

            この記事は、Magic Moment Advent Calendar 2023 19日目の記事です。 こんにちは、 Magic Moment の一人だけ QAE の yano です。 一人だけの QAE が GUI を用いた E2E 自動テスト(以降、自動テストと表記)を書いて運用していくことは、自動テストの新規作成やメンテナンスを行うには限界がありますし、他の QA 活動が進まなくなるという問題が出てきてしまいます。 そこで今回は QAE ではなく開発メンバが主体となって自動テストの運用をできるように仕組みを整える必要がありました。 本記事では自動テストを開発メンバに布教していく際に感じた5つの壁と、壁に対して打ち込んできた楔について書かせていただこうと思います。 1の壁 : 何のための自動テストか分からない ユニットテストはあるけど自動テストはないという現場ですと、漠然と自動テストもあ

              E2E 自動テストの布教に立ち塞がる5つの壁と打ち込んだ楔
            • KubeflowによるMLOps基盤構築から得られた知見と課題 - ZOZO TECH BLOG

              はじめに こんにちは。SRE部MLOpsチームの中山(@civitaspo)です。みなさんはGWをどのように過ごされたでしょうか。私は実家に子どもたちを預けて夫婦でゆっくりする時間にしました。こんなに気軽に実家を頼りにできるのも全国在宅勤務制度のおかげで、実家がある福岡に住めているからです。「この会社に入って良かったなぁ」としみじみとした気持ちでGW明けの絶望と対峙しております。 現在、MLOpsチームでは増加するML案件への対応をスケールさせるため、Kubeflowを使ったMLOps基盤構築を進めています。本記事ではその基盤構築に至る背景とKubeflowの構築方法、および現在分かっている課題を共有します。 目次 はじめに 目次 MLOpsチームを取り巻く状況 MLOps基盤の要件 MLOps基盤技術としてのKubeflow Kubeflowの構築 ドキュメント通りにKubeflowを構

                KubeflowによるMLOps基盤構築から得られた知見と課題 - ZOZO TECH BLOG
              • 部内サーバーに Kubernetes クラスタを立てました - KMC活動ブログ

                はむはー!最近計算機には嬉しい気温になってきました。みなさん計算機はいかがお過ごしですか? 先月 Kubernetes クラスタを部内サーバーに構築したので、その話をします。 きっかけ きっかけは部内 OpenStack クラスタが崩壊したことです。OpenStack かぁ〜立て直すのめんどくさいね〜、って話しているうちに何故か Kubernetes を立てる話が盛り上がり、Kubernetes クラスタを立てることになりました *1。 いろいろ検討 Kubernetes を立てると一言で言っても、 Node の立て方や使うコンポーネント、YAML の管理方法など決めなければいけないことは多岐に渡ります。 まずは要検討事項をまとめた Issue を作りました。 数々の要検討事項 大量です。ここから一つ一つ検討していきました。 Node の立て方 Node を立てる、すなわち kubelet

                  部内サーバーに Kubernetes クラスタを立てました - KMC活動ブログ
                • エラトステネスの篩の活用法を総特集! 〜 高速素因数分解・メビウスの反転公式 〜 - Qiita

                  とても久しぶりです! 1 年ぶりの投稿となりました、大槻 (通称、けんちょん) です。 去年、『AtCoder 版!マスター・オブ・整数』と題して、プログラミングコンテストで出題される整数問題を解くときに有効な考え方を特集する記事を 2 本書きました! AtCoder 版!マスター・オブ・整数 (素因数分解編) AtCoder 版!マスター・オブ・整数 (最大公約数編) 今回はその続編として、素数を列挙するアルゴリズムであるエラトステネスの篩を特集していきます。なお今回の記事の内容は、競プロへの応用を意識していますが、純粋に数学的興味に沿って読み進めることもできるものになっています。下図は、これから紹介するエラトステネスの篩のイメージ図です。 0. はじめに エラトステネスの篩は、$1$ 以上 $N$ 以下の素数をすべて列挙する方法です。たとえば $20$ 以下の素数を列挙すると、$2,

                    エラトステネスの篩の活用法を総特集! 〜 高速素因数分解・メビウスの反転公式 〜 - Qiita
                  • Red Hatのエンジニアが作り始めた新しいVMM「libkrun」 コンテナに特化したミニマリストな実装とは

                    Kernel/VM探検隊はカーネルや仮想マシンなどを代表とした、低レイヤーな話題でワイワイ盛り上がるマニアックな勉強会です。太田氏からは、Red Hatの「libkrun」の概要と仕組みについて発表がありました。 Red Hatが新しく作ったVirtual Machine Monitorの「libkrun」 太田航平氏:これから「10分で完全理解したかったlibkrun」という話をしていきます。よろしくお願いします。 まずちょっと自己紹介をすると、太田と言います。ふだんインターネットではinductorという名前で活動していて、本職は日本ヒューレット・パッカード合同会社という会社で、DockerやKubernetesを使った基盤のアーキテクトをしています。 コミュニティ活動は「Container Runtime Meetup」とか「Cloud Native Days」というカンファレンスの

                      Red Hatのエンジニアが作り始めた新しいVMM「libkrun」 コンテナに特化したミニマリストな実装とは
                    • 令和5年に知っているべきTypeScriptのnamespaceの知識

                      TypeScriptにはnamespaceという構文が存在します。この構文はTypeScript初期からある独自構文の一つですが、現在では特殊な用途以外では使う理由が無いため、よく知らないという方も多いでしょう。 実際、一部のレアケースを除いてnamespaceを使う必要はありませんが、それでも知識としてあったほうが良いことが多少あります。この記事ではこの部分を解説します。 型に.でアクセスできるやつ TypeScriptを使っていると.を使って型にアクセスする機会があるでしょう。例えばReact.FCなどです。 実は、親.型名のように.を使って型にアクセスできるのは、namespaceの機能です。上のコードでのReactは単なる型や単なる変数ではなくnamespaceなのです。 試しに、Foo.BarがstringとなるようにFooを定義してみてください。これができる方法は2つしかありま

                        令和5年に知っているべきTypeScriptのnamespaceの知識
                      • 新しいLinux namespaceである「CPU Namespace」について - inductor's blog

                        はじめに この記事は、以下のlwn.netの記事を抄訳したものです。 lwn.net CPU Namespaceのご紹介 これはCPU namespaceのインターフェスとそのメカニズムを証明するための初期プロトタイプです。 現状におけるCPUリソースの制限方法 Linuxカーネルでは、タスクのCPUリソースを制御するために2つの方法を提供します。 cgroup cpuset: 該当のグループにアタッチされた単一または複数のタスクの集合に対し、CPUリソースを制限するためのメカニズムです。 syscall sched_setaffinity: CPUの集合に対して特定のタスクをピニングするためのシステムコールです(訳注: NUMA利用時の条件下などにおいてよく利用される手法)。 また、カーネルはシステムにおいて利用可能なCPUリソースを閲覧可能にするために3つの方法を提供します。 sys/

                          新しいLinux namespaceである「CPU Namespace」について - inductor's blog
                        • 知っておくと便利なCloudWatchメトリクスの機能と活用事例 - Qiita

                          はじめに AWSでシステムを運用しているとサービスやリソースの状況を確認するためにCloudWatchメトリクスを利用する機会も多いと思います。 今回はCloudWatchメトリクスの情報を閲覧する上で、意外と知られていない便利な機能や活用事例について紹介していきます。 マネージメントコンソールの操作 ・グラフを日本時間で表示できる マネージメントコンソール上でCloudWatchメトリクスを参照する際に、デフォルトのタイムゾーンであるUTCでグラフを表示している場合がありますが、実はタイムゾーンを日本時間に変更する事ができます。 画面上部のCustomをクリックするとポップアップが表示されますが、ポップアップの右上部分にUTCの表示がプルダウンになっており、UTCかLocal time zoneのどちらかを選択できるようになっています。 ここでLocal time zoneを選択してAp

                            知っておくと便利なCloudWatchメトリクスの機能と活用事例 - Qiita
                          • The Linux Kernel Module Programming Guide

                            Peter Jay Salzman, Michael Burian, Ori Pomerantz, Bob Mottram, Jim Huang 1 Introduction 1.1 Authorship 1.2 Acknowledgements 1.3 What Is A Kernel Module? 1.4 Kernel module package 1.5 What Modules are in my Kernel? 1.6 Is there a need to download and compile the kernel? 1.7 Before We Begin 2 Headers 3 Examples 4 Hello World 4.1 The Simplest Module 4.2 Hello and Goodbye 4.3 The __init and __exit Mac

                            • 歴史・年表でみるAWSサービス(Amazon EventBridge編) -機能一覧・概要・アップデートのまとめ・入門、Amazon CloudWatch Eventsとの違い- - NRIネットコムBlog

                              小西秀和です。 「歴史・年表でみるAWS全サービス一覧 -アナウンス日、General Availability(GA)、AWSサービス概要のまとめ-」から始まったAWSサービスを歴史・年表から機能を洗い出してまとめるシリーズの第5弾です(過去、Amazon S3、AWS Systems Manager、Amazon Route 53について書きました)。 今回はAWSサービスのイベント検知、条件に応じた他のAWSサービスへのイベント連携、イベントの生成などをするAmazon EventBridge(旧Amazon CloudWatch Events)について歴史年表を作成してみました。 今回もAmazon EventBridgeの誕生から機能追加やアップデートを追いながら主要機能を現在のAmazon EventBridgeの機能一覧と概要としてまとめています。 これらが、各AWSサービス

                                歴史・年表でみるAWSサービス(Amazon EventBridge編) -機能一覧・概要・アップデートのまとめ・入門、Amazon CloudWatch Eventsとの違い- - NRIネットコムBlog
                              • Kubernetesのmanifestを検証しよう - ANDPAD Tech Blog

                                要約 k8sは、manifestをサービスが動くように設定するのは簡単だが、適切な設定は分かりづらい その結果、いまいちな設定をしてしまいがち kube-scoreはmanifestの問題と対応方法を教えてくれる k8s初心者にこそ、ツールによるmanifestの自動検証はおすすめ 想定読者 Kubernetes(以下、k8s)でとりあえずサービスを動かせるが、雰囲気で触っている人向けです。 k8sの設定は雰囲気で決められがち こんにちは。ANDPADでバックエンドの開発をしているzigeninです。 ANDPADでは、バックエンドのサービスをk8sで動かしています。 k8sを使っていて感じる一番の問題は、manifestで設定できることが多すぎて、良い設定が分かりづらいことです。 そのせいか、k8sに習熟していないと以下のような設定をしがちです*1。 apiVersion: apps/v

                                  Kubernetesのmanifestを検証しよう - ANDPAD Tech Blog
                                • Clean Architecture: Applying with React

                                  This text is part of a series of texts about Clean Architecture analysis applied with different frameworks and languages. The purposes of this text are in line with those of the previous text, which are: I. Show an architectural division of a React application using Clean Architecture; II. Guide the implementation of new features in this proposed architecture. Architectural Division The initial st

                                    Clean Architecture: Applying with React
                                  • kubebuilder v2 で webhook 開発 - 誰かの役に立てばいいブログ

                                    仕事で、データセンターのアーキテクチャを刷新するプロジェクトを進めてます。 Kubernetes を中心としているので、必然的に Kubernetes 上で動作するアプリケーションを開発する機会があります。 Kubernetes は API サーバー (kube-apiserver) にリソースを登録して、他のプログラムは API サーバー上のリソースを監視して動く Hub & Spoke アーキテクチャを特徴としています。 出展:https://kubernetes.io/docs/concepts/architecture/cloud-controller/ Kubernetes の動作をカスタマイズするには、API サーバーの動作に手を入れる必要があります。kube-apiserver はそのための仕組みとして、通常の API に加えて以下を提供しています。 Custom Resou

                                      kubebuilder v2 で webhook 開発 - 誰かの役に立てばいいブログ
                                    • 2024年の今、いかにしてVS2005を捨ててVS2015にする戦いは終わったか、そしてなぜCOMとの苦しい戦いが繰り広げられたか ~再入の悪魔~ - OPTiM TECH BLOG

                                      概要 Optimal BizのWindows AgentはながらくVisual Studio 2005とVisual Studio 2015を併用してビルドする必要がありました。Visual Studio 2015化対応は2012年のVisual Studio 2012化対応からスタートしていましたが、対応範囲の大きさからモジュールごとにVisual Studio 2015化対応を行ってきました。そして2024年リリースのBiz 9.19.0にてVisual Studio 2015化対応は完了を迎えました。 しかし、埋め込まれたバグの修正にはCOMの理解が不可欠であったため、2020年代に突入した今になって私達はこれまで正面戦争を避けてきたCOMを0から学び直す必要がありました。そしてATLの不思議な挙動やSTAにおける再入との戦いを乗り越え、無事にリリースされました。 はじめに Opti

                                        2024年の今、いかにしてVS2005を捨ててVS2015にする戦いは終わったか、そしてなぜCOMとの苦しい戦いが繰り広げられたか ~再入の悪魔~ - OPTiM TECH BLOG
                                      • Kubernetesの負荷試験で絶対に担保したい13のチェックリスト - Enjoy Architecting

                                        概要 ここ最近、Kubernetesクラスタを本番運用するにあたって負荷試験を行ってきました。 Kubernetesクラスタに乗せるアプリケーションの負荷試験は、通常の負荷試験でよく用いられる観点に加えて、クラスタ特有の観点も確認していく必要があります。 適切にクラスタやPodが設定されていない場合、意図しないダウンタイムが発生したり、想定する性能を出すことができません。 そこで私が設計した観点を、汎用的に様々なPJでも応用できるよう整理しました。 一定の負荷、スパイク的な負荷をかけつつ、主に下記の観点を重点的に記載します。 Podの性能 Podのスケーラビリティ クラスタのスケーラビリティ システムとしての可用性 本記事ではこれらの観点のチェックリスト的に使えるものとしてまとめてみます。 確認観点 攻撃ツール 1: ボトルネックになりえないこと Podレベル 2: 想定レイテンシでレスポ

                                          Kubernetesの負荷試験で絶対に担保したい13のチェックリスト - Enjoy Architecting
                                        • Linux Hardening Guide | Madaidan's Insecurities

                                          Last edited: March 19th, 2022 Linux is not a secure operating system. However, there are steps you can take to improve it. This guide aims to explain how to harden Linux as much as possible for security and privacy. This guide attempts to be distribution-agnostic and is not tied to any specific one. DISCLAIMER: Do not attempt to apply anything in this article if you do not know exactly what you ar

                                          • 競プロ実装テクニック - よすぽの日記

                                            これはなに 実装力で戦える! ~競プロにおける実装テクニック14選~ - Qiita に触発された 競技プログラミングでコーディングの際気を付けていること - うさぎ小屋 を強く参考にしている 効果が高い or 一般性がありそう なことから書いたつもり 重要なこと 「競プロのきれいなコードと業務のきれいなコードは違う」と定期的に唱える。未来の自分 or 他の人 が読む必要がないことを仮定できるため、様々なバッドノウハウ(業務)が正当化される。(あえて過激なことを書くと、)「using namespace stdを使わない」などは逆にバッドノウハウ(競プロ)だと思っている。 -fsanitize=undefined,address / -D_GLIBCXX_DEBUG #include <iostream> using namespace std; int main() { int a[10

                                              競プロ実装テクニック - よすぽの日記
                                            • 開発初期に暇を持て余しているUnityエンジニアができる42のTips後編 - 渋谷ほととぎす通信

                                              本記事は、サムザップ Advent Calendar 2019 #1 の12/24の記事です。 ※前編はコチラ ※2020年版のアドベントカレンダー 株式会社サムザップでUnityエンジニアをしているオオバ@ohbashunsukeです。 グラフィックデザイナー、Flashデベロッパーを経て、現在はUnityエンジニアでスマホゲームを作っています。Unity歴は6年くらいです。 今までコマンドバトル、ピンボール、麻雀などを作ってきました。 これから紹介していく内容は、開発初期後回しにされがちな、でも初期にやっておいた方が良いことばかりです。 オオバはUnityエンジニアとしてプロジェクトを進める上で以下の事を重要視しています。 動くものをいち早く作ってメンバーに共有ワークフロー構築、開発手法を整える事が最優先いきなり正解は出ないので、不都合が出てきたら修正していくスタイル修正見直しの数を繰

                                                開発初期に暇を持て余しているUnityエンジニアができる42のTips後編 - 渋谷ほととぎす通信
                                              • サーバレス時代のマルチテナンシーを考える ~ Thinking about multi-tenancy in the serverless era ~ #cm_showcase | DevelopersIO

                                                サーバレス時代のマルチテナンシーを考える ~ Thinking about multi-tenancy in the serverless era ~ #cm_showcase 京セラのロボティクスチームがマルチテナンシーをどのように考え取り組んできたか、またその過程でクラスメソッドがどのように支援してきたかをご紹介します こんにちはおんづか(@onzuka_muscle)です。 本記事ではMAD事業部として1年以上前から支援をさせていただいている京セラ様のセッションをレポートします! セッション概要 サーバレス時代のマルチテナンシーを考える ~ Thinking about multi-tenancy in the serverless era ~ 昨今、DX 言葉に代表されるように、ビジネスをデジタライズし、サービサーとしてソフトウェアを提供するニーズが高まっています。 しかし、サービ

                                                  サーバレス時代のマルチテナンシーを考える ~ Thinking about multi-tenancy in the serverless era ~ #cm_showcase | DevelopersIO
                                                • TypeScript + React: Typing Generic forwardRefs

                                                  Published on April 13, 2021 Stefan on Mastodon Reading time: 15 minutes More on TypeScript, React If you are creating component libraries and design systems in React, you might already have fowarded Refs to the DOM elements inside your components. This is especially useful if you wrap basic components or leafs in proxy components, but want to use the ref property just like you’re used to: const Bu

                                                    TypeScript + React: Typing Generic forwardRefs
                                                  • typescript-eslint v6 アップデートガイド

                                                    typescript-eslint v6 リリース! 2023/07/10 に typescript-eslint の v6 がリリースされました。 メジャーバージョンアップということで多くの BreakingChange があるのですが、その中でもReworked Configuration Namesと呼ばれる変更は利用者に大きな影響を与えそうです。 Reworked Configuration Namesはざっくり言うと「config に書くrecommendedのようなルールセットの名前や枠組みが変わるよ」という変更です。 ルールセットの名前だけでなく、含まれるルールや分類自体に変更があるので、設定ファイルを v5 のままアップデートしてしまうと意図したルールセットと異なる設定になってしまいます。 ここでは上記の記事にある変更点を紹介しつつ、なるべく既存の設定のままアップデートする

                                                      typescript-eslint v6 アップデートガイド
                                                    • Kubernetes 8 Factors - Kubernetes クラスタの移行から学んだクラスタのポータビリティの重要性と条件 | Wantedly Engineer Blog

                                                      Kubernetes 8 Factors - Kubernetes クラスタの移行から学んだクラスタのポータビリティの重要性と条件 こんにちは、Wantedly で技術基盤に関わる Developer Experience Squad で Engineer をしている大坪(@potsbo)です。 今日は、WANTEDLY TECH BOOK 7 から「Kubernetes クラスタの移行から学んだクラスタのポータビリティの重要性と条件」という章を抜粋し加筆修正を加えたものを Blog にします。 「WANTEDLY TECH BOOK 1-7を一挙大公開」でも書いた通り、Wantedly では WANTEDLY TECH BOOK のうち最新版を除いた電子版を無料で配布する事にしました。Wantedly Engineer Blogでも過去記事の内容を順次公開予定であり、この Blog もそ

                                                        Kubernetes 8 Factors - Kubernetes クラスタの移行から学んだクラスタのポータビリティの重要性と条件 | Wantedly Engineer Blog
                                                      • Gatlingによる分散負荷試験を自動化するKubernetesオペレーターGatling Operatorの紹介 - ZOZO TECH BLOG

                                                        こんにちは。SRE部の川崎(@yokawasa)、巣立(@tmrekk_)です。私たちは、ZOZOTOWNのサイト信頼性を高めるべく日々さまざまな施策に取り組んでおり、その中の1つに負荷試験やその効率化・自動化があります。本記事では、私たちが負荷試験で抱えていた課題解決のために開発、公開したOSSツール、Gatling Operatorを紹介します。 github.com はじめに ZOZOTOWNは非常にピーク性のあるECシステムであることから、常にそのシステムが受けうる負荷の最大値を意識しております。想定しうる最大規模の負荷を受けてもユーザー体験を損なうことなくサービス継続できることをプロダクションリリースの必須条件としています。したがって、新規リリースやアップデート、大規模セールなどのシステム負荷に影響を与えうるイベント前など、比較的頻繁に負荷試験を実施しています。そして、社内でもっ

                                                          Gatlingによる分散負荷試験を自動化するKubernetesオペレーターGatling Operatorの紹介 - ZOZO TECH BLOG
                                                        • Kubernetesにおけるマルチクラスタ関連手法の分類 - @amsy810's Blog

                                                          こんにちは。青山(amsy810)です。 Kubernetesには複数のクラスタを扱うための技術がいくつかあります。 今回は幾つかのパターンに分けて紹介していきたいと思います。 また、将来的にこうなったら面白いかもという話をするために、すぐにプロダクション利用できない話やWebサービスでは使わないような話も含まれています。 【目次】 複数クラスタを利用する理由 複数クラスタを管理するパターン GitOpsで複数クラスタを管理するパターン 複数のKubernetesクラスタをFederateするパターン Virtual kubeletパターン マルチクラスタ時のロードバランサの扱い LoadBalancer の機能を利用して分散する DNS を利用して分散する Multi Cluster にまたがる Service Mesh を利用して転送する マルチクラスタでPod Networkを繋ぐ

                                                            Kubernetesにおけるマルチクラスタ関連手法の分類 - @amsy810's Blog
                                                          • GitHub Actionsのサードパーティーマネージドランナーの紹介 - いけだや技術ノート

                                                            この記事は はてなエンジニア Advent Calendar 2023 の 2024年1月4日 の記事です。 GitHub Actionsの実行環境であるランナーには、GitHubが提供するGitHub ホステッド ランナーと、自分でランナーを用意・管理するセルフホステッド ランナーの大きく二種類があります。 最近はGitHub ホステッド ランナーにもラージランナーが用意されるようになり、ある程度ランナーのスペックを選べるようにもなりましたが、他のCIサービスと比べてもスペックの割にコストが高めである感じは否めません。一方でセルフホステッド ランナーにはスペックを自分で調整できる自由度がありつつも、管理する手間とコストが掛かってきます。 こうした隙間を突くように、サードパーティーによるマネージドなセルフホステッド ランナーを提供するサービスが増えつつあります。基本的には runs-on:

                                                              GitHub Actionsのサードパーティーマネージドランナーの紹介 - いけだや技術ノート
                                                            • Istioでマイクロサービスのテスタビリティを向上させる - Uzabase for Engineers

                                                              SPEEDAの開発チームの石橋です。 最近ではマイクロサービスでプロダクトを開発することが多くなってきていると思います。 そういった状況の中でマイクロサービスのテスト、特に異常系のテストをするコストがやや高いという話を何度か耳にしました。 本記事ではIstioのFault Injectionで「エラーが発生する」、「処理に時間がかかる」などの異常系のテストを容易に実現する方法を紹介します。 異常系のテストをする際の課題 環境構築 Gateway Service Deployment DestinationRule VirtualService Fault Injection Injecting HTTP Aborts Injecting HTTP Delays まとめ 参考 異常系のテストをする際の課題 サービスAとサービスBがあるとします。サービスAからサービスBにリクエストした際、サー

                                                                Istioでマイクロサービスのテスタビリティを向上させる - Uzabase for Engineers
                                                              • 新米Rustaceanの🌾🦀による🌾🦀のためのRust入門「C++/C#プログラマーでも読めるようになる」

                                                                Rustで簡単なツールを作ってみました。はじめてのTUI(モドキ)のツールです。 このバージョン0.1.0を作ったことで得られた知見をまとめてみます。 長文になってしまったので目次をうまく使ってください。(スマホ画面だと上部の目次をタップしないと表示されないので少し見づらいです。) 「いいね」、「ツイート」、「バッジを贈る」、「コメント」大歓迎です! 作成ツール紹介 みなさん、timeコマンドでコマンドの実行時間を計測しますよね?Rust製のhyperfineというツールがあり、複数回実行して平均を出したり、複数コマンドを比較できたり便利です。 これを見て私はメモリ使用量も計測できたらうれしいなと思ったんです。 そう、このmntimeコマンドを使えば、実行時間とメモリ使用量の平均値が分かるんです! そんなツールですがRustで作った経緯は、最近ターミナル環境を整えました。そのとき、モダンで

                                                                  新米Rustaceanの🌾🦀による🌾🦀のためのRust入門「C++/C#プログラマーでも読めるようになる」
                                                                • GitHub Actionsで実現する、APIキー不要でGitOps-likeなインフラCI/CD - JX通信社エンジニアブログ

                                                                  ※ 今はGitHub ActionsでOIDCが使えるので、本記事の内容は少し古いです。*1 現場のルール等で「インフラを触るワークロードはオンプレでしか動かしてはならない」みたいなルールがある場合には多少参考になるかと思います。 SREのたっち(@TatchNicolas)です。 JX通信社では「インフラチーム」のようなものは存在せず、開発したチームが運用までやるFull-cycleなスタイルを取っています。AWS・GCPリソースの管理も特定のメンバーが担当するのではなく、必要とする人が必要な時に作成・修正等を行います。すると、terraformなどIaCのツールを利用する場合に「今リポジトリにあるコードは実態を正しく反映しているのか」「誰かが矛盾する変更を加えていないか」という問題が発生します。 CIツール上でterraformを実行することで、問題の一部は回避できるかもしれませんが、

                                                                    GitHub Actionsで実現する、APIキー不要でGitOps-likeなインフラCI/CD - JX通信社エンジニアブログ
                                                                  • IstioとAuth0でJWT認証付きAPIを5分でデプロイする - JX通信社エンジニアブログ

                                                                    SREのたっち(@TatchNicolas)です。 JX通信社では、月に一度「WinSession」というリリースした機能や検証したリリースについて開発チーム全体へ発表する機会を設けています。今回は自分が前回社内に紹介した「パパッと便利APIを作って5分でお手軽&セキュアにデプロイする」方法について書きます。 TL; DR; Istio/cert-manager/Auth0を使って、任意のコンテナを認証つきで5分でデプロイできる仕組みを作った 設定はアプリケーションごとに独立し、中央集権的なリポジトリに依存しない*1 きっかけ プロダクト間で共通のAPIを認証付きでパパッと作りたいこと、よくありますよね? でも、アプリケーションに毎回認証のための仕組みを組み込むのは骨が折れます。アプリケーションはあくまで、アプリケーションの関心ごとに集中させたい。すると、サイドカーコンテナを使って責務を分

                                                                      IstioとAuth0でJWT認証付きAPIを5分でデプロイする - JX通信社エンジニアブログ
                                                                    • Kubernetes External SecretsからExternal Secrets Operatorに移行した話 〜他ツールとの比較・移行戦略・工夫したポイント〜 - ZOZO TECH BLOG

                                                                      はじめに こんにちは、SRE部ECプラットフォーム基盤SREブロックの織田です。普段は主にZOZOTOWNのリプレイスやインフラを改善、運用しています。 本記事では、Secret管理コンポーネントであるKubernetes External Secrets(以降、KESと表記)の非推奨を受けて、どのような対応を実施したのか紹介します。 目次 はじめに 目次 なぜSecret管理コンポーネントを利用するのか? Kubernetes External Secrets(KES)について KESとは? KESを使ったKubernetes構成 KESの非推奨について 移行先の選定 優先事項の決定 移行先の検討、比較 移行先の決定 External Secrets Operator(ESO)について ESOのアーキテクチャ 移行における注意点や変更点 移行の実施 移行方法 工夫したポイント 最後に な

                                                                        Kubernetes External SecretsからExternal Secrets Operatorに移行した話 〜他ツールとの比較・移行戦略・工夫したポイント〜 - ZOZO TECH BLOG
                                                                      • LIFULLを支えるKubernetesエコシステムまとめ 2020年版 - LIFULL Creators Blog

                                                                        技術開発部の相原です。 以前にブログで書きましたが、LIFULLでは主要サービスのほぼ全てがKubernetesで稼働しています。 www.lifull.blog Kubernetesをアプリケーション実行基盤として本番運用するためにはデプロイやモニタリング・ログ、セキュリティなど考えることが多くどこから手を付ければよいか困ることがあるでしょう。 そこで今回は既に数年の運用実績のあるLIFULLのアプリケーション実行基盤で利用しているKubernetesエコシステムについて紹介します。 全て書くと数が膨大になるので今回はクラスタ周りを中心に、必要とするソフトウェアの数が多いモニタリング・ログまでとします。(それでも大作になりそうですが...) kubernetes/kops projectcalico/calico coredns/coredns node-local-dns kubern

                                                                          LIFULLを支えるKubernetesエコシステムまとめ 2020年版 - LIFULL Creators Blog
                                                                        • TypeScriptで関数型プログラミングしたい勢に推したいPipeline operatorの良さ - タオルケット体操

                                                                          前置き Rubyで一瞬だけ湧いて出てきて消えたPipeline風演算子については忘れてください。あれはメソッド呼び出しの演算子であって今回取り上げるPipeline operatorとは似て非なるものです。 JavaScripterでも、Ramda.jsやRxJSを普段から使っている人には既知の内容だと思うのでこの記事は読まなくて大丈夫です。 ちなみに僕のステータスは関数型にわか勢なので認識に間違いがあったらなんらかの訂正もらえるとうれしいです。 Pipeline operatorとは 古くはML系の言語で定義されてF#やElixirの流行で一般に有名になった演算子こと |> です。 f a を a |> f と書けるようになります。 詳しくはこちらで: https://mametter.hatenablog.com/entry/2019/06/15/192311 覚えた方がいい理由 Ty

                                                                            TypeScriptで関数型プログラミングしたい勢に推したいPipeline operatorの良さ - タオルケット体操
                                                                          • インターンレポート: コンテナランタイムの実装と評価

                                                                            こんにちは。インターン生の富田祐永です。普段は情報系の研究室で超伝導量子コンピュータの研究をしています。 2022年1月から約1ヶ月間、NTT 研究所で「コンテナランタイムの実装及び評価」というテーマのインターンに参加させていただいておりました。 インターン参加経緯改めて軽く自己紹介をさせていただきます。 私は今は修士1年の院生なのですが、実は学部時代は情報系ではなく経済学部にいました。また、趣味で何かやっていたというわけでもなかったため、特に低レイヤに関しての実装経験はほぼ皆無です。 院に入ってからも、研究の傍らでちまちまCのコンパイラを書くくらいしか余裕がなく、何か面白いものを集中して実装できる期間が欲しいなあと思っていました。そのため、今回のテーマの募集を見つけた瞬間「これだ!」となって即応募しました。 取り組んだテーマさて、自分が取り組んだのは「containerd-shim-ru

                                                                              インターンレポート: コンテナランタイムの実装と評価
                                                                            • サービスメッシュとしてLinkerdを導入するに至った経緯 - ANDPAD Tech Blog

                                                                              はじめに SREの須恵です。 弊社では、昨秋からサービスメッシュの導入を開始していたのですが、なかなかアウトプットできていなかったので書くことにしました。 マイクロサービス化とgRPC 弊社で進行中の技術テーマの1つに「マイクロサービス化」があります。 ビジネスの成長拡大に伴い開発組織も拡大し続けており、どんどん人数が増えています。この増加していく開発者の力を、可能な限り効果的に活かして開発するため、マイクロサービス化に舵を切ることになりました。 (マイクロサービスの動機と目指す結果の詳細はいずれ誰かが記事化することに期待) 今年の1月に弊社初のマイクロサービスとしてリリースされた2つのサービスがあり、それらはgRPCで通信することが決定されていました。また今後も、マイクロサービス間の同期通信にはgRPCの採用が広がる見込みです。 なぜgRPCか モノリスをマイクロサービス化する、あるいは

                                                                                サービスメッシュとしてLinkerdを導入するに至った経緯 - ANDPAD Tech Blog
                                                                              • Cloudflare Pagesにおける権限昇格と任意ページの改竄

                                                                                You can read about these vulnerabilities in English at https://ec0.io/post/hacking-cloudflare-pages-part-2/ 免責事項Cloudflareは、HackerOne上で脆弱性報奨金制度(Bug Bounty)を実施しており、脆弱性の診断行為を許可しています。 本記事は、当該制度を通して報告された脆弱性をCloudflareセキュリティチームの許可を得た上で公開しているものであり、無許可の脆弱性診断行為を推奨することを意図したものではありません。 また、Cloudflareは脆弱性調査において他の研究者との協力を許可しており、脆弱性調査を目的とした他の研究者との脆弱性情報の共有が許可されています。 Cloudflareが提供する製品に脆弱性を発見した場合は、Cloudflareの脆弱性報奨金

                                                                                  Cloudflare Pagesにおける権限昇格と任意ページの改竄
                                                                                • neue cc - .NET Core時代のT4によるC#のテキストテンプレート術

                                                                                  C# Advent Calendar 2019用の記事となります。C# Advent Calendar 2019はその2もあって、そちらも埋まってるので大変めでたい。 さて、今回のテーマはT4で、この場合にやりたいのはソースコードジェネレートです。つまるところC#でC#を作る、ということをやりたい!そのためのツールがテンプレートエンジンです。.NETにおいてメジャーなテンプレートエンジンといえばRazorなわけですが、アレはASP.NET MVCのHTML用のViewのためのテンプレートエンジンなため、文法が全くソースコード生成に向いていません、完全にHTML特化なのです。また、利用のためのパイプラインもソースコード生成に全く向いていない(無理やりなんとか使おうとするRazorEngineといったプロジェクトもありますが……)ので、やめておいたほうが無難です。 では何を使えばいいのか、の答