探検


Docker Part3

■ このスレッドは過去ログ倉庫に格納されています
1login:Penguin
垢版 |
2019/03/08(金) 14:40:20.55ID:VDOvuQ0J
LXCを使った軽量仮想環境。
これからの動向が気になるところ。
情報共有しましょう。

http://www.docker.io/

前スレ
Docker Part2
https://mao.5ch.net/test/read.cgi/linux/1506574845/
2020/01/30(木) 22:07:21.35ID:obKqsaeD
コンテナベースにするなら、インスタンスの存在は完全に見えなくしないとだめだろうね。
そして「これこれの性能を持ったコンテナ」を「いくつ使用するか」で課金する。

あとやっぱりノードのアップグレードに伴う再起動が大変
コンテナ数ノード数が少ないとサービス停止に陥ってしまう可能性が高くなる
アップグレードを放置するとそのうちバージョン古すぎて非対応になるし

なんでみんなk8s頑張ろうとしてるんだろう
殆どの用途では大変なだけじゃないか?
558login:Penguin
垢版 |
2020/01/30(木) 22:14:45.06ID:x2o8za8v
Kubernetesの真の価値はそこで利用出来るソフトウェアにあるのでは?

サービスメッシュとかデータベースのオペレーターとか
なんかk8sで動くhelmチャートが動く環境が欲しいのでなければ
ECSとかでも良いし
そっちのほうが簡単と思う

クラウドの中にクラウドとか言うけどさ
サーバーに自分でインストールして
動かすソフトを作る側に取っては
Kubernetesだけ対応すれば
あらゆるクラウドで動くものが作れるようになった

自社のソフトウェアが様々なクラウドで動くのは、
ビジネスチャンスに繋がるんじゃね?

ソフト自体を配布するんじゃなくて
サービスとして売りたいなら
好きな物を使え
2020/01/30(木) 22:20:59.93ID:rH68C/el
例えて言うなら56コア112スレのXeon買ってきてサーバー作って
そこにESXi入れて、CoreOSを20個インストールしてOS1つあたり
5コンテナ入れてk8s組んで、やったぜ俺スゲーとかw
そんな感じやな。

でそこで動く肝心なサービスの保守は完全に片手間で1日16時間労働w

恥づww
2020/01/30(木) 22:28:12.01ID:fl66aBkL
仕事でGKE使ってんだけど世の中の8割のサービスはこんな仕組み要らんだろうなーと思いながら触ってる
2020/01/30(木) 23:23:25.91ID:8SEpOjSd
>>558
ローカル環境でdockerと比べると、k8sは細やかな制御ができる分やりやすい。
2020/01/30(木) 23:26:57.04ID:8SEpOjSd
k8sはDockerに比べてIngressとロードバランサが優秀。
2020/01/30(木) 23:27:43.78ID:8SEpOjSd
替わりにマシンスペックを食うわけだが……。コントローラで2W近く使う
2020/01/30(木) 23:32:56.27ID:vPq8TLea
k8sとDockerって比べるものじゃないじゃん
2020/01/31(金) 06:06:57.95ID:BYA66tlO
スペックを食うってのもなんだかな
566login:Penguin
垢版 |
2020/01/31(金) 09:44:16.92ID:zr53MAqg
swarmの事もたまには思い出してあげてください
2020/01/31(金) 21:02:32.18ID:PGkHP1z8
>>566
VMからサービス拡大で手軽なクラスタ使いたいから〜、って理由で
Dockerに移行したらのなら、スケール的には一番しっくり来るんだけどね。
流行の技術じゃないから誰も手を出さんのか?まあDocker Swarmできます!
とかじゃ経歴書にかいても自慢出来んだろうけどね。
2020/02/01(土) 09:45:31.61ID:rnZpf00g
ASGとECS組合せて使ってる奴が要るけど、あれは何の役に立つの?
スケーリングされたインスタンス内でCPUと同数のスレッドでサービス立ち上げる事と
何が違うのか全く分からん。事態を面倒くさくしているだけに見えるw
2020/02/01(土) 09:51:47.12ID:a9slqYuq
>>568
デプロイをECSに任せたいだけだよ
自分でホスト弄りたくない
2020/02/01(土) 10:02:57.25ID:rnZpf00g
>>569
それはASGでホストが起動したときに、スタートアップか何かでgit pullする事と
何か違うの?
571login:Penguin
垢版 |
2020/02/01(土) 10:15:11.33ID:Xk5te6Cy
また仮想マシンイメージ最強おじさん?
老害乙wwwwww
572login:Penguin
垢版 |
2020/02/01(土) 10:26:26.63ID:+b4DF/Bv
git pullするって
仮想マシンイメージにアプリの内容を突っ込む訳でも無いのか
goとかJavaだったら毎回ビルド?
老害どころの騒ぎではないな

