タグ

ブックマーク / blog.cybozu.io (11)

  • Squid で安全なインターネットアクセス環境を構築する方法 - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは。情報システム部の松平です! 今回は社内ネットワーク内から安全にインターネット上の Web サービスを活用するためのプロキシ構築方法を紹介します。 1. Web プロキシの NAT に対する利点 企業では、ルータやファイアウォールなどの NAT 機能を利用して、社内ネットワーク内のコンピュータからインターネットにアクセスすることが多いのではないかと思います。 NAT の構成では、悪質なサイトなど、特定のサイトへのアクセスを IP アドレスでしかブロックできない場合があります。 IP アドレスでブロックした場合、AWSAkamai といった CDN まで対象に含めてしまうと、まったく関係のないサイトで利用されている CSSJavaScript ファイルまでブロックしてしまうケースが出てきます。 そこで注目したいのが Web プロキシである Squid の活用です。 Web

    Squid で安全なインターネットアクセス環境を構築する方法 - Cybozu Inside Out | サイボウズエンジニアのブログ
    sunaoka
    sunaoka 2023/04/06
  • もうリリースは怖くない ― 大きな変更を安全に本番適用するTips - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、AWSkintoneのDevOpsエンジニアをしている@ueokandeです。 AWSkintoneは2019年9月のローンチから現在まで、幾度となく機能改善をしてきました。 ローンチ当時よりも利用者が増え、スケーラビリティのために内部設計を大きく変更することもあります。 先日公開したメール送信の設計変更もその1つです。 blog.cybozu.io 安定運用のために必要なリリースではありますが、実装を大きく変えることで不具合混入のリスクもあります。 それだけではなく、パフォーマンス改善のつもりが、番環境に投入して逆にパフォーマンス低下が発覚するというケースもあります。 この記事では、大きな変更を安全にリリースするためのTipsを紹介します。 記事の最後ではSpring Bootの実装例と、Kubernetesでの実現方法も紹介します。 切り戻し戦略 大きな変更を安全にリ

    もうリリースは怖くない ― 大きな変更を安全に本番適用するTips - Cybozu Inside Out | サイボウズエンジニアのブログ
    sunaoka
    sunaoka 2021/07/28
  • MySQL のレプリケーションから10年間逃げてきた我々が学んだこと8選 - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは。クラウド運用チームで SRE をしている飯塚です。 今回は、MySQL のレプリケーション機能を約10年もの間ずっと使ってこなかった私たちが、レプリケーションを使った高可用性構成に移行するための取り組みの中で学んだことについて紹介します。 背景 巨大なテーブルへの primary key の付与 トランザクションサイズが大きい場合には tmpdir に注意 mysqldump絵文字が消えていないか要チェック mysqldumpError 1412: Table definition has changed... で失敗する mysqldump したデータのリストアが Duplicate entry 'xxx-yyy-PRIMARY-n_diff_pfx01' for key 'PRIMARY' で失敗することがある mysqldump したデータのリストア時のディスク

    MySQL のレプリケーションから10年間逃げてきた我々が学んだこと8選 - Cybozu Inside Out | サイボウズエンジニアのブログ
    sunaoka
    sunaoka 2020/10/27
  • ドキュメントの文章校正には、textlintが便利 - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは! 開発部 テクニカルコミュニケーションチーム(以下、TCチーム)の原嶋です。 さてさて。 みなさん、ドキュメントの文章校正(以下、校正)ってどんな風にやっていますか? 目視チェックでバッチリだぜ!という方も もちろんいると思うのですが、チェックポイントが多いと指摘が漏れてしまいがちですよね。そして、会社の公式文書となれば、チェックポイントはあれもこれもと山のようになります。 TCチームでも長年 校正に頭をかかえていましたが、textlint と+αのツール を使って、校正の悩みを解決しました。 今回はその経緯をお話させてください。 校正って確認する項目がたくさん TCチームでは、サイボウズ製品のユーザーサポートコンテンツ(ヘルプやリリースノートなど)を作成しているのですが、 それらのコンテンツは会社の公式文書なので、毎回の校正でチェックする項目が多々あるんです。 校正おわったー

    ドキュメントの文章校正には、textlintが便利 - Cybozu Inside Out | サイボウズエンジニアのブログ
    sunaoka
    sunaoka 2020/09/13
  • CircleCIで勝手に強くなる静的解析の作り方 - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは。Garoonチームの杉山(@oogFranz)です。 以前 #PHPerKaigi 2020 にて、「静的解析の育て方」というタイトルで発表いたしました。この発表ではレガシープロダクトにおいて静的解析が有効であることと、「育てる」という比喩表現で静的解析のルールを強くしていく戦略についてお話ししました。 発表後のAsk the Speakerでは様々な方から講演へのフィードバックをいただき、特に既存のプロダクトに静的解析の導入・運用する大変さやその改善方法に関して議論を深めることができました。議論に参加いただいた皆様大変ありがとうございました。 議論の中でルールを自動的に強くしていく方法のヒントをいただきました。そのヒントを元にCircleCIで勝手に強くなる静的解析が実現ができたので紹介したいと思います。 勝手に育つ静的解析の作り方 通常、レガシープロダクトにおいて静的解析を

    CircleCIで勝手に強くなる静的解析の作り方 - Cybozu Inside Out | サイボウズエンジニアのブログ
    sunaoka
    sunaoka 2020/07/08
  • サイボウズ版 MySQL パフォーマンスチューニングとその結果 - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、アプリケーション基盤チームの青木(@a_o_k_i_n_g)です。先日親知らずを抜歯した時、つらすぎたので MySQLJOIN のことを考えて心の平静を保っていました。 サイボウズの製品のひとつである kintone はニーズに応じて自由に業務アプリのようなものを手軽に作ることができ、データの検索条件やソート条件も細かくカスタマイズ可能で、様々なレベルでのアクセス権も設定可能という非常に便利なツールです。 しかしその機能を支える裏側では複雑なクエリが発行され、MySQL に多大な負荷をかけています。サイボウズのクラウドには数十テラバイトに登る MySQL データがあり、数千万件オーダーのテーブルを複数 JOIN するクエリが毎秒のように実行されるという、エンジニア魂が滾る環境です。 現在サイボウズでは性能改善に力を入れており、僕もその業務に従事しています。例えば2018年

    サイボウズ版 MySQL パフォーマンスチューニングとその結果 - Cybozu Inside Out | サイボウズエンジニアのブログ
    sunaoka
    sunaoka 2018/08/08
  • もうサムネイルで泣かないための ImageMagick ノウハウ集 - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちわ、アプリケーション基盤チームの青木(@a_o_k_i_n_g)です。好きなみかんは紅マドンナです。 今回は、サイボウズのサムネイル事情について記事を書きたいと思います。サイボウズに限らず通常の Web アプリケーションでもサムネイル作成はよくあると思いますが、ハマりどころが多く涙しているサムネイリストも多いかと思います。これからの時代を生きるサムネイリストが快適なサムネイルライフを送れるよう、知見を共有したいと思います。 弊社では画像変換ツールに ImageMagick を用いており、従って知見は ImageMagick 固有のものがほとんどです。 画像比較は人間の眼で行うべし サムネイル周りに何か修正を入れたら修正前後の画像を比較しましょう。機械によるバイト列の比較では画像の良し悪しがわかりません。頼れるのは人間の眼だけです。肉眼で確認しましょう。 比較できるツールを作ると良

    もうサムネイルで泣かないための ImageMagick ノウハウ集 - Cybozu Inside Out | サイボウズエンジニアのブログ
    sunaoka
    sunaoka 2016/01/06
  • nginx の設定をレビューするときの観点をまとめてみた - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは。 インフラチームの野島(@nojima)です。 チームのメンバーに nginx の設定について気をつけるべき点を共有するために、レビュー観点を書きました。 せっかくなのでここで公開します。 ほとんどの項目は自分やチームのメンバーの実体験に基いています。 レビュー観点 server server_name が他のやつと被っていないか。 listen する IP アドレスが同じ場合、server_name で区別できないといけない。 TLS を使う場合、SNI をサポートしないクライアントでは TLS 用の設定が default_server のものが使われる点にも注意。 TLS を使う場合、listen ディレクティブに ssl オプションを書いているか。 location location のマッチの順番に注意 正規表現の location は前方一致の location より

    nginx の設定をレビューするときの観点をまとめてみた - Cybozu Inside Out | サイボウズエンジニアのブログ
    sunaoka
    sunaoka 2015/11/20
  • 完璧な監視システムの作り方 in cybozu.com - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは、Hazama チームの萩原(@hagifoo)です。 ハードウェアは故障し、ソフトウェアにはバグがあり、運用ではミスがおきるもの。もちろん、障害が発生しないのが理想ですが人間が作ったものに完璧はありません。そこで、障害の前兆や発生を捉え、その詳細を運用チームに知らせるための監視システムが必要となります。cybozu.com でも以下のようにありとあらゆるものを監視するシステムを構築し日夜監視を行なっています。 今回は、そんな cybozu.com の監視(モニタリング)システムについてお話しします。 cybozu.com と障害 監視システムの設計 3つの監視 外形監視 症状監視・リソース監視 ログ監視 その他の監視 モニタリングフレームワーク 誰が監視者を監視するのか? まとめ cybozu.com と障害 まずは、監視対象である cybzou.com について説明します。

    完璧な監視システムの作り方 in cybozu.com - Cybozu Inside Out | サイボウズエンジニアのブログ
    sunaoka
    sunaoka 2013/10/28
  • WalB v1.0 リリース - Cybozu Inside Out | サイボウズエンジニアのブログ

    更新情報 2017年6月現在、WalB のプロジェクトページはhttps://walb-linux.github.io/です。 こんにちは.サイボウズ・ラボの星野です. 今日は,効率的なバックアップと非同期レプリケーションを目的とした Linux カーネルドライバ WalB についての簡単な紹介と,そのバージョン 1.0 のリリース告知をさせて頂きます. WalB って何? WalB は「ワルビー」と発音します.名前の由来は Block-level WAL です.WAL は Write-Ahead Logging (ログ先行書き込み) のことで,データベースの一貫性制御等に用いられます. WalB を使うと,オンライン状態のブロックデバイスにおいて,アプリケーションやファイルシステムによるデータ書き込みによって生じる差分データを,ブロックデバイスをフルスキャンすることなく効率的に取得出来る

    WalB v1.0 リリース - Cybozu Inside Out | サイボウズエンジニアのブログ
    sunaoka
    sunaoka 2013/05/29
  • ミニマムなPHP5.4移行ガイド - Cybozu Inside Out | サイボウズエンジニアのブログ

    「サイボウズ・アドベントカレンダー」の2日目です(これまでの記事一覧)。 こんにちは。Garoonのメンテナンスチームの横田です。 JavaScriptだなんだと言っていますが、今日はPHPのバージョンアップの話です。 以前話題になっていた記事やコメントをみると、恐ろしすぎてついていけないです。しかし、いつかはPHPのサポートが切れて、PHP5.4への移行をしなくてはいけません。gkbrモノですよね!特段すごいことでないと前置きしておきますが、できるだけコードを触らずにPHP5.4で動かすためには、どうしたらいいのかをちょちょいと説明しちゃいます! PHP5.4対策 まずは、php.iniファイルのE_STRICTを切ります。PHP5.4ではデフォルトでONになりますので、明示的に切りましょう。 Call-time pass-by-reference(関数呼び出し時の参照渡し)がPHPの機

    ミニマムなPHP5.4移行ガイド - Cybozu Inside Out | サイボウズエンジニアのブログ
    sunaoka
    sunaoka 2012/12/09
  • 1