Trino Conference Tokyo 2023 https://techplay.jp/event/907388 #trinodbRead less
「JX通信社Advent Calendar 2019」24日目の記事です. 昨日は@kimihiro_nさんによる, 「Immutable Python ~ NamedTuple で書く副作用のないプログラム」の話でした. こんにちは. JX通信社でシニア・エンジニア&データ基盤エンジニアおよび野球*1をしています, @shinyorke(しんよーく)と申します. JX通信社では, データ駆動での意思決定および施策実施をより円滑に進めるため, データ基盤の構築・運用を進めています. その過程でいろんなFrameworkやサービスを試して...の一つの成果として以前こんな話をしました.*2 tech.jxpress.net このエントリーではもうちょっとプラットフォーム・基盤に寄り添ったテーマで, 同僚氏に「K8sいいぞ!」と布教活動を受けた結果, 4日で本番運用までこぎつけた話 をしたいと
Kubernetesプロジェクトは2023年3月10日(米国時間、以下同)、旧コンテナイメージレジストリドメイン「k8s.gcr.io」(以後、旧ドメイン)の廃止に伴い、注意喚起した。 なぜドメインを変更したのか? Kubernetes 1.25以降、新たなコンテナイメージレジストリとして「registry.k8s.io」(以後、新ドメイン)の提供が開始され、2023年3月20日からは、旧ドメインから新ドメインへのリダイレクトが行われている。 関連記事 Kubernetes障害で泣かないための羅針盤、Observabilityを活用したトラブルシューティングフロー大公開 Kubernetesやクラウドネイティブをより便利に利用する技術やツールの概要、使い方を凝縮して紹介する連載。今回は、Observabilityを活用したトラブルシューティングフローを紹介する。 CNCFが公開したクラウド
はじめに kubernetes 環境で postgresql のコンテナを建てたり、kubernetes クラスタが存在する VPN に postgresql インスタンスを起動する場合、kubernetes の外から postgresql サーバにアクセスする事ができません。モチベーションとしては自分の端末から kubernetes VPN 内にいる postgresql サーバへ psql で接続したいのです。その為にインターネットに穴を開けたくない。 psql が入ったコンテナを追加する... そうじゃない! 失敗した作戦1 コンテナ環境に socat が入った ubuntu コンテナを建て、postgresql へのプロキシを作成、そのコンテナへ kubectl port-forward する作戦です。 $ socat tcp-listen:5432,reuseaddr,fork
【レポート】k8s 疲れの方へ送る、k8s ベースのらくらくマイクロサービス動作基盤のご紹介 #jjug_ccc #jjug_ccc_c コンサル部のとばち(@toda_kk)です。 本記事は、2022年6月19日に開催されたオンラインカンファレンス JJUG CCC 2022 Spring にて行われたセッション「k8s 疲れの方へ送る、k8s ベースのらくらくマイクロサービス動作基盤のご紹介〜 Dapr ベースのマイクロサービス開発から GitHub Action を利用した CI/CD 〜」のレポートです。 JJUG CCCは、例年2回、春と秋に開催する日本最大のJavaコミュニティイベントです。Java関連の技術や事例に関する良質なセッションが行われ、また異なる分野で活躍するJava技術者が一堂に会する場ともなっています。 このセッションでは、Java Champion 兼 Mic
目次 [toc] はじめに キャディでバックエンドエンジニアとCI/CDやIaC、自動テストなどDevOps的な仕事を兼務している山下です。 k8sを実際にサービスの運用に使おうとすると確実にぶつかる壁があります。それは構成管理です。 具体的にいうと、基本は設定を共通化しつつ、環境に応じて一部だけを差し替えて管理しようとするとk8sだけでは運用が難しくなってきます。 そうした課題を解決するのに、最も使われているツールはHelmです。 (Helmは構成管理だけでなく、パッケージマネージャーとしての機能もあり、より広範な存在ですが) しかし、キャディでは、Kustomizeというツールを使用し、構成管理を行なっています。 その理由やメリット、使い方を簡単に紹介出来ればと思います。 Kustomizeを選定した理由 HelmではなくKustomizeを選定した理由は大きく4つ存在します。 それは
はじめに みなさん、こんにちは。 主にBUYMAの検索周り、時々機械学習なエンジニアの伊藤です。 今年もあっという間の1年でしたね。 振り返ってみると多くのことを学ばせてもらい、また成長させてもらった1年でした。 その中でもk8sがやはり自分の中では中心だった気がします。 なので今回はk8sネタで今年を締めくくりたいと思います。 k9sとは? k9sとはk8s上のリソースを監視、管理するためのCLIツールです。 k8sのCLIといえばkubectlがデファクトですが、そのI/Fをよりリッチに使いやすくしたのがこのツールです。 公式のページはこちら 読み方はけぃないんずだと思います(たぶん) 個人的になぜ犬のロゴなんだろうというのがまず引っかかったので軽く調べたところ、 canine=犬のヌメロニム表記であるk9と、kubernetesのk8sが表記的に近いから犬なんだなと勝手に納得すること
Prometheus は、メトリクスの監視を行うためのモニタリングツールだ。各種メトリクスを出す exporter とそれを集計する Prometheus サーバ、及びその集計結果を監視しアラートを出すアラートマネージャで主に構成されている。Prometheus それ自体は便利なんだが、Kubernetes クラスタを監視したい場合色々追加で設定が必要で、結構めんどくさい。そこで、Kubernetes 用に Prometheus をカスタマイズして提供してくれるパッケージがいくつか出ている。今回はそのうちの Prometheus Operator を触る機会があって、せっかくなので使い方を備忘録として残しておく。 Prometheus Operator のインストール まずは、Kubernetes / helm が入った環境用意する。一応、Kubernetes のバックエンドは今回は Do
K8sアプリ(=Kubernetes上で動くことを前提としたアプリケーション)のEnd-to-Endテスト(=E2Eテスト)をCIの無料枠で実行する方法を説明します。 テストツールの列挙 まずはK8sアプリケーションのテストに使うツールを列挙します。 代表的には次のような選択肢があります。 fake: client-goのモッククライアント。admission機構が無いなど、本物とは挙動が異なる点も多い envtest: controller-runtimeのインテグレーションパッケージ。kube-apiserverとetcdを実際に建てる。APIリソース操作で十分に試験項目を網羅できるなら便利。 kind: dockerベースのスタンドアローンK8s。マルチノードをサポートしている。K8sの下回りに依存しないアプリケーションなら基本的にこれで問題なし。 本物のK8s: コスト大だがどうし
青山 真也 氏(@amsy810) CyberAgent Software Engineer / CloudNative Days Tokyo Co-chair Kubernetes Meetup Tokyo/Cloud Native Meetup Tokyo Organizer としても活動。 著書に「Kubernetes完全ガイド」「みんなのDocker/Kubernetes」等。 Kubernetesには、様々な拡張ポイントが用意されています。Kubernetes Controllerを利用することで、Kubernetesに対して様々な任意の機能を簡単に拡張していくことが可能です。 CyberAgent group Ingfrastructure Unitでは自分たちの運用業務知識をKubernetesに組み込み、クラスタの運用を人が毎回考えずに・人を介さずに自律的に行えるように、運
whywaita Advent Calendar 2022の9日目の記事になります。 昨日はkadokuseiさんの「2022年に買ったゲーミングデバイス」だったみたいです。 自分はなんかいい感じのディスプレイが欲しいと常々思っています。 今回の話 何か面白い身の上話があるわけではないので、前々から機会があったら話そうと考えていた、自作のライブラリがk8s (Kubernetes) で採用されているという話をしたいと思います。 whywaitaさんに会ったときはReDoSの話でもすればいいと言われた気がするのですが、そっちは別で書こいたので、そのうち公開されます。 heredoc heredocというGo言語のライブラリがあります。 作者は@makenowjustです。 高校生の頃に一晩で作りました。なんで作ったのかはあまり覚えていません。 与えられた文字列のインデントを削除することで、ソ
AWS Controllers for Kubernetes (ACK) lets you define and use AWS service resources directly from Kubernetes. With ACK, you can take advantage of AWS managed services for your Kubernetes applications without needing to define resources outside of the cluster or run services that provide supporting capabilities like databases or message queues within the cluster. ACK is an open source project built
アジャイルなどの開発手法やマイクロサービスなどのアーキテクチャーの進化を背景に、アプリケーション・インフラに求められる要件が大きく変わりつつある。そこで脚光を浴びているのがコンテナ技術と、そのオーケストレーション技術であるKubernetes(k8s)だ。両技術によりシステムはどう変わるのか。ガートナー ジャパン バイス プレジデント アナリストの桂島航氏が、コンテナやKubernetesの活用の意義から企業の導入状況、展開のポイント、課題までを解説する。 コンテナが支持される技術的理由 コンテナやKubernetesへのIT部門の関心はここ数年で急速に高まり、ガートナー ジャパンに寄せられる質問は年間で数千件に達している。こうした中、ガートナーでは両技術を本番環境で利用する企業は2021年中にグローバルで3割に達し、25年には8割を超えると予測する。 ガートナー ジャパン バイス プレジ
本記事は、2023年9月29日に開催された SRE NEXT 2023 に登壇させていただいた みてねプロダクト開発部 基盤開発グループ SREチーム 杉本(@kohbis)のセッションを、文字起こしをベースにブログ記事にまとめたものです。 セッションについてタイトル1,800万人が利用する『家族アルバム みてね』におけるK8s基盤のアップグレード戦略と継続的改善 セッション概要『家族アルバム みてね』(以下、『みてね』)のインフラは、2021年始めにAWS OpsWorksからAmazon EKSのマネージドK8s基盤へと移行しました。K8sの採用は大きな恩恵がある一方で「運用コストが高くなる」と一般的に言われています。その理由としてあげられやすい4ヶ月に一回のマイナーリリースへの追従については、K8sクラスタの運用経験のある方であれば少なからず苦労した思い出があるのではないでしょうか。
概要 だいたいこの手の構築手順はいろいろな方がまとめられてますが、自分がやった作業の備忘録も兼ねてまとめておきます 構成はmaster×1、worker×2として、raspberry piを3台使って作ります 物理構築 物理的な構築は以下の記事とほぼ同じ手順でやりました qiita.com また、ルータの設定については以下記事と同じ手順で行っています qiita.com この記事自体がだいたい↑これと同じ手順となるのでコレだけ読めば良い説 完成した様子がこちら(良い良い) 「Raspberry Pi 4で」というタイトルになってますが、もともとRaspberry Pi 3(Model 3+)を持っていたのでMasterNodeには3を使おうと思います (下から3番目のラズパイが3) 今回のクラスタ構成のために買ったものを以下にまとめておきます もの 製品 数 ラズパイ Raspberry
以降は、今回の発表の個人的な感想です。 私個人として今回の発表の一番の目玉は、私自身の発表というよりも、幣チームメンバーの亀井(亀ちゃん)に発表してもらったことです。ID基盤についての設計思想から何から整理して最高の発表資料を仕上げてくれました。私は軽くレビューをしただけで何もする必要がありませんでした。 元々ID基盤のインフラは、1年ほど前にオンプレ歴は長いがクラウドも Kubernetesも初心者だったEnKUMAと亀ちゃん、そして私とインダクターの4人で始動した紆余曲折ありながらも進めてきたプロジェクトでした。今となってはチーム規模も大きくなり、新卒メンバーもJOINしたりと大きく変わっていますが、当初はオンプレとクラウドネイティブアーキテクチャの考え方の違いを教える所からスタートし苦労もありました。しかし、年下であるインダクターからも貪欲に学ぼうとする2人の姿勢は端からみていても感
2022/11/7追記 2022年10月のGCP料金改定で、asia.gcr.ioのcontainer registryからのimage pullが課金されるようになりました(月額3000円ほど) artifact registryに移行して、東京リージョンにimageを配置することで転送料金は掛からなくなりました。 この記事はGoogle Cloud Platform Advent Calendar 2021の19日目の記事です。 この記事では、ラズパイk8sクラスタで運用してたアプリをGCPに移行した話を書きます。 なるべく利用料金を抑えるための構成を頑張ってみたので、そのポイントを書いていこうかと思います。 最終的には 4円/日 程度で運用できてます。 (もっと安くできるぞ!って部分あれば是非コメント等で教えていただけると嬉しいです) 記事としては 元々自宅のk8sで動かしていた時の
この記事では中級/上級の Kubernetes アプリの開発/運用の壁と、それをどう Tanzu Application Platform で解決するかについて紹介します。 Tanzu Application Platform が求められる背景 Kubernetes(K8s) はすでに世界中で利用されており、そのユーザー数は毎年どんどん増えています。この記事を読まれている皆様の組織も既に本格的に導入していたり、検証中や検討中である方が多いかと思います。それほど多くのユーザーがどんどん流入しているのは K8s 及びコンテナが有用だからなのですが、本格的に使い始めてから多くのユーザーが「K8s は難しい」という印象を抱きます。 以下の図を見てください。 この図では K8s を比較的最近使い始めた入門ユーザーのアプリ開発からデプロイの流れ(上)と、エンタープライズ利用でのアプリ開発からデプロイま
以前にラズパイ3(メモリ1GB)を3台使ってコンテナクラスタのオーケストレーション環境を作ったことがありました: ラズベリーパイと鳩サブレ缶で docker swarm クラスタを構築する ラズベリーパイと鳩サブレ缶で kubernetes クラスタを構築する 上記の上では docker swarm 環境、下では kubernetes 環境を構築しました。手順などの詳細はそれぞれのリンク先を参照していただきたいのですが、この時は kubernetes 1.8 を使ってクラスタを構築しました。kubernetes の環境としては作れたのですが、(案の定というか)メモリが圧倒的に足りなさすぎて実用にはほど遠い kubernetes 環境となってしまいました。マイナーな環境であることは理解しつつ、今でもラズパイ3でのオーケストレーション環境としては docker swarm が現実的なのかなあ、
Validate Cloud Environments with Policy-as-Code AWS CloudFormation Guard is an open-source general-purpose policy-as-code evaluation tool. It provides developers with a simple-to-use, yet powerful and expressive domain-specific language (DSL) to define policies and enables developers to validate JSON- or YAML- formatted structured data with those policies. The Guard 3.0 release introduces support
本記事は、Japan Digital Design Advent Calendar 2020 19日目の記事です。 (Rancher LabsのHarvesterの発表に伴い12/19以前に急遽公開していました) 2021/2/15 ログイン時に初期ID/パスワードを使ってログインする方法について追記しました。 Rancher Harvesterって何?Rancher HarvesterはRancher Labsが開発中?(※1)のハイパーコンバージドインフラストラクチャ(HCI)ソリューションです。Kubernetes(とKubeVirt、minio、Longhorn)をベースとして仮想マシンを管理します。 ※1 ... Rancher Labsのブログなど、どこにも出ておらず、Rancher LabsのGitHubのOrganization配下で作られているだけなので製品として出てくる
https://tokyo.gdgjapan.org/devfest2019/session/masaya-aoyama 講演概要 CloudNative 時代における GKE/Kubernetes ではじめる開発 Dockerなどのコンテナ技術は広く普及し、コンテナオーケストレーションエンジンとしてはKubernetesがデファクトスタンダードとなりました。Kubernetes は Google が社内で 10 年以上利用していたクラスタマネージャ Borg が元となっています。GCP のマネージド Kubernetes サービス GKE(Google Kubernetes Engine) では利便性が高く、運用が楽になる機能も多いため、Kubernetesの 利用を始めやすくなっています。本セッションでは、CloudNative な開発には何が求められているのかから始まり、Kubern
概要 Python製のワークフロー管理システムPrefectで簡単なワークフローを作りながら使用方法や幾つかの機能を確認していきたいと思います。 尚、この分野ではApache Airflowがメジャーかと思います。Airflowとの比較についてはこちらのブログ(Why Not Airflow?)に書かれているので参考にして下さい。 Prefectの特徴 単発手動実行のワークフローが実装しやすいが、スケジュール実行も普通にできる。 Pythonの関数を定義していくことでワークフローを自然に構築できる。 タスク間のデータのやり取りが簡単にできる。 ワークフロー実行時に動的にワークフローを構成できる。 ワークフロー上のデータをパラメータ化して実行時に値を指定できる。 ローカルでのデバッグがしやすい。 本番運用はマネージドサービス(Prefect Cloud)を使用した方が良いが、一応自前でホステ
実行中のコンテナ内にあるファイルをホストとの間でコピー転送するには、kubectl|docker container cpを使えます。 config類のベースファイルや実行ログを取得する場合などに便利です。 ## コンテナのファイルコピー kubernetes, dockerに`cp`サブコマンドがある * `kubectl cp [options] origin dest` * `docker container cp [options] origin dest` --- ## ファイルpath NFS同様 `[host:]/path/to/file` * ローカルは、`host:`のprefixなし * リモートpathにはタブ補完が効かない * kubernetesの`host`にはpod名を指定 * `kubectl get pods`で検索 --- ## kubectl用共通オプ
wp-k8s: WordPress on privately hosted Kubernetes cluster (Raspberry Pi 4 + Synology) Adnan Hodzic November 12, 2021 Blog post you’re reading right now is privately hosted on Raspberry PI 4 Kubernetes cluster with its data coming from NFS share and MariaDB on a Synology NAS. Purpose of this post is to serve as an ultimate guide on how to build a (prod ready) RPI k8s cluster and deploy WordPress CMS
はじめに ここ最近 kubernetes (k8s) 上でのアプリ開発なんかにも関わるようになったのですが、EKS 上で動かしていたシステムをローカル環境 (microk8s) に持ってきたら特定のコンテナだけ名前が引けなくなって動かない、という現象にぶち当たって数日溶かしてしまったので、その話をしようと思います。 要約 以下の要因が組みあわさることで、k8s 上の Alpine linux ベースのコンテナではうまく名前を解決できないことがあります。 k8s はデフォルトではローカルドメインの名前を優先して解決する (/etc/resolve.conf の ndots: 5) k8s 外部へ名前を問い合わせるときに、問い合わせ先の DNS サーバが本来 NXDOMAIN を返すべきところ、そうなっていないケースがある Alpine linux は一般的な lInux ディストリビューショ
フォルシアでは複数のアプリにおいてKubernetesが用いられています。 参考:https://www.forcia.com/blog/001519.html しかしながら、デプロイ周りについてはまだまだ仕組み化がされておらず、いい感じにデプロイできる仕組みはないかと調べていると「GitOps」というワードが出てきました。 勉強がてら(結構こすられたネタだとは思うのですが)GitOpsを実際に構築してみた学習記録を記したいと思います(筆者は1ヶ月前まではKubernetes何それ状態でした)。 GitOpsとは Weave社が提唱した概念です。 https://www.weave.works/technologies/gitops/ GitOps can be summarized as these two things:An operating model for Kubernetes
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く