デプロイ成功するかどうか
同じ結果になるかどうか
毎回やってからのお楽しみって感じ?
時間がいくらでもあるなら
そうすれば良いんじゃない?
2020/02/01(土) 12:47:32.37ID:rnZpf00g
>>571-572
良くわかんねぇけど、もう少し論理的に説明してくれるかな?
うちのシステムは大体それで大丈夫だからね。
574login:Penguin
垢版 |
2020/02/01(土) 12:59:32.03ID:Ps7WDj2g
今度はDockerじゃなくてgit使えば良いおじさん登場か
それで困ってないなら別に良いんじゃない?
2020/02/01(土) 13:07:12.84ID:rnZpf00g
>>574
だから「ASGとECS組合せて使ってる奴が要るけど、あれは何の役に立つの?」って聞いてるじゃん。
君の反論は、デプロイが複雑な場合においては、有効なこともありうる、ってことでオッケー?
それは分かったよ。
ただ、>>556にあるようにDocker自身はコンテナシステムとしてはイマイチだと思う。理由は557と同じね。
少なくとも変なホスト単位のブリッジはやめにしてPOD単位とかService単位で内部ネットワークにしないと
インスタンスが全面に出てきちゃ、導入する意味が無い。ストレージなんかも必要な部分を予めマッピングして
永続化しないと駄目とか、制限が多いし。こんな事いっても君には分からんだろうけど。
576login:Penguin
垢版 |
2020/02/01(土) 13:18:31.70ID:Ps7WDj2g
じゃあ使わなきゃいいんじゃね?
2020/02/01(土) 13:25:27.30ID:rnZpf00g
マジ質問読めよ文網w
日本語通じないなんてDocker使う以前の話だよw
578login:Penguin
垢版 |
2020/02/01(土) 13:30:03.06ID:Ps7WDj2g
Docker使わなかったらOSアップデートは要らないとでも?
普通に要るでしょ
セキュリティ考慮しないから要らないって話?
2020/02/01(土) 13:45:31.37ID:rnZpf00g
>>578
ECSの話してるんじゃないの?
ECSは「インスタンスの上」でコンテナを動かすのだから当然Dockerでも
OSアップグレードは必要で、そういった話をするなら、インスタンスOSと
コンテナ上のOSの両方のセキュリティを考慮しなければならない。
580login:Penguin
垢版 |
2020/02/01(土) 15:00:13.64ID:A9loRdi2
ECSとか関係なく
ASG利用の方が信頼性が高い

ECSはASG無しで使えるように設計されてるのか良く分からない
なんか前の登録内容が残ってたり
ECSエージェントのデータを消さないとインスタンスタイプを変更できなかったりした

通常のEC2
・ルートボリュームの内容は再起動に引き継がれる。システムログの内容やSSHして手動設定した内容はインスタンスを削除しない限り残る。
・AWS障害時に自動復旧させるのは可能だが、必ず成功するとは限らない。
・AWSと関係ないOS内部の問題はEC2 Rescueで復旧を自動化できるかもしれないが絶対ではない。

ASG
・ルートボリュームは毎回新しく作られる
・データの保存が必要なワークロードの場合、起動後にスクリプトで別のEBSをアタッチする、S3に保存されたバックアップから復元するなどの方法が必要
・ヘルスチェックをEC2にした場合、システムとインスタンスの2つのチェックのどちらかに失敗するとインスタンスは破棄されて再作成される
・ヘルスチェックをELBにした場合、ELBからのリクエストに暫く応答しなかったら破棄される

いずれの場合も、自前のヘルスチェックシステムがあるなら
それを代わりに使う事は可能だが
そんな物はうちにはない
581login:Penguin
垢版 |
2020/02/01(土) 15:10:35.63ID:lVg3qEIO
キャパシティプロバイダーでEC2のタスク数とインスタンス数を連動させる場合はASGが必須

キャパシティプロバイダーの登場以前はタスク数と連動させるのは諦めて
EC2の台数もタスク数も固定するか
それぞれバラバラに設定して
高負荷時に両方とも作動するよう神に祈る他なかった

キャパシティプロバイダーが要らない場合でも
ASGにしておけばコケても復旧するという安心感はある
インスタンスを終了すれば必ず同じ設定で起動するからだ

それらが要らないならASG無しでも良いんじゃね?
同じEC2インスタンスだと
インスタンスサイズ変更時に
ECSエージェントが登録失敗する問題は何か解決策があるだろう
582login:Penguin
垢版 |
2020/02/01(土) 15:36:39.64ID:uZkIbDS6
ECSについて言えば、3つのネットワークモードが利用可能

bridge
ポートマッピングを設定した場合、
コンテナにランダムなポートが割り当てられ、外部からアクセス可能になる
同じホスト名で外部からアクセス出来るようにしたいなら、ELBやRoute53を併用する

毎回異なるポート番号になるので、デプロイ時、1つのEC2インスタンスに
同じタスクの新旧バージョンを一時的に同時実行する事が出来る

host
ホストOSと同じネットワークに配置する
ポート番号が衝突するので、
デプロイ時に、同じタスクの新旧バージョンを同じEC2インスタンスで同時実行は不可

awsvpc
ホストOSとは異なるENIにタスクを配置する
異なるENIなので、同じEC2インスタンスでも同じポート番号を利用可能な上に
理論上は最高のネットワーク性能を持つモード
ただし、小さめのインスタンスタイプでは
利用できるENIの数が少ないので
配置出来るawsvpcネットワークモードのタスクは少なくなる
2020/02/01(土) 18:53:25.08ID:ZdsodL/0
俺はGCPメインだからAWSの話はよくわからんなw

AGS? GKEのオートスケーリング機能みたいなもんか?
584login:Penguin
垢版 |
2020/02/01(土) 19:59:11.09ID:wE2puLwI
ASGは多分似たような機能がどのパブリッククラウドにもあるだろう

