Welcome to the Chef Software Documentation! This is the documentation for:
Welcome to the Chef Software Documentation! This is the documentation for:
たくさんのホストをChef設定したいけどChefサーバー立てるのめんどくさいし! でもコマンド一発ですべてのホストが更新されて欲しいし! というわけでこの組み合わせです。 Capistranoはインストール済みでsshのログインに必要な鍵も各ホストに配ってあるものとする。 加えてChefのクックブックなどはすでに定義済みで以下のパスにある前提で。 /home/akahige/chef-repo Chefに関してはここでは深くつっこまないので、よかったら以前書いたものをどうぞ。 chef-soloで作業環境構築の自動化 | ひげろぐ Chefを試してみた | ひげろぐ sudoの設定 chef-soloはsudo経由(root権限)で実行する必要がある。 そしてCapistranoでsudoを実行するにはパスワードなしでコマンドを実行できる必要がある。 そういう事情なのですべてのホストにてs
ちょっと前にリリースされた Berkshelf 3から、Berkshelf APIというインデックスサーバーからクックブックの情報を得るようになりました。 https://github.com/berkshelf/berkshelf/wiki/2.x-to-3.0-Upgrade-Guide https://github.com/berkshelf/berkshelf-api Berkshelf APIを使うと、外部に公開していないクックブックをBerksfileで指定する際の記述が簡潔になります。 まだ日が浅いせいか、Berkshelf API + github:e の情報が少ないので、備忘録も兼ねて残しておきます。 環境は以下のとおりです。 berkshelf (3.1.3) berkshelf-api (2.0.0) Berkshelf APIが必要な理由 Berksfile で c
最近クラッシャーと呼ばれている@masudaKです。 エンジニアのための時間管理術、自動化に関するまとめ - Glide Noteでも述べられているように【自動化】には「スケーラビリティ」や「ミスの可能性を排除」含め多くのメリットがありますが、そのなかでもちょくちょくOSインストール or 増設することがあるエンジニアにはオススメのものということで、今回はChefのインストールに関して書いてみたいと思います。 まず環境構築 ChefはRuby製なので、Rubyが動く環境を作らないといけないのと、わりと依存関係が多いので、ディストリビューションもちゃんと選ぶ必要があったりします。 パッケージでいれたり、gemから入れたり、bootstrapというコマンドライクに入れる方法等色々あるのですが、個人的にはパッケージで入れるのが一番楽でした。 ので、パッケージインストールがサポートされている以下の
直近の仕事でそこそこの規模のインフラを構築する機会ができたこともあり、以前からちょっと気になっていたChefを試してみた。 ChefはPuppetと同じようなインフラの構成管理ツール。現行のバージョンは0.9.8。 Puppetと同じように管理対象となる各マシンにはChefのクライアントを入れ、構成を管理するために一台Chefサーバーを立てるという運用をする。 このサーバーのインストールがけっこうしんどかった。 セットアップには主に以下のページを参照。 Installation – Chef – Opscode Open Source Wiki Chefクライアントのインストール RubyとRubyGemsが入っていればgemでさくっと入る。 必要なRubyのバージョンは1.8.6以上。 $ sudo gem install chef Debian、Ubuntuならばapt-getで、Ce
test-kitchenはopscodeが提供するChefのレシピをテストするための仕掛けで、Vagrantを使って複数のOSやOSのバージョンを立ち上げレシピをテストすることができる。(Vagrant以外も使える) テストはminitestやcucumberなどを使って記述する。 テストの流れは以下のようになる。 設定ファイルに記載されたOSをVagrantで起動する(既にOSが起動している場合はそのまま利用する。ひな形となるbaseboxが存在しない場合は、設定ファイルに記載された入手元からbaseboxをダウンロードする)Vagrant側とレシピが共用され、レシピが実行されるレシピ実行後、テストが実行されるテストが終了すると、OSの設定が複数あれば次のOSを使ってテストするでは早速設定を行なってみよう。まず1つのレシピをテストする場合だ。 1つのレシピをテストする場合まずトップディレ
最近 Chef というシステムの構成を自動で管理するツールを使い始めました。同様のツールとして Puppet が有名ですが、レシピを内部DSLで記述出来るほうが自分には合っていると思ったので、今回は Chef を採用しました。折角覚えたので復習も兼ねてエントリを起こしてみます。このエントリがChefの導入を検討している方への手助けになれば幸いです。 Chefの仕組み – 意外と依存関係が面倒なChef Server# Chefの基本的な仕組みは、サーバに設定を置き、クライアントがサーバに問い合わせるPull型のシステムです。クライアントはサーバからのレスポンスに従いパッケージのインストールなどを行います。しかし、Chef ServerはRuby(Merb), CouchDB, RabbitMQなど依存が多く、お世辞にもシンプルなシステムとは言えません。そのせいかネットで検索して出てくる情報
はじめに VCCWはVagrant + Chef ベースのWordpressのプラグイン / テーマ開発環境です。VagrantとVirtualBoxをインストールすればコマンド数回で仮想マシンが立ち上がり便利なWordpress開発環境ができあがります。ローカルのXAMPPやLAMPを卒業したい、そんな方にお勧めです。 動作環境 VCCWはVagrant 1.5以上、VirtualBox 4.3以上が必要です。コマンドラインで操作することになるので、あまりコマンドラインを使った経験のないデザイナーさんには敷居が高いかもしれません。 VCCWでできること 公式サイトの箇条書きを抜き出してきただけですが、下記のようなことができます。設定ファイル(Vagrantfile)を書き換えるだけで変更もできます。 コンフィグファイルによる設定変更(Vagrantfile) マルチサイト 管理画面のSS
ちょっと気付くのに遅れたのですが、9/7に"Chef"の最新バージョンである0.10.14がリリースされました。 Chef 10.14.0 Released! - Chef Blog そう、0.10.14と言えば待望の「dry-run」(--noop mode)の機能が付くと、本家のIssue Trackerでも挙がっていたんです。 http://tickets.opscode.com/browse/CHEF-13 DevOps Days Tokyo 2012でも、Opscodeの方から言及があったので、僕的には心待ちにしていました。 あと、Chefのdry-runについては、既に実装がかなり進んでいて、近々0.10.14?あたりでリリースされるという話も聞けて、かなり満足。 「DevOps Days Tokyo 2012」でChefの話をしてきたので資料を公開します - 元RX-7乗りの
世の中テクノロジーはどんどん進化していてもうびっくりです。 CentOSでWebアプリのサーバ環境を作る場合、yumコマンドを実行して、適宜設定ファイルを修正して、デーモンなどを再起動するってなことを毎回やっていたのですが、今はchefによるサーバ構築自動化ができるわけです。 そのchefを利用するにはRubyをインストールしてgemからchefのパッケージをインストールする必要があったのですが、これも最近Omunibusというコマンド一発でできる仕組みができて更にらくちんになりました。 というわけで、gitリポジトリにchefのcookbookを置いて管理し、これをセットアップするサーバーにpull、chef-soloを実行して、環境構築を自動化してしまう手順のサンプルを以下にまとめてみました。 https://github.com/kohkimakimoto/chef-for-cent
ChefとCapistranoの境界線 (Chef Casual Talks Vol.1) #eytokyo #opschef_ja 大きく分けて二つの話をしました。 Chefを導入する時の「考え方」 Chefのような構成管理ツールは万能でやり方もたくさんある(TMTOWTDI)ので、最初にどういうポリシーで組み立てるかが重要になります。今回「本気で使う」にあたり、以下のようなポリシーを設定しました。 原則サーバ上で作業せず、Chefで環境設定を実装する 公開されたcookbooksを再利用する opscode-cookbooksにあればそれを探す communityやgithubにあるcookbookを使う あきらめの心を持つ 必要ならばopscode-cookbook�sなど既存のcookbookをforkして手を入れる 半日調べて難しそうなことはあきらめる(自前Chef recip
2日目の続き。 コンセプトはこちらをご参照下さい。 3日目の目標 ユーザ管理(data bag) ユーザ作成 bash_profile管理 sudo ここの段階で ec2-userのsudo権限を剥奪し、新ユーザにsudo権限を付与 security_limit 3日目を始める前に:data bag ユーザ情報など、クックブックを跨るグローバルな値を cookbookにいちいち書くのは得策ではありません。 さらに生で置いておくのも気が引けますね。 そんなご要望にお答えするために「data bag」という仕組みがあります。 databagを作成しておくと、複数のクックブックにまたがっている共通の変数などを保存しておくことができます。 シークレットキーを作成する まずはdata bagを暗号/複合するためのシークレットキーを作成しましょう。 以下のコマンドでdata bag用の鍵ファイルを作っ
chef -> docker Immutable Infrastructure Conference #1 2014/3/25 自己紹介 松崎 啓治(まつざき けいじ) @xga #青モンスター 勤務 所属:データ解析チーム -> Qiita つかってますか? 冪等性 良い 何度もサーバ上で実行 同じ。 同じ。 同じ。 出来上がる環境 何度も同じだ! 良かった が、 管理の問題 えっ たとえば Vagrant boxの構築・保管 構築手順・保管先ドキュメントの整備・保守(wikify) local環境の状態維持(各人で細かい変更したらオワタ) chef cookbookを更新した後の確認 開発環境維持に対するモラル 配慮し続けないとつらい 処理系のバージョンが人によって異なるとか。 chefでつらいこと cookbook変更後のチェック chefバージョンアップ後のチェック cookboo
『Chef実践入門 ~コードによるインフラ構成の自動化 (WEB+DB PRESS plus)』をご恵贈いただきました。毎度ありがとうございます。 Chef実践入門 ~コードによるインフラ構成の自動化 (WEB+DB PRESS plus) 作者: 吉羽龍太郎,安藤祐介,伊藤直也,菅井祐太朗,並河祐貴出版社/メーカー: 技術評論社発売日: 2014/05/22メディア: 単行本(ソフトカバー)この商品を含むブログ (5件) を見る Chefについては、先日「書評『Chef活用ガイド - コードではじめる構成管理』」にて、ほぼ同時期に刊行された別の本について述べたところです。僕自身のChefやInfrastructure as Codeへの考えについては、繰り返す必要もないでしょう。そちらのエントリをご覧ください。 さて、こちらの本は「実践入門」というだけあって、実際に手を動かしながらChe
2012年09月28日 chef-soloを使ってサーバ設定を自動化して楽をしよう! 〜chef-soloの使い方〜 アドウェイズエンジニアの波切です、こんにちは。 秋口に入ってようやく暑さも一段落してきましたね。 ここ最近は、ただひたすらサーバ設定をする日々が続いていました。というのも、新サービスが次々に開始したり、既存のサービスに大きな提携先が加わったりというのが重なって、突如として多数のサーバ設定の仕事が僕に降り掛かって来たからなんです! chef-soloを導入するまでの経緯 そのサーバ設定作業なのですが、最初のうちは、手順書を作って、一人ちまちまと作業していたのですが、「パッケージのインストール」、「ソースのコンパイル」、「CPANモジュールのインストール」等々、サーバ設定の作業は、結構待たされる事も多く、コマンドを叩いては、しばらく待ってまた、コマンドを打つというような単純な繰
半歩進むChef-Solo 最近、Vagrant + Chef-Soloによるローカル開発環境Boxイメージ構築自動化に取り組んでいます。 Cookbookをつくるうえでのノウハウがたまってきたので、まとめの意味も込めて「半歩進むChef-Solo」シリーズでエントリ書いていこうと思います。 今日はChefで行う「共通化」についてです。 Cookbookの共通化(recipeとdefinition) Vagrant環境でChef-Soloによる構築自動化を行なっていると、複数の環境で似たような処理を行なっている箇所が出てくると思います。 例えば、同じResouceの組み合わせた処理が何箇所も出てきたり、特定のサーバソフトウェアに関連するセットアップをいろんなRecipeの中でやっていたり。 Chefにはこれらの処理をまとめるために、definitionとrecipeという仕組みがあります。
■ 目 次 プロローグ シェフ! 〜三ツ星レストランの舞台裏へようこそ〜 Comme un chef エピローグ 糸屯ちゃんのおまけ - Blog Ranking Lists プロローグ おはようございます MCの白石です 本日のテーマも、怒涛の 洋画セレクション です では、わたくしの方からお送りする洋画のご紹介をさせて頂きます シェフ! 〜三ツ星レストランの舞台裏へようこそ〜 Comme un chef です! それでは、皆さん 楽しんでってくださいね (✿╹◡╹)b ワープ!!. . . . ............................................... き、きえるぅぅぅ。。。( ̄□ ̄ *)( ̄□:;.:... ( ̄:;..::;.:. :::;... ... .. . . . . . . . シェフ! 〜三ツ星レストランの
「ChefDK 0.3.0」には、新たに「Chef」をより簡単に使い始められるようにする「Policyfile」機能を搭載する。ただし、「Policyfile」機能は完全な実装を終えていないプレビューリリースであり、同機能のテストにあたっては、インターネットに接続していない独立したネットワーク環境での使用を推奨している。 なお、「Policyfile」機能の導入によって、既存の機能が置き換えられるか、今後も「Policyfile」機能を継続して利用できるかなどについては、現状ではまだ何も決定されておらず、ユーザーコミュニティで引き続き議論を続けていくという。 対応OSは、Windows 8.1/8/7、Windows Server 2012 R2/2012/2008 R2、Mac OS X 10.9/10.8、Red Hat Enterprise Linux 6、Ubuntu Linux
Chefでサーバー構築を全部自動化して、借りているさくらVPSに当ててみた。意地でも手作業はまったく入れない完全自動構築設定。これはよい。毎回手作業やらずに済むというのは、抜け漏れをなくすという点でも、構築時間を短縮するという面でも本当に楽。 前提 今回構築するサーバーの前提は次の通り。 CentOS 6.4環境で試行 vagrantを使って試験後、さくらVPSに対して適用 基本の設定として以下を実施 構築用のユーザーを作成 構築用ユーザーにsudo権限を付与 構築用ユーザーを秘密鍵認証でsshログイン許可 rootによるsshログインを禁止 パスワード認証によるログインを禁止 sshのポート番号を変更 ssh, http以外のアクセスをiptablesでシャットアウト nginxを導入 将来的にunicornを入れるための設定を準備 極力サードパーティクックブックは使わない(ブラックボッ
Adoptable Cookbooks List Looking for a cookbook to adopt? You can now see a list of cookbooks available for adoption! List of Adoptable Cookbooks Supermarket Belongs to the Community Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repositor
よく使うものを逆引きできるように。 アンチパターンを知る http://www.slideshare.net/JulianDunn/beginner-chef-antipatterns http://www.creationline.com/lab/3080 すべてのChefデータを1つの巨大なGitレポジトリに入れてしまう cookbooksにはバージョンがあるが、environmentsやrolesにはない cookbooksとして分割すべきものはリポジトリを分けるべき 会社名つきの巨大なCookbookを作ってしまう 本来組み合わせるべきでないものが混ざる危険がある プロジェクト別に分けるべき Environmentsを論理的な環境以上の目的で使ってしまう developmentとかproductionとか論理的な環境で使い、クラスタとかデータセンターといった割り当てに使わない Co
VCCWはVagrant + Chef ベースのWordpressのプラグイン / テーマ開発環境です。VagrantとVirtualBoxをインストールすればコマンド数回で仮想マシンが立ち上がり便利なWordpress開発環境ができあがります。ローカルのXAMPPやLAMPを卒業したい、そんな方にお勧めです。 動作環境 VCCWはVagrant 1.5以上、VirtualBox 4.3以上が必要です。コマンドラインで操作することになるので、あまりコマンドラインを使った経験のないデザイナーさんには敷居が高いかもしれません。 VCCWでできること 公式サイトの箇条書きを抜き出してきただけですが、下記のようなことができます。設定ファイル(Vagrantfile)を書き換えるだけで変更もできます。 コンフィグファイルによる設定変更(Vagrantfile) マルチサイト 管理画面のSSL接続 サ
Better Relationships. Smarter Decisions.Docker Is Awesome Docker is the product that has excited me most in dev-ops in the past year. The simple abstraction it gives to the combination of already powerful linux containers (LXC) and copy-on-write file systems (like AUFS) is both useful and fun. I’ve occasionally heard skepticism about just how amazing it is made out to be. I’d like to explain why I
システムの設定・運用作業を自動化するオープンソースソフト「Chef」が注目を集めている。作業手順はRubyベースのコードで記述。その内容が管理対象サーバーに反映され、常に状態が維持される。開発担当者と運用担当者が協力して作業する「DevOps」に向く。 「Chefはなくてはならない存在」。こう話すのは、サイバーエージェントの並河祐貴氏(アメーバ事業本部ピグディビジョン)だ。並河氏はオンラインゲームのアメーバピグ事業で、システムの設定・運用を自動化する「Chef」を利用している。2010年から徐々に適用を拡大し、今ではChefを使って約1000台のサーバーを運用している。「今年10月にデータセンターを移設した際、1日当たり200台ものサーバーの設定を変更した。それが実現できたのはChefのおかげ」(並河氏)という。 並河氏だけでなく、国内でChefに注目するエンジニアは増えている。「セミナー
July 31, 2013 2013/12/25 update Testing #chef Cookbook by #serverspec #devopsの続きみたいなものですが Chefのjsonファイルでフラグ立てたりしてると、そのフラグによって テスト対象が変化する場合があるかと思います。 その場合、serverspecにはpropertyの機能があるのでそれを利用します。 spec/spec_helper.rb {% gist 6118553 spec_helper.rb %} set_propertyの項目を追加します。 nodes/host.json {% gist 6118553 nodes_host.json %} こんな感じでこのMySQLはSlaveですみたいなフラグがあって cookbooks/mysql/templates/default/my.cnf.erb {%
Opscode Chefが、IBMと協業発表、Windows Azureにも対応。エンタープライズでの存在感を高める インフラの自動化やデプロイツールとしてよく知られているのがOpscodeのChefとPuppet LabsのPuppetの2つですが、IBMとマイクロソフトが相次いでChefへの支援を発表したと、InfoQの記事「IBMとMicrosoftがOpscode Chefを支援」で紹介されています。 IBMがOpscodeと協業 IBMは「エンタープライズDevOps」に取り組んでおり、そのツールの1つとしてChefを積極的に利用することを、プレスリリース「Opscode and IBM Join Forces to Bring Open Source Cloud Automation to the Enterprise」(OpscodeとIBMは協力してオープンソースのクラウド
Railsアプリケーションの検証用環境のお話です。 普段Railsアプリケーションを開発しているローカル環境とアプリケーションが本番稼動する環境との間では、OS、ソフトウェアの種類、設定ファイルの設定値等にかなり差があります。そこで、本番環境相当の環境(以後、ステージング環境と呼びます)をローカル端末の仮想マシン上に作成し開発中のアプリケーションを動かすことができれば、本番環境でしか発生しないバグの対処や開発環境では動かす予定のない機能の検証が簡単にできるので非常に便利です。 環境構築は自動化し、環境を壊してもコマンド一つですぐにまた再構築できるようにします。 今回作成する環境の概要図です。 ローカルマシン上に仮想環境をコマンドラインで作成、操作するツールで、仮想化ソフトウェアのフロントエンドになります。開発環境や本番環境で使いたいOS、ソフトウェアがインストールされた環境を簡単に作成する
連載目次 6回にわたる連載も、今回が最終回となりました。WordPress環境構築レシピの最後の仕上げの部分と、上達のためのポイントについて触れます。 まず、連載第3回の「WordPress構築で学ぶ、サーバー構築作業をChefのCookbookとして記述するためのポイント」で解説した「構築環境の前提条件」と「Cookbookの作成方針」を再度記載しておきます。 WordPress構築環境の前提条件 OSはCentOS 6.6を使用 ApacheとMySQLは同一サーバー内(「ノード」)にインストールする MySQLはRemiリポジトリを使用してインストールする 「wp.example.com」というバーチャルホストを作成し、ホスト名を「wp.example.com」、ドキュメントルートを「/var/www/wp.example.com/wordpress」とする エラーログとカスタムログ
Chef使いの皆さんなら、Chefから、Local Modeが使えるようになったので、Chef-Soloから乗り換えるといいよといったようなアナウンスを聞いているかと思います。 これは、普段Chef-soloを使っていた私からすると、次の手を探さないといけません。まだ方法は模索中ですが、chef-provisioningを使う方法がすんなり出来たのでその手順を共有したいと思います。とりあえず、簡単にサクッとやりたいんや! 1. Chef-soloからChef-zeroへは甘くない Chef-soloは便利でした。ChefServerなしで、レシピをプロビジョニングできるのでとてもお手軽でした。日本ではそのシンプルさから多くの人に好まれているようです。私も同じです。ところが、この度Local Modeが出来て、Chef-zeroという、ローカルで動作するインメモリのChefServerを使う
概要 Test Kitchenの役割 以下を自動でやってくれます。 Dockerコンテナ起動 起動したDockerコンテナにChefレシピを適用 その後Serverspec実行 Dockerコンテナ破棄 環境 OS CentOS 6.5 このホストでTest KichenやDockerを動かします。 関連ミドルウェア 事前にインストールしておきます。 バージョンは以下のものを使用しました。 docker-io-1.0.0-6 test-kitchen-1.2.1-1 kitchen-docker-1.5.0-1 serverspec-1.11.0-1 テストするレシピ CentOS6系のサーバーに適用するレシピです。 /root/chef/repo/site-cookbooks/centos6/recipes/httpd.rb httpdのインストール デーモン起動 自動起動設定 これらを
こんにちは。@jedipunkz です。 自動化の基盤を導入するために色々調べているのですが、監視も自動化しなくちゃ!と いうことで Sensu を調べてたのですが Chef との相性バッチリな感じで、自分的にイ ケてるなと思いました。 公式サイト http://www.sonian.com/cloud-monitoring-sensu/ ドキュメント http://docs.sensuapp.org/0.9/index.html 開発元が予め Chef の Cookbook (正確にはラッパー Cookbook 開発のための Cookbook で Include して使う) を用意してくれていたり、インストールを容易にする ための Omnibus 形式のパッケージの提供だったり。Omnibus なのでインストールと共 に Sensu が推奨する Ruby 一式も一緒にインストールされます
Chef Downloads Let’s get you started! If you are new and would like to try Chef, click below to get the download. If you are a current user, access the customer portal to get the supported versions. If you are a community user, access the community portal to get the open source download version. For New Chef UsersDo you want to try Chef software for the first time? Infrastructure Configuration Man
2012年7月21日に大崎のフューチャーアーキテクトさんで行われたChef de DevOpsで話してきましたのでその際の資料を公開しておきます。 なお、内容については2011年12月くらいに行ったワンクリックデプロイ勉強会の資料とほとんど同じですので、以前にご覧になっている方にとっては目新しいものは何もありません。 新作作りたかったのですがごめんなさい。 言いたかったことは色々あったりしますが、道具としてのツールを使いこなすのはプロとしてとても重要であるのは前提とした上で、それでも単にツール単体の話をする前に、もうちょっと大きな全体像をとらえる必要があるということです(仕事じゃないなら好きにすれば良いですがね) 目先の効率化ももちろん重要ですが、それがプロダクト全体に対してどう作用するのかというのを理解せずに進めてしまうと、周りの理解も得られませんし、長期的に物事をよりよくするという流れ
IBM、DevOpsを実現する統合ツール「SmarterCloud Continuous Delivery」発表。Jenkins、Chef、jUnitなど含み、ビルド、テスト、デプロイ、モニタリングを一気通貫に IBMは、統合されたツールでシステムの開発からテスト、デプロイ、モニタリングまでを行うことで、開発チームと運用チームが分け隔てなく協調できる、いわゆるDevOpsを実現する統合ツール「SmarterCloud Continuous Delivery」を発表しました。 DevOpsとは具体的な手法の名前ではなく、開発(Dev)と運用(Ops)が協力し合う方向性のことを指します。そのうえでDevOpsを実現する方法として一般的によく用いられているのは、アジャイル開発の考え方を運用にまで広げたContinuous Integration(継続的統合)やContinuous Deliver
久々のblog更新。 日本Chef User会のFacebookで紹介されている Chefのハンズオントレーニングイベントに参加してきました。 Japan Chef Users Group | Facebook トレーニングの講師は、Opscode社のSean OMeara 氏。 全部英語でしたが、(たぶん)普段普通に話すよりゆっくり話てくれてたのと、 周りのスタッフの方々が通訳してくださって、内容は大体把握できました。 ただ、やっぱり質問は流暢な英語でしたかった(´・ω・`) また、対象者がChefをさわった事がある方 (初級の上〜中級の下)でしたが、 なぜConfiguration Managementが必要なのか、なぜChefなのかとか、 割りと基本的な話を最初にしてくれて内容整理できてよかったです。 以下、自分が気になったところのまとめです。 cookbookのテストについて Ch
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く