APC 技術ブログ

株式会社エーピーコミュニケーションズの技術ブログです。

株式会社 エーピーコミュニケーションズの技術ブログです。

GAE/Go1.9から1.11にマイグレーションしようとして躓いたところ

はじめに 先進サービス開発事業部の山岡です。 GAE/Goは1.6, 1,8, 1.9, 1.11, 1.12(beta)と随時新しいGolangバージョンに対応してきていますが、1.11からはGAEのバックエンドがgVisorベースの2nd Generationとなり大きな変更点が複数ありました。1.11ではま…

Cloud Native Days Fukuoka 2019 イベントレポート (1/2)

はじめに Conference KeyNote Welcome Talk from Fukuoka 飛び込もう、Cloud Nativeの世界 CacooのKubernetesによるマイクロサービスアーキテクチャ Kubernetesはキャズムを超えるのか Kubernetes を利用したコンテナ開発のススメ セッション CircleCI 2.0を…

CI環境で react-scripts build が失敗する場合の場当たり的対処方法

はじめに 先進サービス開発事業部の山岡です。 開発時にローカルの環境では問題無く react-scripts build できるにも関わらず、CircleCIで同様にビルドを行うと Failed to compile. というエラーが発生してしまうという問題が起きました。 同じ問題にハマっ…

if-up2019に参加してきました。

はじめに 先進サービス開発事業部のKunimoriです。12年間ネットワーク・サーバ基盤を中心にエンジニア〜PMまでのキャリアを積みました。 その後、新規プロダクトの立ち上げ〜事業責任者として「インフラエンジニアの苦悩からの解放」をビジョンに掲げながら…

実サーバー無しでLet's Encryptの証明書を発行する

はじめに 先進サービス開発事業部の山岡です。 先日所用で手元の端末にLet's Encryptの証明書を発行したのですが、これには公式推奨ツールであるcertbotを使う必要があります。 単純にインストールする方法の他にDockerを使って使い捨てることもでき、今回そ…

自社運営のWebアプリをPWA化した際にハマった話(OAuthなど)

はじめに 先進サービス開発事業部の高橋です。主にフロントエンド開発を担当しています。今回は私たちの部署で運営しているソーシャルRSSサービス「NEIGHBORS」をPWA化した際にやったことを書いていこうと思います。 NEIGHBORS | ひとりの興味をみんなの知識…

WSLの色を見やすくする

はじめに Windows Subsystem for LinuxはWindows環境でLinuxのネイティブバイナリーを動かすことができ非常に便利なのですが、デフォルトで設定されている色はギンギンでとても見辛いです。 公式から編集できるツールも用意されているようですが、面倒な場合…

mercari.go #6 参加レポート

はじめに 先進サービス開発事業部の山岡です。 今日はいつもと趣向を変え、先日参加させて頂いたmercari.go #6のレポートを書きたいと思います。 ※資料は後日公開されるとのことなので公開されたらそちらへもリンクを貼ります JavaとGo言語を比較した話 @ken…

GAE/GoのテストでDatastoreの状態を確認できるようにする

始めに 先進サービス開発事業部の山岡です。 GAE/Goでは goapp test を使うことでローカル環境に仮のGAEを再現しDatastoreのアクセスや非同期処理の挙動を確認することができますが、テスト終了後にその環境は自動で破棄されてしまいDatastoreがどのような状…

GCP DatastoreのKindを一括削除する

はじめに 先進サービス開発事業部の山岡です。 GCP DatastoreはSQLコマンドを直接叩いてデータを操作する、というようなことができません。一応GUIから内容を確認して削除したりすることはできますが、簡易的なものであり特に大量のデータに対しては全くの無…

EKS上にConcourse CIをデプロイする

はじめに 先進サービス開発事業部の山岡です。 今回はEKSで構築したKubernetes上にCI/CDツールをデプロイしてみた結果について書きたいと思います。「Kubernetesで上手く使えそうか?」という観点の簡易的な動作確認を行う内容なので、このまま商用利用する…

[StackStorm] mysql Pack 使ってみた

DBから取得した値をslackに返す、StackStormのPack検証記事(mysql編)

GKEを使ったk8sの起動方法~Dockerイメージのローリングアップデート

みなさん お疲れ様です。和田です。 APCブログ初投稿になります。 至らない点あるかもしれませんが、よろしくお願いいたします。 本記事では、重点施策(k8sチーム)で検証した内容となります。 k8sでDokerイメージのローリングアップデートってどうやるんだろ…

Product Manager Conference 2018に参加して感じたこと

先進サービス開発事業部のKunimoriです。 元ネットワーク・サーバエンジニア。現在は新規プロダクトの事業責任者としてチームメンバーと関連部署のみなさまに助けられながら事業を進めています。 直近1年くらいはプロダクトの営業を中心に数字を追う日々を過…

ネットワークエンジニアがMacで業務するために必要なツールたちまとめ

この記事は、エーピーコミュニケーションズ Advent Calendar 2018 の11日目のエントリです。 目次 目次 はじめに 慣れ親しんだツールたち Macで使っているツールたち Consoleケーブル / USB変換 ターミナルソフト ログの取得 コンソール接続 連続Ping ファイ…

Terraformを使ってEKSを構築する