k8sをAWSで使う場合も
ワーカーノードはASG管理下で、
ルートボリュームはノードを終了する時に捨てるよね
サーバーはいつでも替えの効く家畜だ

k8sでデータベースなどの
ステートフルなワークロードを扱う場合は、
ノードにルートボリュームとは別に
EBSボリュームをアタッチすれば良い

>>583
そもそもASGはオートスケーリンググループの略だから
2020/02/02(日) 01:40:45.56ID:9x081f8g
Kubernetes 航海1日目
https://mao.5ch.net/test/read.cgi/linux/1553389453/
2020/02/02(日) 08:39:22.80ID:cuMP7GqL
何?よう知らんけどEKSでもインスタンスは見えてるの?
インスタンス(VM)を管理してその上で動くコンテナも管理しろとか
コンテナの意味なくね?
2020/02/02(日) 08:52:22.96ID:vTMq3yW0
だからコンテナはアプリをデプロイしやすくするためのものだって言ってんだろ
2020/02/02(日) 09:08:51.99ID:cuMP7GqL
じゃあ、今ここでDocker関連の話題を書き込んでいる連中はもれなく
デプロイに問題があってDocker使ってるという認識なのww?
デプロイをコンテナ以外で解決するくらいならサービスメッシュだ
オペレータだhelmチャートだと学習したほうが効率が上がると判断しているのw?
589login:Penguin
垢版 |
2020/02/02(日) 09:42:45.01ID:TWOzawm+
>>588
は開発どうしてんの?

それぞれバラバラに環境作って開発?

開発、QA環境へのデプロイとテスト
本番環境へのデプロイまで一貫した環境で行えるのがコンテナ技術のメインの魅力だろう

Kubernetesは複雑すぎる気はするが
他に選択肢があまりない
590login:Penguin
垢版 |
2020/02/02(日) 09:54:07.31ID:TWOzawm+
以前、開発も本番も同じ環境においてるという
狂気の環境で開発した事がある
ローカル開発環境はそもそも存在せず

理由は環境の複製が面倒だから
AWSなのにサーバーを家畜のように使い捨てではなく、ペットのように可愛がってた

サーバーに直接Apacheをインストールしており、
基本的にphpをアップグレードする時や
phpの拡張機能を入れるときは
一か八かの賭けに出る必要があった

AMIを複製して他環境で試す?
そんなのやるぐらいならもうDocker使えよ・・・ってなる
それが一番色んな環境に運ぶの楽じゃん
591login:Penguin
垢版 |
2020/02/02(日) 10:02:35.74ID:vLvuWMc2
>>586
昔ながらの方法だったらVMインスタンスもアプリのデプロイも管理しなくて良いとでも言ってるのか?
文句あるなら代替案出せや

スペックに応じたインスタンスが必要なのは
昔ながらの方法でも一緒だろ
2020/02/02(日) 10:31:49.80ID:cuMP7GqL
>>591
代案つーか、コンテナ技術って時期尚早じゃね?サービスを構成する鯖が
10台20台程度なら入れない方が良いと思う。いつの日か>>557が書いたように
完全にコンテナだけ見ていればOKになるなら入れても良い。

例えば10コアのCPUを10台用意して、30個をフロントWEBに、20個をバックエンドに、
30個を同期サーバ、10個をその他、残りはautoscaling用、1CPU=1コンテナとか
このレベルで意思決定が出来て、そのとおり動くならマイクロサービスは素晴らしい
といえるけど、現状そうなってないんだろ?コンテナが物理サーバーに対して透過的
見えるレベルに到達してないつーか。

いつかそうなるんだろうけどね。
今は面倒なだけという気がする。
593login:Penguin
垢版 |
2020/02/02(日) 11:04:46.84ID:mAYLnTD8
>>592
それってデメリットか?
算数が出来れば計算出来るだろ
小規模環境なら台数固定で良いし

OSや、ログ、メトリクス用ポッドの分だけ余裕をもたせて空けておけば良い
それぐらい計算できるだろ?

もしかしてワーカーノードは全部同じグループとか思ってる?
データベースはこのラベルが付いてるノードだけに配置とか、出来るだろ
負荷がデータベースに集中しがちなら、データベースだけ大きなノードのグループで構成するとか

1つのグループに
ごった煮にして配置したりすれば
非常にややこしくなるから
誰もやらない
2020/02/02(日) 11:29:49.61ID:cuMP7GqL
>>593
そういった諸々に対して>>546>>550-555のような問題がありますよ、という話じゃなかったの?

まあ導入前段階で比較したい、という人と既に導入しちゃった人じゃ観点が合わんのはしょうがないけど。
前の人は既存部分との違いを知ることが主な観点になるけど、既に入れちゃった人はその結果起きた問題を
解決することが観点になるからねw
595login:Penguin
垢版 |
2020/02/02(日) 11:43:38.54ID:l4msUzoZ
なんか話が噛み合わないと思った
ノードを常に余らせている大規模環境じゃないと使えないとか
>>550

