橋本技研ブログ売れるホームページ研究所、橋本技研の技術系備忘録ブログ。ショッピングカートシステムの制作などが得意です。ウェブサーバ運用あるウェブサービスを作ろうと思っているのですが、せっかくなのでDockerを使ったスケールの勉強も兼ねてVPSサーバで遊んでいます。OSがあるのを知りました。CoreOSは必要最小限のソフトウエアで構成されていて、使用されるメモリも小さく、コンテナを動作させる際のオーバーヘッドも小さいそうです。標準でetcdを使用したクラスタリング機能が搭載されている点にも魅力を感じました。ウェブサービス構築に向けて、CentOS7のサーバを用意し、カーネルのバージョンアップなどもして準備を進めていましたが、方向転換してCoreOSを採用することにしました。使い始めて分かったのですが、CoreOSはパッケージマネージャーを持っていません。一般的なOSと異なる点が多く、ネットで情報を収集しながら環境の構築を始めたのですが、どうも僕の手元のCoreOSと状況が一致しません。Linodeという海外VPSを使用していたのですが、そこのCoreOSイメージが特殊なのかなと思いつつ、Linodeのコミュニティを覗いていたところ、どうやらCoreOSは最近になって大きく仕様が変わったようです。CoreOSの公式サイト上にも新旧の情報が混在して掲載されていますので、みなさんかなり混乱してるようでした。https://www.linode.com/community/questions/427/help-i-am-running-coreos-and-need-to-add-custom-cloud-configCoreOSは「cloud-config.yml」に仕様を記述してインストールする仕組みだったようですが、現在はIgnitionという仕組みに変更されたようです。Linodeの場合は最初起動時に一度Ignitionが走るのみで、カスタマイズは出来ないようです。そんなわけで、Linode上のCoreOSに関するネットワークとETCDの設定について、備忘録として記事を残しておきたいと思います。v.18からは、Etcdなどのキーバリューストアなしで、マルチホスト・ネットワークが使えるらしいネットワークの設定なにはともあれ、Linode上にCoreOSのマシンを作ります。マルチホストネットワーク用に、プライベートIPを割り振っておきます。CentOSなどの場合は、自動的にプライベートネットワーク用の設定が行われるのですが、CoreOSは自分で設定する必要があるようです。https://www.linode.com/docs/networking/linux-static-ip-configuration/この例に従って、以下のようにネットワークの設定を行いました。※IPアドレスは環境に応じて変更してください。address:Address=192.168.133.234/17リブートするかネットワークサービスの再読み込みを行えばプライベートIPが使用可能になります。ETCDの設定Dockerでマルチホスト・ネットワークを使用するにはキーバリュー・ストアが必要とのことなので、CoreOSに標準でインストールされているETCDを使います。ETCDの設定ファイルに、ネットワークの情報を記述します。1"今回はプライベートネットワークでしか使わないため、SSLの設定は省いています。OS起動時に実行されるように設定します。etcd-member.service無事に起動しているか確認します。etcd-member.service失敗しているようであれば、以下のコマンドで原因を探りましょう。使う必要があるということがここで判明します。残念ながら、LinodeのCoreOSイメージではどちらも使えないので、ゴールの目前で詰んでしました。v.18からは、Etcdなどのキーバリューストアなしで、マルチホスト・ネットワークが使えるらしい困り果ててググりまくっていたら、Docker18からはEtcdなどのクラスタリング機能なしに、swarmが使用できてオーバーレイネットワークが使えるみたいです。現時点では日本語の情報はほぼ見つかりませんが、公式サイトにそう書いてあったのでたぶん大丈夫でしょう。swarmのお勉強に進みたいと思います。bagooon橋本たかし★ホームページの制作(デザイン・コーディング・プログラミング)に加え、ネットショップの販売促進に関するアドバイスも致します。20年以上に渡って実際にネットショップを運営した経験を生かし、聞きかじりではない実績を伴ったノウハウを、自分の言葉でお伝えいたします。プログラミングの経験は30年以上。PHP、Ruby、Perl、JavaScript、Vue、Nuxt.JS、MySQL、Elasticsearch、サーバー構築、Dockerなど、幅広く対応します。自分記念日というウェブサービス兼アプリを公開しているのですが、ある日を境に通知のメールが届かなくなりました。年間プラン月々払いで契約しています。現在、あるウェブサービスを開発中です。このウェブサービスは、Docker上で運用する予定でして、DBとして採用したMongoDBもやはりD...記事を読むFBLW15という理由でメールがブロックされているようなので、解除の申請をしてみました拝啓、ネットショップの店長様。先日、お客様にメールを...記事を読むImageMagickでAIファイル(イラレ)をPNGに変換する方法イラレファイルを、ウェブサーバー上でPNG画像に変換できないかな~と思って調べたら、あっさり出来たのでメモ。コメントをキャンセルメールアドレスが公開されることはありません。サイトをVarnishを使って爆速化した話。Composeでお手軽に利用してみた。