始めに 先進サービス開発事業部の山岡です。 Terraformを使ったEKSの構築を試してみる機会があったのでEKSに関する解説とコード、注意が必要と思ったポイントについて書きたいと思います。 EKSの解説 EKSは何をしてくれるのか? EKSはKubernetesのマスターノ…

Golangの独自型を使い引数の順番ミスを減らす

先進サービス開発事業部の山岡です。 Golangには他のプログラミング言語と同様関数があり、これに引数として値を渡すことで見通し良く様々な機能を作ることができます。しかし関数に複数の引数を渡す場合、時折順番間違いが問題となることがあります。 例え…

testeratorで高速にGAE/Golangのテストをしよう

始めに 先進サービス開発事業部の山岡です。 GAEにはローカルでクラウドの環境をそこそこ再現できるSDKが用意されており、疑似的にDB(Datastore)等が再現され動作確認を行うことができます。実環境へのアップには1,2分はかかり、ちょくちょくアップしながら…

NEEDLEWORKで any any 試験の実行を検討する

始めに 先進サービス開発事業部の山岡です。 弊社製品の一つにファイアーウォールのポリシーテストを自動化するNEEDLEWORKがあります。詳細はリンクを見て頂くとして、簡単に言えばCSVに試験シナリオ(プロトコルやSrc/Dstアドレス等々)を定義しそれを実行…

Datastore Import/Exportの結果をレポートする

先進サービス開発事業部の山岡です。 GCP DatastoreのバックアップにはImport/Exportというサービスを使いますが、これには結果をレポートする機能が無く運用する上で不便です。今回APIをポーリングしSlackにレポートする仕組みを作りましたのでその知見を共…

その名はStackStorm

こんにちは、APCの古木です。 世間ではワールドカップで盛り上がっていますが、 いかがおすごしでしょうか。 日本代表の戦績が気になるところですが、秋田犬「マサル」のその後も気になります。 先日、唐突にStackStormのPack評価の記事をアップしました。 …

[StackStorm] Twitter Pack 使ってみた

■ はじめに APCの佐々木です。 StackStorm(以下ST2)にはPackという連携するシステムごとに Sensor、Trigger、Action、WorkFlowをまとめたものが存在します。 Stackstorm Exchangeで公開されているPackを いくつか評価していますので、順次アップしていきます…

if文を読みやすくしよう

先進サービス開発事業部の山岡です。 例えばGAEでバッチ処理を行う際に、商用環境では必ず実行・それ以外の検証環境等では手動起動でのみ実行したいという要件があった時のことを考えてみましょう。 どの環境であるかは appengine.AppID(ctx) でProjectのID…

Datastore Import/Exportの紹介(2/2)

始めに 先進サービス開発事業部の山岡です。 前回の記事の続きで、Datastore Import/Exportによる定時バックアップについて書きたいと思います。 旧世代の仕様ではGAEのcronを使い特定のURLを叩くことで起動することができました。新しい方式でも大筋は同じ…

PAN-OS 8.0の新機能"Clientless VPN"を試してみた

先進サービス開発事業部の内藤です。 今回はPalo Alto Networks次世代ファイアウォールの新機能である、”Clientless VPN”について書きたいと思います。 Clientless VPN機能は「PAN-OS 8.0」から追加されました。 Clientless VPN Clientless VPNとは? どんな…

Datastore Import/Exportの紹介(1/2)

始めに 先進サービス開発事業部の山岡です。 私がバックエンドを開発しているNEIGHBORSはAppEngine(Go)の上に構築されており、データベースはCloud Datastoreを使用しています。 Datastoreはスケーラビリティに優れたNoSQLデータベースで、容量が無制限、Ent…

シェルスクリプトでAppEngineへ簡単・安全にデプロイする

始めに 先進サービス開発事業部の山岡です。 私がバックエンドを開発しているNEIGHBORSはAppEngine(Go)の上に構築されています。 デプロイやトラフィック切り替えの際にはSDKに付属しているappcfg.pyやgcloudを使用することになりますが、極々簡単なスクリプ…

「Apache BeamとGCP Dataflowの紹介」 APC勉強会 8a1 #31 を開催しました

今回は「Apache BeamとGCP Dataflowの紹介」というテーマで、Apache Beam with Pythonでの実装をGCP(Google Cloud Platform)上で試してみた結果を、弊社エンジニア山岡がデモも交えてご紹介しました。 Apache beamとdataflow紹介 from Ryo Yamaoka ■参加者…

【終了しました】技術イベントのお知らせ「APC勉強会8a1:Apache BeamとGCP Dataflowの紹介」

Apache Beamの紹介 10/20(金)に社外向け技術イベント「8a1(ハーイ)」を開催します。 今回はバッチ処理とストリーム処理の両モードに対応したプログラミングモデルである「Apache Beam」を紹介します。まだ日本語の情報も少ない「Apache Beam」。興味のある…

FWポリシーテスト自動化製品「NEEDLEWORK」のご紹介①

ファイアウォールのポリシーテストを自動化する製品「NEEDLEWORK」の販売開始から1年が経過し、先日メジャーバージョンアップもいたしました。 より製品のことを知ってもらうために、何回かに分けてNEEDLEWORKの紹介記事を書いていきたいと思います。 目次 …