あらゆる種類のワークロードを
1つのノードにごった煮だと勘違いしていたなら納得
2020/02/02(日) 11:43:41.70ID:cuMP7GqL
>>590
これも、そもそもDocker以前の環境すらまともに運用できなかった人と
Dockerを比べてもなぁ?という話で。もしその狂気の環境の人がDocker使って
k8s入れたとしたら、余計酷くなるだけ(使いこなせるわけが無い)

> AWSなのにサーバーを家畜のように使い捨てではなく、ペットのように可愛がってた

こういう言い方もずっと前からあるけど、実際コンテナとしても「家畜のように」は使えんだろ。
本番で運用するときは当たり前だけど一見ごみの様にしか見えないものでもトラブル解決に
役立ったりするからね。/var/log/httpdだけを永続化しときゃ済むって話じゃない。
1ヵ月後に顧客からトラブルの相談があって、既に再デプロイして非永続領域は消えちゃいました、
ですむなら良いけど。
じゃあどこを永続化しておきましょうかなんて、開発前にすぐに決められるものじゃない。
597login:Penguin
垢版 |
2020/02/02(日) 12:01:17.51ID:TWOzawm+
>>596
>じゃあどこを永続化しておきましょうかなんて、開発前にすぐに決められるものじゃない。

本当に全くDocker使ったことないのに批判してるんだなw
説明しよう

ログは標準出力か標準エラー出力に吐くから永続化はしない
必要ならロギングドライバーを設定するなどして
別サービスに転送する
AWS+ECSならCloudWatchに転送が一番楽

k8sは今のところロギングドライバーの設定はできないので、
コンテナのログを集めるDaemonSetがそれぞれのノードにデプロイするのが一般的
これで全ノードのログを残せる

永続化するのは再起動しても絶対残っていなければならない
データベースのデータなどだけ
どこを永続化するかで悩んだことなんてない
2020/02/02(日) 12:12:02.01ID:cuMP7GqL
>>597
そういやそういう事やってたなとは思うけど、君が説明しているログ収集云々は
汎用的なDockerの話じゃ無くてベンダーが用意している部分ね。

>AWS+ECSならCloudWatchに転送が一番楽

ん?結局こういうことしたらベンダーロックインって事じゃないの?

> どこを永続化するかで悩んだことなんてない

そうなの?
しかしそれはDBとWEBだけの単純サービスだからじゃないの?
ウチのはある領域に一時的なファイルを作って、S3とかにアップするけどそれが
出来てないよ、とかは普通に来るからね。
2020/02/02(日) 12:25:14.51ID:LuowLFof
ベンダーロックインw
あのさ、ECSでコンテナからCloudWatchに出力するのなんて数クリックでできるわけ。
人的なコストなんかほぼゼロ。
ベンダーロックインっていうのはこれまでの投資が無駄になるから他のベンダーへ移れない状態であって、
そもそも投資がゼロなら何の問題もないの。言ってる意味わかる?
600login:Penguin
垢版 |
2020/02/02(日) 12:29:21.34ID:TWOzawm+
>>598
ECS時は最も手軽な選択肢はCloudWatchってだけ
他にも選択肢はあるが
とりあえずAWSで動けば良いなら一番手軽

手間や金がかかっても
とにかくベンダーロックインは嫌だって言うなら
k8sとELKスタックとかになるんでは

ファイルアップロードにS3使えてない場合は
・2台以上でWebサーバーの構成をするのを諦める 
・多少遅くても良いならAmazon EFSに置く
どちらもやらずに解決する銀の弾丸はない
2020/02/02(日) 12:35:08.64ID:cuMP7GqL
>>599
なんつーかそれを聞いてもやっぱり、10台程度のサービスでEKS、ECS面倒臭いという
のが結論やね。100台なら話は全く違うけど。じゃあ10台〜100台の間のどのへんが
ボーダーなのかって点には関心あるけど。
どこが汎用のDockerの話でどこがベンダーに依存するのかとか、面倒くさすぎ。
質問を568に戻そうぜ。
「ある1つのインスタンス内で、1プロセスでCPUと同数のスレッドと立ち上げる事と、
 CPUと同数のコンテナを立ち上げること」は何が違うの?
602login:Penguin
垢版 |
2020/02/02(日) 12:38:55.87ID:TWOzawm+
そもそも規模小さかったらリソースの割当に悩む事ないから
その批判がそもそも的外れ
2020/02/02(日) 12:40:49.50ID:LuowLFof
>>601
その2つを比べるのはおかしい
1コンテナ内で複数スレッド立ち上げてもいいし、goなどのマルチスレッド前提の言語ならむしろその方が一般的。
2020/02/02(日) 12:41:16.96ID:cuMP7GqL
>とにかくベンダーロックインは嫌だって言うなら....
>ファイルアップロードにS3使えてない場合は...

こういう所とかも全部「既存システムでは存在しない問題点に対して解決方法を提示している」様に思えてならん。
他の人はそうは思わんのかな?
2020/02/02(日) 12:46:24.01ID:LuowLFof
>>604
全く意味がわからないな
ログ収集もS3へのアップロードの失敗も既存システムで存在するだろう
2020/02/02(日) 12:59:25.79ID:cuMP7GqL
>>605
VMは再起動しても永続化してるんだから問題調査は可能でしょ。
607login:Penguin
垢版 |
2020/02/02(日) 13:04:25.17ID:TWOzawm+
S3とか使ってないレガシーシステムでも
ECS使うのは可能

