津波の場合、海底の水まで動く。 この時海底の泥やヘドロを巻き上げているので、黒い津波になる。
飲み込んだり気管に入ったり、水が引いた後乾燥して泥粉塵として舞い上がったりしたのを吸い込んだりすると、 津波肺という重い肺炎になるって話。通常の肺炎なら一カ月くらいで治癒するけど、津波肺は四カ月くらいかかるとか。
確かに危ない話だが、注意しろ言われても困るなコレw
逆説的だが濃密なPM 2.5濃度は割と危険なのかもしれないと感じた
k3s v0.1.0 で遊んでみた
tag: k3s, kubernetes
# ダウンロードとインストール curl -LO https://github.com/rancher/k3s/releases/download/v0.1.0/k3s chmod +x k3s /bin/mv k3s /usr/local/bin
配布はシングルバイナリっぽくまとまってる。
起動してちょっと使う。
# サーバ起動。 オプション無しで起動した場合は、自分がマスタで自分をwork nodeとして登録する。 sudo k3s server & # Kubeconfig ファイルは自動的に /etc/rancher/k3s/k3s.yaml に出力される cat /etc/rancher/k3s/k3s.yaml # kubeconfig の内容は以下で表示することもできる。 sudo k3s kubectl config view --raw # ノード一覧表示 sudo k3s kubectl get node # これは無理かw heapsterが無いって言われるww sudo k3s kubectl top node # 実行させる(podとして) sudo k3s kubectl run my-hello-world --image=hello-world --restart=Never # 実行できたかな? sudo k3s kubectl get pod --all-namespaces -o wide
podは普通に実行できるっぽいね。
[root@node1 ~]# sudo k3s kubectl get pod --all-namespaces -o wide NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES default my-hello-world 0/1 Completed 0 24s 10.42.0.6 node1.k8s.local <none> <none> kube-system coredns-7748f7f6df-hv8rk 1/1 Running 0 22m 10.42.0.2 node1.k8s.local <none> <none> kube-system helm-install-traefik-krp5d 0/1 Completed 0 22m 10.42.0.3 node1.k8s.local <none> <none> kube-system svclb-traefik-5f56557df7-rbjxm 2/2 Running 0 21m 10.42.0.5 node1.k8s.local <none> <none> kube-system traefik-dcd66ffd7-5v2wv 1/1 Running 0 21m 10.42.0.4 node1.k8s.local <none> <none> [root@node1 ~]# [root@node1 ~]# sudo k3s kubectl logs my-hello-world Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (amd64) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker ID: https://hub.docker.com/ For more examples and ideas, visit: https://docs.docker.com/get-started/ [root@node1 ~]#
自動生成されるkubectl config。serverがlocalhostになってるのは厳しいなー。
隣のマシンからアクセスできない;;
dnsmasqを先に入れたらオレオレなホスト名使ってくれるかな? 後でネット検索しよう。
[root@node1 ~]# sudo k3s kubectl config view apiVersion: v1 clusters: - cluster: certificate-authority-data: DATA+OMITTED server: https://localhost:6443 name: default contexts: - context: cluster: default user: default name: default current-context: default kind: Config preferences: {} users: - name: default user: password: 6937a1c0c537a473504dac807f397b9a username: admin [root@node1 ~]#
containerdを含むということで、dockerの代わりになるか遊んでみる。コマンドのヘルプ。
podって表記があるのが不幸を予感させるゾ
[root@node1 ~]# sudo k3s crictl NAME: crictl - client for CRI USAGE: crictl [global options] command [command options] [arguments...] VERSION: unknown COMMANDS: attach Attach to a running container create Create a new container exec Run a command in a running container version Display runtime version information images List images inspect Display the status of one or more containers inspecti Return the status of one or more images imagefsinfo Return image filesystem info inspectp Display the status of one or more pods logs Fetch the logs of a container port-forward Forward local port to a pod ps List containers pull Pull an image from a registry runp Run a new pod rm Remove one or more containers rmi Remove one or more images rmp Remove one or more pods pods List pods start Start one or more created containers info Display information of the container runtime stop Stop one or more running containers stopp Stop one or more running pods update Update one or more running containers config Get and set crictl options stats List container(s) resource usage statistics completion Output bash shell completion code help, h Shows a list of commands or help for one command GLOBAL OPTIONS: --config value, -c value Location of the client config file (default: "/etc/crictl.yaml") [$CRI_CONFIG_FILE] --debug, -D Enable debug mode --image-endpoint value, -i value Endpoint of CRI image manager service [$IMAGE_SERVICE_ENDPOINT] --runtime-endpoint value, -r value Endpoint of CRI container runtime service (default: "unix:///run/k3s/containerd/containerd.sock") [$CONTAINER_RUNTIME_ENDPOINT] --timeout value, -t value Timeout of connecting to the server (default: 10s) --help, -h show help --version, -v print the version [root@node1 ~]#
適当に走らせてみる。
# containerd機能を含むらしいので、ちょっと遊ぶ sudo k3s crictl pull hello-world # image 一覧 sudo k3s crictl images # docker run 相当は無いっぽい。 runp というpodをスタートさせるのはあるけど、yamlを書く必要がある模様。 sudo k3s crictl runp # pod作成用のyamlファイルをkubectlコマンドに作らせる sudo k3s kubectl run my-nginx --image=nginx:latest --restart=Never --dry-run -o yaml > my-nginx.yaml cat my-nginx.yaml # pod作成yamlファイルを指定して走行 sudo k3s crictl runp my-nginx.yaml # ちょっと待つ sleep 5 # crictl ps -a の結果は微妙 sudo k3s crictl ps -a # crictl podsの結果は良いかも sudo k3s crictl pods
k3s crictl runp するとコンテナIDっぽいものを表示してくれるけど、実は Pod ID。
つか1分くらいでcrictl から起動失敗したpodだと表示から消えるので、ログとか調査するの無理ゲーw
containerdを含んではいるけど、dockerというか生コンテナは触らせる気は無いっぽい。
純粋なkubernetes podで全部の環境を構成しないといけないかな。
[root@node1 ~]# # pod作成yamlファイルを指定して走行 [root@node1 ~]# sudo k3s crictl runp my-nginx.yaml b2d8ce5f4db41fa9f65e22bbe451307e57a76c23c0ae81563b48ba24ea24d7ed [root@node1 ~]# [root@node1 ~]# # ps -a の結果は微妙 [root@node1 ~]# sudo k3s crictl ps -a CONTAINER ID IMAGE CREATED STATE NAME ATTEMPT POD ID 91ecb9d34f32f 4a065d8dfa588 43 minutes ago Running https 0 74a5ea71410a0 781503e691d26 4a065d8dfa588 43 minutes ago Running http 0 74a5ea71410a0 f574470cdd692 98768a8bf3fed 43 minutes ago Running traefik 0 324fa2801b3a5 5eb9f22347132 2ee68ed074c6e 43 minutes ago Running coredns 0 93233371f602b 3e3796a2a5c99 b8b351c31b0ab 43 minutes ago Exited helm 0 410a8a546b056 [root@node1 ~]# [root@node1 ~]# # pods の結果 [root@node1 ~]# sudo k3s crictl pods POD ID CREATED STATE NAME NAMESPACE ATTEMPT b2d8ce5f4db41 Less than a second ago Ready my-nginx 0 74a5ea71410a0 43 minutes ago Ready svclb-traefik-5f56557df7-rbjxm kube-system 0 324fa2801b3a5 43 minutes ago Ready traefik-dcd66ffd7-5v2wv kube-system 0 410a8a546b056 44 minutes ago NotReady helm-install-traefik-krp5d kube-system 0 93233371f602b 44 minutes ago Ready coredns-7748f7f6df-hv8rk kube-system 0 [root@node1 ~]#
余談だが、systemdからk3s起動したい向きには以下とのこと。
cat > /etc/systemd/system/k3s.service << EOF [Unit] Description=Lightweight Kubernetes Documentation=https://k3s.io After=network.target [Service] Type=notify ExecStartPre=-/sbin/modprobe br_netfilter ExecStartPre=-/sbin/modprobe overlay ExecStart=/usr/local/bin/k3s server KillMode=process Delegate=yes LimitNOFILE=infinity LimitNPROC=infinity LimitCORE=infinity TasksMax=infinity [Install] WantedBy=multi-user.target EOF systemctl daemon-reload systemctl enable k3s systemctl start k3s
BSフジ プライムニュース 2週間はネット動画で見物できる
ネット上で放送から2週間は見物できる模様。
3/4(月)の放送分で、北朝鮮の高官の発言解説は朝鮮大学校准教授の李柄輝(リビョンフィ)さんの解説がわかりやすい感じがした。
北朝鮮のコメントはあまりにも背景思想が異質で(ほとんど宇宙人レベルに乖離しているため) 高官の発言一つ取っても(解説が無いと)全く理解できない。
文書翻訳など無意味というか誤解するのでかえって有害でさえある。
背景事情の説明、単語の意味の違い、用語の使い方の違いから解説があると 「なるほどそういう意味で言っているのか。(同意はできないけど)言っていることはわかった。」 というラインまでは行ける。
日本語に翻訳して北朝鮮の立場を解説する際には李柄輝さん有能っぽいので、北の将軍さまは活用したら良いんじゃないかな
p.s.
日韓情勢については、3/1(金)放送分の京都大学大学院 人間・環境学研究科教授の小倉紀蔵さんの解説がなんか当たってそうな印象を受けた。
p.p.s
出演してる人は、おそらく当代随一の北朝鮮/韓国研究者だと思うけど、どうも異質文明理解が浅いのかもしれんと気になった
なんつーか、日本の常識の範囲での代理理解(?)で止まってるみたいな
ブッ飛んでるのは李柄輝さんと小倉紀蔵さんの解説で、ひょっとするとアレが真相に近いんじゃないかという予感がする
どっかの記事でステマされていたけど、スレの意見も概ね好意的なので購入してみた
まだチュートリアルはじめたばかりだが意外にキツイww
体全体で前後にリズムを取って、音ゲーみたいな感じで左右パンチを出す雰囲気
自分でやると足の方のリズムがすぐになくなって手だけぱんちになってしまうのが悲しいけど、足の方のリズムと合うとなんか楽しいww
お任せレッスンモードがだんだんハードになってきたwww
ストレート出すと足が止まるクセがあってなかなか大変ww
筋肉痛が;;
p.s.
腕周辺の筋肉痛はもうおさまってきたけど、ヒザを使う系のヤツは足がパンパンになるので勘弁ww
出るの遅いって・・・待ちきれなくて iPad Pro 10.5買ってからさらに新機種が何度も出てるくらいだよ・・・
自家用車で移動してるアメリカ人にはiPad miniの良さはわからんだろう
tag:anime
Amazon prime videoでしか見れないのか。dアニメストアには出てないなー。
けもフレ系の3d描画アニメだけど、予算が圧倒的に増えてる感あるww
初回死亡者あり(?)、水資源縛り、謎の廃墟移動とわりと緊迫したムードで進行する序盤。これどーなるんだろ?
つか第一話だけ0円で以後2話以降は1話あたり216円かよww 騙された;;
ナチュラルに連続再生してんじゃNEEEEE 有料です警告くらい出せや;; つか1話あたりの値段TAKEEEEE
Amazon 邪悪な商売しすぎだろ さすが悪の帝国GAFA
p.s.
プライム会員だと料金請求は来ないっぽい? ブラウザのcookie切れてたので有料っぽく表示されてたけども購入履歴には表示が無いな・・。
tag: kubernetes, heapster, cadvisor, 10255, readOnlyPort
kubernetes v 1.13.4あたりの話。
しばらく見ないうちに kubeletの 10255 readOnlyPort (認証なしでメトリクス情報が取得できるポート) はデフォルトで使用不可でインストールされるようになった。
AWSのEKSのイメージもデフォルトで10255ポートを塞ぐようになったようだ。
kube proxyの脆弱性で大穴が開いてたので開発者連中が神経質になってる模様ww
メトリクスデータの取得は必要なモノなので、RBAC制限付きの kubelet 10250 ポート経由でメトリクスデータ取得を行う方向になったようだ。
kubeletから情報を取得する人は、だいたい heapster か prometheus 。
helm chartのheapster-0.3.2は今日時点ではまだ未対応。 以下のようにインストールすれば、とりあえず kubectl top node とかができるようになる。
# # heapster # heapster-0.3.2 # # --namespace kube-system にしないといけない # # 認証なしで接続できる kubelet port 10255 がkube 1.13系で廃止されたので、heapster対応待ち # 今後はサービスアカウントを使うようにして、認証ありでkubelet port 10250に接続して情報を取得するようになる # amazon 向け kubernetes では、readonly port 10255は廃止されているので、kubectl top nodeは heapsterが対応するまで利用できない # https://github.com/awslabs/amazon-eks-ami/issues/128 # # アクセス用のロールを作成 cat > heapster-role.yaml << "EOF" --- kind: ClusterRole apiVersion: rbac.authorization.k8s.io/v1 metadata: name: node-stats-full rules: - apiGroups: [""] resources: ["nodes/stats"] verbs: ["get", "watch", "list", "create"] EOF kubectl apply -f heapster-role.yaml # kubeletアクセス用のアカウントを作成。helm chart の heapster だと heapster-heapsterという名前になってしまうのでその名前で作る cat > heapster-account.yaml << "EOF" kind: ClusterRoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: name: heapster-node-stats subjects: - kind: ServiceAccount name: heapster-heapster namespace: kube-system roleRef: kind: ClusterRole name: node-stats-full apiGroup: rbac.authorization.k8s.io EOF kubectl apply -f heapster-account.yaml # heapsterのインストール helm inspect stable/heapster helm install stable/heapster \ --name heapster \ --namespace kube-system \ --values - << "EOF" command: - /heapster - --source=kubernetes:kubernetes:https://kubernetes.default?useServiceAccount=true&kubeletHttps=true&kubeletPort=10250&insecure=true rbac: create: true serviceAccountName: heapster service: annotations: prometheus.io/path: /metrics prometheus.io/port: "8082" prometheus.io/scrape: "true" EOF # 情報が集まるまで60秒以上待機する kubectl top node kubectl top pod --all-namespaces
helm-chartのprometheus-operator-5.0.2の場合は、kubelet.serviceMonitor.https=true 指定すると、認証ありの kubelet 10250 ポートを使うので、それで行く。
helm install stable/prometheus-operator \ --name prometheus-operator \ --namespace kube-system \ --values - << "EOF" kubelet: serviceMonitor: https: true kubeControllerManager: enabled: false kubeScheduler: enabled: false defaultRules: rules: kubernetesSystem: false grafana: enabled: true ingress: enabled: true hosts: - grafana.minikube.local EOF
余談だが、cAdvisor(の起動オプション指定)がkubeletに統合されたのは手違いだったという謎の記載がkubeletのコマンドラインヘルプに書いてある。
えー。統合するんじゃなかったのかいwww
[root@master1 ~]# kubelet --help The kubelet is the primary "node agent" that runs on each (中略) --application-metrics-count-limit int Max number of application metrics to store (per container) (default 100) (DEPRECATED: This is a cadvisor flag that was mistakenly registered with the Kubelet. Due to legacy concerns, it will follow the standard CLI deprecation timeline before being removed.)
iPad mini 5 2019 docomo online shop にて注文したった。 到着は数日後かな。 Apple Storeでの発売日は3月28日で、キャリア系のSIM入りの発売日は各社3月30日だったようだ。
ドコモオンラインショップを使うのは初めてだったけど、アレをスマホから操作できるヤツは天才に違いない。
つかVueでもReactでもいいけど、もっと反応性の良いWeb画面にならないものか。
番号が使えるか確認ボタン押したら、すげぇ縦に長い画面全体をリロードしてページの先頭がしばらく表示されてから、さっき確認ボタン押した所に(id指定で)スクロールしててワロタw (オレwikiもpure form型だからこんな作りだけどさw)
まぁドコモオンラインショップなんて使うヤツは狂信者か確信犯だから、オンラインショップWebサイトの使い勝手の良さとか売り上げには全く関係ないんだろうけど