可用性が重要じゃない社内用アプリで
インスタンス1台だけのECSクラスターで
データは全てEBSに書いてる物ならある
ログはDocker経由でCloudWatch Logsに出すようにしてるが

時々OSのAMIとか
ECSエージェントを更新すれば
実行環境は最新の状態に保たれる
ログやメトリクスはマネジメントコンソールから見られるし、
デプロイするだけならSSHすら要らないし楽
使わない理由がない

アプリ部分はAWSとか使ってないので、
移そうと思えば他クラウドにも移せる
今の所やる予定ないし今後も無いと思うが
2020/02/02(日) 13:05:37.33ID:LuowLFof
>>606
オートスケーリング使うなら勝手にterminateされて全部消えるよ
大した規模じゃないからオートスケーリングいらないってんなら、君にはコンテナなんて要らないから帰ってね、としか
2020/02/02(日) 13:07:43.56ID:cuMP7GqL
>>608
オートスケーリングはそういう用途じゃないな。
繁忙期のサーバー落ち>障害調査
の場合にのみ使用するとしか言えない。
分からないなら答えないでねとしか。
610login:Penguin
垢版 |
2020/02/02(日) 13:17:05.42ID:TWOzawm+
だからログはCloudWatch Logsに送ればいいって話だろ?

コンテナ毎のCPU使用率やメモリー使用量はメトリクスはECSエージェントがCloudWatchに送ってくれる
2020/02/02(日) 13:17:41.49ID:LuowLFof
>>609
そもそもログ収集してないのに問題のインスタンスの特定とかどうすんの?
台数が少けりゃスナップショット撮ってれば努力と根性でなんとかなるかもしれないけど、
うちの場合はその作業が一度発生したら自前でログ収集の仕組みを構築するコストを余裕で上回る工数だねえ
2020/02/02(日) 13:20:19.30ID:cuMP7GqL
>>607
>ログやメトリクスはマネジメントコンソールから見られるし、

これもね、じゃあ障害解析のために開発者全員がマネジメントコンソール
見れて良いのかとか、微妙で面倒くさい問題が出そうな気がするんですよ・・・。
2020/02/02(日) 13:26:35.87ID:cuMP7GqL
>>611
自分が携わっている範囲内で言えば、インスタンスが特定できずに問題が解決
しなかったなんてことは無いな。コストがかかりすぎた、という事も無い。
ド素人じゃないんだし、それ位分かるよな?としか・・・。
614login:Penguin
垢版 |
2020/02/02(日) 13:27:41.24ID:TWOzawm+
>>612
ログを取るためだけにSSHするのは良いのかよw

AWSの組織機能で細かくアカウントをアプリ毎に分ける、
IAMロールを最小の権限のみにするなどした方がよほどセキュアだ

Cloudwatch Logsは
ローカルにログをダウンロードせずに
簡単な検索や分析も出来る
これもセキュアだろう
2020/02/02(日) 13:59:10.84ID:bYwPQj4X
>>613
それインスタンスが数百台以上あっても同じこと言える?
結局何が言いたいのか知らないけど、何が手でSSHして回れる程度の台数でコンテナなんか要らん、と言いたいならまあその通りだと思うよ
2020/02/02(日) 14:05:41.40ID:cuMP7GqL
>>615
だから結論は>>601だと言っているでしょ。
以後のやり取りのすべてを見てもやはり601やね。
10台以下で運用するのは、まあ、趣味の世界やな。。
悪くは無いけど運用上実利がある訳じゃないよと。
まあ興味があるならやっても良いよ、あるいはもっと大きな
サービス運用業者に転職を視野にいれてしれっとやってみるとか、
そんな感じと思ったね。
617login:Penguin
垢版 |
2020/02/02(日) 14:25:00.17ID:KVZqynku
結局何が言いたいのかサッパリ分からんやつだったな
小規模だったらそもそも台数の調整とか要らないだろって話は無視か
2020/02/02(日) 14:34:13.17ID:cuMP7GqL
>>617
君の言っている事こそ意味不明w。
小規模で台数の調整が要らないらならEKSもECSも要らないっしょ。
ちなみに小規模であることと台数の調整が不要であることはイコールではない。
小規模でも繁忙期に台数増やしたいとかは当然ある。
619login:Penguin
垢版 |
2020/02/02(日) 14:43:53.40ID:TWOzawm+
サーバーを家畜化した方が運用が楽で信頼性も高いのは
1台でも100台でも変わらないと思う
総利益が大きいのはそりゃ100台だろうが

そもそもサーバーの家畜化もできてなかったら
どうやって水平スケールするのか

Dockerなしでも家畜化が出来ていたら、Docker導入のハードルは高くないはずだが
620login:Penguin
垢版 |
2020/02/02(日) 14:50:00.21ID:TWOzawm+
Dockerなしでも家畜化出来てたら
それぞれのサーバーにSSHしてログ取ったりなんていらんはずだけど
まさか手作業で環境を複製してASGもどきをやってるのか?
超無駄じゃね?
ASGでやれよ
2020/02/02(日) 15:15:07.69ID:cuMP7GqL
>>619
>信頼性も高いのは

信頼性が高いといっているのは何を根拠に言っているのか知らんが、
インスタンスの上にDockerエンジン乗せてその上にサービスを展開している鯖と
インスタンスの上に直接サービス(httpdとか)のせてサービス展開している鯖はどっちが信頼性高いのって話だが?
どっちなのw?前者は単純に数が増えているように見えるが?

>1台でも100台でも変わらないと思う

本当にそう思うの?既に「入れてしまった人」は当然操作にも慣れてるだろうし、そもそもコンテナ外して
運用するのは2度手間になるから、1台でもコンテナで、になるんだろうけど本当に1台しか運用していない
会社に自信を持ってそれ、提案できる?1台でもEKS入れましょう、と。

>どうやって水平スケールするのか

つまり君はコンテナ以外じゃやったことが無いって話なんだろ?

>Dockerなしでも家畜化が出来ていたら、Docker導入のハードルは高くないはずだが

俺が直接運用しているサービスはそうやね。例え鯖1台でも「趣味として」EKS化しても全然悪くない
が、世の中にはそうでない人もいるわけよ。500円位の共用WEB鯖+DBとか。
あるいは2万円の1台2台の専用鯖とか。
そういう人に本当にお勧めできるの?
アマゾンに移行して、コンテナ化してEKSしましょう、とか。
本当に?君は本当にそう思うの?

>>620
この書込みは全く意味不明。
宇宙語話してるの?そもそも「家畜化」ってIT用語なのw?
君以外の誰にも通用しない気がするがww
622login:Penguin
垢版 |
2020/02/02(日) 15:28:42.63ID:TWOzawm+
1コンテナぐらいしか動いてないならEKSじゃなくてECSで良いと思うし既にやってる
楽だしお金がそんなにかかんない

CloudWatch Logsは無料分を超えると課金があるが、小規模なので無料分で余裕
これで破産する方が難しい

家畜とペットの例えはさっきしてたじゃん

AWSはEC2インスタンスはASGに入れて使い捨てするか、
EC2の上に乗っけたソフトウェアでレプリケーションを行って、1台は死んでも大丈夫にするのがベストプラクティス
それを行ってないインスタンスで動いてるサービスは止まっても知らねってスタイル
AWSではサーバーは家畜のように扱うべき、と言うのはここから来てる

従来のようにSSHして
手でOSにソフトウェアをインストール・アップデートして、
手でデプロイして、手でログ取得して
ってのはサーバーをペットのように可愛がりすぎ
そんな事やってたら家畜のように扱えない
2020/02/02(日) 15:41:41.27ID:cuMP7GqL
>>622
悪いね、おれエスパーじゃないから、その例えで
「手でOSにソフトウェアをインストール・アップデートして、手でデプロイして、
 手でログ取得してってのはサーバーをペットのように可愛がる」
なんてのは全く忖度できんかったわwww

兎に角君の言っている事は、どっかしらにおかしな抜けがあるから、あさって
の方向の話にしか聞こえないww
じゃあなw
624login:Penguin
垢版 |
2020/02/02(日) 15:44:44.32ID:031eKof+
http://www.no1497.com/?p=598
このサイトの手順丸パクりしてguiのLinux環境整えようとしたんですが
IPアドレス入力しconnect押すところで繋がらなくなります…
一応ifconfigとdocker内でのhostname -iで出てきたアドレス両方と、
ポート二つの4パターンの組み合わせ全部打ったんですが失敗しました。
これ以外のアドレスとかでしょうか?もし思い当たる方がいたら教えてください。
625login:Penguin
垢版 |
2020/02/02(日) 15:46:37.36ID:TWOzawm+
>信頼性が高いといっているのは何を根拠に言っているのか知らんが、
>インスタンスの上にDockerエンジン乗せてその上にサービスを展開している鯖と
>インスタンスの上に直接サービス(httpdとか)のせてサービス展開している鯖はどっちが信頼性高いのって話だが?
>どっちなのw?前者は単純に数が増えているように見えるが?

Dockerのオーバーヘッドなど
元々あってないようなものとマジレス

ASGで動くという事はインスタンスを使い捨て出来てるってこと
AWS側の不具合でインスタンスが死んだり、
仮にSSHして変な設定を間違ってしてしまっても
終了するだけで自動的にインスタンスが再作成され
元のAMIから立ち上がって同じ設定がされて、
Dockerイメージも勝手にダウンロードされてまた動き出すので
元に戻る
よって信頼性が高くなる

動作が遅いけど、死んでるかどうか微妙なインスタンスの破棄は流石に無理だが

既存案件でいろいろ制約があるとかならまだしも
そうでなければECSで良くね?と思う
2020/02/02(日) 16:26:20.24ID:rlDokdVB
久々にPHPの環境構築をしようと思ったんだが今はXAMPP使わずDocker使うのが主流らしいな
試してみるか
2020/02/02(日) 17:56:03.95ID:vTMq3yW0
俺がいない間に随分と進んでるなw

>>592
> 代案つーか、コンテナ技術って時期尚早じゃね?サービスを構成する鯖が

またDocker(コンテナ)とKubernetes(クラスタ)を
ごっちゃにしてるアホがいるのか

サービスでデプロイした経験ないのか?
Wordpressぐらいしたことやるやろ?できるか?何が必要か想像つくか?
PHPだぞ。apache使うとするよな?そうするとmod_phpがいるぞ。
ライブラリ使ってたらPHPモジュールも入れないとだめだぞ
一発勝負で正しく作れるか?んん?

そしたら次は俺が作った動画アップロードとAI機能が充実した独自のスーパーブログだ。
わけって言語は複数使ってる。どうや正しくデプロイできるか?
これ以上の情報は何も教えてやらんぞ。必要な言語、ライブラリ、自分で判断しろよ
一発勝負で正しく作れるか?んん?

コンテナだったら簡単。一発勝負で作れる。
ほらな、デプロイ問題が解決した。
2020/02/02(日) 18:37:50.21ID:cuMP7GqL
>>627
>サービスでデプロイした経験ないのか?

俺が言う台詞だそれはwww
コンテナ以外でデプロイした経験無いのか?んん?
apache使うとするな?本当にmod_phpからやったのか??
んん??アホかお前は!
2020/02/02(日) 18:58:43.16ID:vTMq3yW0
>>628
お前何も言い返してないやんw
俺が言った言葉を復唱しただけやんw
2020/02/02(日) 19:02:44.43ID:cuMP7GqL
>>629
この書き込みから察するにデプロイメントって言葉の意味すら分かってないだろ?
どうしようもないwwあまーーーーりの馬鹿っぷりに呆れて物が言えない。
宇宙人と話すことは出来んな。
マジでスゲー呆然としたよまあ、良いから自分の胸に手をあてて、
Docker以外でデプロイしたことあったかな?と自問してみればww
2020/02/02(日) 19:04:08.66ID:vTMq3yW0
そこでデプロイしたことあるけど?って答えたら
どうレスするんだろうw

はい、言い返してみな。
2020/02/02(日) 19:07:47.33ID:cuMP7GqL
>>631
それなら絶対に627のような書き込みはしない。
2020/02/02(日) 19:16:11.74ID:vTMq3yW0
>>632
理由が何も書いてないので、説得力ゼロ
やり直せ
2020/02/02(日) 19:26:58.84ID:cuMP7GqL
>>633
まあ、分かったよ恥ずかしい奴らw
なんかもう、ね・・・Docker村の事情しか分かってなさそうだから
全てがおかしい。ASGの理解もおかしいし「サービス」って言葉の理解もおかしい。
いっとくが俺が>>592でかいた「サービス」ってのはk8s村でいう"サービス"の事ではなく、
世間一般のIT用号で言う「サービス」だからな。592の書き込みにコンテナ技術の一実装
でしかないDockerとかK8sを念頭において書いていないぞ。
・・・それは、理解できるよね?オッケー?
2020/02/02(日) 19:35:57.19ID:iUJbnHUw
はい理解してます。本題をどうぞ
2020/02/02(日) 19:37:00.69ID:cuMP7GqL
>>635
というわけで>>627の書き込みは意味不明って事で
オッケー?本題はこれね。
2020/02/02(日) 19:37:55.26ID:iUJbnHUw
意味不明の理由が書いてない。やり直し。
2020/02/02(日) 19:39:32.34ID:cuMP7GqL
>>637
日本語を書くけど日本語は理解できない
宇宙人とは会話は出来ませーーーーんw
君馬鹿すぎて話にならんよww
じゃ、そういう事で!
2020/02/02(日) 19:49:44.35ID:iUJbnHUw
はい、逃げた
2020/02/02(日) 20:02:29.07ID:cuMP7GqL
>>639
じゃあ君に聞くけどさ、>>592でIT一般用語で言う「サービスを構成するサーバーが・・・」という話を振ったら
Dockerのクラスタで言う「サービスのデプロイ」の話を返した奴がいるとする、スーパーブログがどうのこうのと。
君はそれを聞いて、意味不明とは受け取らないのww?
俺はそれを聞いて、一般用語で言う「デプロイ」の話だと受け取るわけだ。
前の文脈が一般用語だから。するとおかしな事なるよな?だから変な話になっている。
で君はその流れを理解できない訳だ。w

はい、逃げたってw
「はい理解してます。本題をどうぞ」ってお前、何にも理解してない東南アジアの通訳みたいなこと言うなよw
2020/02/02(日) 20:05:23.71ID:iUJbnHUw
サービスをデプロイした経験があれば、

wordpress?それはなん言語で動くんですか?php?
え?アプリケーションサーバーが別に必要?
プラグイン使ってるから、追加でPHPモジュールが必要?

とかいう時代から、

wordpressその他で構成したDockerイメージがあるので
そのコンテナを動かすだけだよ。
必要なものは全てDockerイメージに含まれてる。

という時代になって

デプロイが簡単になったってのがわかるはずだけどな。
まあどうせ一人で全部やってるんでしょ?

だから何が必要かは全部俺が知ってる。
Dockerイメージを作る手間もデプロイする手間も変わらない。
どこでやるかが変わっただけで、どうせやるのは全部俺
みたいに思ってるんだろうな
2020/02/02(日) 20:06:20.87ID:iUJbnHUw
>>640
> Dockerのクラスタで言う「サービスのデプロイ」の話を返した奴がいるとする、

そんな奴はどこにもいない。
おまえの思い込み
2020/02/02(日) 20:07:30.90ID:iUJbnHUw
たとえクラスタなくて、起動するマシンが1台であっても
コンテナがあればデプロイが簡単になるわけだよ
2020/02/02(日) 20:13:35.22ID:cuMP7GqL
>>642
まあ良いよ俺が戻ってきたのは>>627の書き込みが意味不明に思えたからであって
宇宙人の君と頓珍漢な会話したい訳じゃない。
2020/02/02(日) 20:16:11.85ID:iUJbnHUw
経験不足の人が理解できず意味不明に思えた
ただそれだけの話です。
2020/02/02(日) 20:28:04.22ID:cuMP7GqL
もし世間一般のデプロイの話をして返したとして>>627というのなら、それならやはり理解不足
そもそもphpのdeployerつかってもmod_phpのインストールなんかしないし。
・・・と、627と関係ない宇宙人の書込に反応してみる。
スーパーブログがどうのこうのなんてどうでも良い話しだしw。
647login:Penguin
垢版 |
2020/02/02(日) 20:39:48.25ID:Q4JuNZ7V
ECSはELBと組み合わせてローリングデプロイが行える
新しいバージョンのECSタスクは
ELBに新しいターゲットとして登録され、一時的に両方が存在する状態になる
新しいバージョンのECSタスクのターゲットが正常と判定されると、
古いバージョンのECSタスクのターゲットへはリクエストが行われなくなり、タスクは終了する
新しいバージョンのタスクに明らかな異常があり、それに気づかないままデプロイ完了するミスを防げる

ECSはCodeDeployと連携したブルー・グリーンデプロイにも対応している

https://dev.classmethod.jp/cloud/aws/ecs-codedeploy-blue-green-deployment/

テスト用サイトで確認してから新旧バージョンを入れ替え出来るので、
より安全
2020/02/02(日) 20:40:02.14ID:iUJbnHUw
> そもそもphpのdeployerつかってもmod_phpのインストールなんかしないし。

なんで?いかなる場合もそうだって言える理由は何?

mod_phpを使わない事例 "一例" を言えって言ってるんじゃないよ。
mod_phpが使わない事例 "しか存在しない" という理由を聞いてる
2020/02/02(日) 20:41:44.17ID:iUJbnHUw
phpのdeployerっていうのも意味不明だし
どっかのサービスにベンダーロックインでもされてるの?w
自前のサーバーでデプロイした経験ありますか?
650login:Penguin
垢版 |
2020/02/02(日) 21:05:56.24ID:5Cwo7VNY
熱くなりすぎて引くわ
2020/02/02(日) 21:47:49.73ID:cuMP7GqL
ここまでか?ここまで分からんとはね・・・・・・。

DeployerでLaravelをデプロイする
https://qiita.com/sandabu/items/c09eb23137a9d5269f10

Capistranoで簡単デプロイ
https://qiita.com/Esfahan/items/1258d37eb6a85fa35b02

DeployerによるPHPデプロイ
https://blog.excite.co.jp/exdev/27205935/

Java アプリケーションのデプロイ
https://ecl.ntt.com/documents/tutorials/rsts/Paas/deploy/java.html

Force.com開発でGitを使ったデプロイ
https://www.terrasky.co.jp/blog/2016/161028_001862.php

世間一般で多くの場合、「デプロイする」とは
配備指示書にしたがってプログラムを文字通り「配備」(多くの場合はコピー)する事であり、
環境のセットアップは含まない。Docker村ではその特性から含んでいる、というだけ。
2020/02/02(日) 21:48:53.15ID:iUJbnHUw
↑
このようないろんな「デプロイ」が
Dockerの1つのコマンドでできるようになるわけです。
2020/02/02(日) 22:07:22.10ID:cuMP7GqL
>>652
以上、馬鹿で無知な>>iUJbnHUwに教えてあげました。
マジ感謝しろよw。
2020/02/03(月) 02:19:55.62ID:bpau2PQS
捨て台詞www
655login:Penguin
垢版 |
2020/02/03(月) 02:55:57.12ID:NijMCh9X
デプロイに関しては確かにスレッドの最初の頃から理解がおかしい人がいたね。
2020/02/03(月) 03:10:09.08ID:PgExQ+7W
> 世間一般で多くの場合、「デプロイする」とは
> 配備指示書にしたがってプログラムを文字通り「配備」(多くの場合はコピー)する事であり、
> 環境のセットアップは含まない。Docker村ではその特性から含んでいる、というだけ。

↑ほんとだw間違ってるw プログラムをコピーすることだって
qiitaの記事持ってきて環境のセットアップが含まないとかw


「本当の」世間一般の定義でも貼り付けときますか?

http://e-words.jp/w/%E3%83%87%E3%83%97%E3%83%AD%E3%82%A4.html

ソフトウェアの分野で、開発したソフトウェアを利用できるように実際の運用環境に
展開することをデプロイということがある。インストール(install)に近い意味だが、
サーバコンピュータ上で運用され外部からネットワークを通じて利用されるソフトウェアや、
他のソフトウェアから参照されるコンポーネントなどを、利用可能な状態にする、
アクセス可能にする、といったニュアンスがある。

https://kotobank.jp/word/deploy-1689419
アプリケーションソフトを、利用者の実際の運用環境で利用できるように準備すること。
◇「インストール」がコンピューター上で実行可能なファイルを準備することであるのに対して、
「デプロイ」は実行時に必要なライブラリーやコンポーネントなども含めて
実行可能であるように準備すること。「デプロイメント」ともいう。
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況