CloudNative Days Spring 2021 ONLINE キーノートでの発表資料です。
https://event.cloudnativedays.jp/cndo2021/talks/1071
本セッションでは、DockerとKubernetesのもつ基本的な機能の概要を、コンテナの仕組みをふまえつつイラストを用いて紹介していきます。一般にあまり焦点をあてて取り上げられることは多くありませんが、コンテナの作成や管理を担う低レベルなソフトウェア「コンテナランタイム」も本セッションの中心的なトピックのひとつです。
本セッションは、拙著「イラストで分かるDockerとKubernetes」(技術評論社)の内容を参考にしています。
https://www.amazon.co.jp/dp/4297118378
CloudNative Days Spring 2021 ONLINE キーノートでの発表資料です。
https://event.cloudnativedays.jp/cndo2021/talks/1071
本セッションでは、DockerとKubernetesのもつ基本的な機能の概要を、コンテナの仕組みをふまえつつイラストを用いて紹介していきます。一般にあまり焦点をあてて取り上げられることは多くありませんが、コンテナの作成や管理を担う低レベルなソフトウェア「コンテナランタイム」も本セッションの中心的なトピックのひとつです。
本セッションは、拙著「イラストで分かるDockerとKubernetes」(技術評論社)の内容を参考にしています。
https://www.amazon.co.jp/dp/4297118378
Red Hat Enterprise Linux 7 上でのDockerのステータス、使い方の解説と、Project Atomicをはじめとして、CentOS Atomic Host, RHEL Atomic Hostの解説。CentOS Atomic HostでKubernetesを使うチュートリアル。
この資料では、Docker for Windows を使って Windows OS 上で Linux ベースのアプリを開発する方法、そして Web アプリを含む Docker コンテナをクラウド環境(Azure 環境)に展開する方法について解説します。
※ 本資料では Docker の Linux コンテナのみを取り扱います。(Windows コンテナは取り扱いません。Windows OS で使い慣れたエディタや開発環境を使いつつ、Docker for Windows を活用して Linux 上でデバッグを行う、というシナリオを扱っています。)
※ 資料の概要は以下の blog エントリを参照してください。
https://blogs.msdn.microsoft.com/nakama/2018/09/27/dockerandazure/
Introducton to Convolutional Nerural Network with TensorFlowEtsuji Nakai
Explaining basic mechanism of the Convolutional Neural Network with sample TesnsorFlow codes.
Sample codes: https://github.com/enakai00/cnn_introduction
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matchingharmonylab
公開URL:https://arxiv.org/pdf/2404.19174
出典:Guilherme Potje, Felipe Cadar, Andre Araujo, Renato Martins, Erickson R. ascimento: XFeat: Accelerated Features for Lightweight Image Matching, Proceedings of the 2024 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) (2023)
概要:リソース効率に優れた特徴点マッチングのための軽量なアーキテクチャ「XFeat(Accelerated Features)」を提案します。手法は、局所的な特徴点の検出、抽出、マッチングのための畳み込みニューラルネットワークの基本的な設計を再検討します。特に、リソースが限られたデバイス向けに迅速かつ堅牢なアルゴリズムが必要とされるため、解像度を可能な限り高く保ちながら、ネットワークのチャネル数を制限します。さらに、スパース下でのマッチングを選択できる設計となっており、ナビゲーションやARなどのアプリケーションに適しています。XFeatは、高速かつ同等以上の精度を実現し、一般的なラップトップのCPU上でリアルタイムで動作します。
セル生産方式におけるロボットの活用には様々な問題があるが,その一つとして 3 体以上の物体の組み立てが挙げられる.一般に,複数物体を同時に組み立てる際は,対象の部品をそれぞれロボットアームまたは治具でそれぞれ独立に保持することで組み立てを遂行すると考えられる.ただし,この方法ではロボットアームや治具を部品数と同じ数だけ必要とし,部品数が多いほどコスト面や設置スペースの関係で無駄が多くなる.この課題に対して音𣷓らは組み立て対象物に働く接触力等の解析により,治具等で固定されていない対象物が組み立て作業中に運動しにくい状態となる条件を求めた.すなわち,環境中の非把持対象物のロバスト性を考慮して,組み立て作業条件を検討している.本研究ではこの方策に基づいて,複数物体の組み立て作業を単腕マニピュレータで実行することを目的とする.このとき,対象物のロバスト性を考慮することで,仮組状態の複数物体を同時に扱う手法を提案する.作業対象としてパイプジョイントの組み立てを挙げ,簡易な道具を用いることで単腕マニピュレータで複数物体を同時に把持できることを示す.さらに,作業成功率の向上のために RGB-D カメラを用いた物体の位置検出に基づくロボット制御及び動作計画を実装する.
This paper discusses assembly operations using a single manipulator and a parallel gripper to simultaneously
grasp multiple objects and hold the group of temporarily assembled objects. Multiple robots and jigs generally operate
assembly tasks by constraining the target objects mechanically or geometrically to prevent them from moving. It is
necessary to analyze the physical interaction between the objects for such constraints to achieve the tasks with a single
gripper. In this paper, we focus on assembling pipe joints as an example and discuss constraining the motion of the
objects. Our demonstration shows that a simple tool can facilitate holding multiple objects with a single gripper.
5. Open Cloud Campus
5
Dockerクイックツアー
一般的なサーバ仮想化の分類
物理マシン
物理マシン
ホスト OS
ハイパーバイザ
(カーネルモジュール)
仮想
マシン
ゲスト
OS
VMware vSphere, Xen など
Linux KVM
ハードウェアによる仮想化
(物理マシンにハイパーバイザを内蔵)
ソフトウェアによる仮想化
(物理マシン上にハイパーバイザを導入)
ソフトウェアによる仮想化
(ホスト OS にハイパーバイザ機能を追加)
物理マシン
OS
非仮想化環境
基本的には「物理マシン」と同等の「仮想マシン」を複数
作り出す技術です。
仮想
マシン
ゲスト
OS
仮想
マシン
ゲスト
OS
仮想
マシン
ゲスト
OS
仮想
マシン
ゲスト
OS
仮想
マシン
ゲスト
OS
仮想
マシン
ゲスト
OS
仮想
マシン
ゲスト
OS
ハイパーバイザ(ソフトウェア)
仮想
マシン
ゲスト
OS
仮想
マシン
ゲスト
OS
仮想
マシン
ゲスト
OS
物理マシン
ハイパーバイザ(ファームウェア)
11. Open Cloud Campus
11
Dockerクイックツアー
CentOSイメージをダウンロード
構成情報を確認します。
CentOS6のイメージを公式レジストリからダウンロードします。
# docker info
Containers: 0
Images: 0
Storage Driver: devicemapper
Pool Name: docker-252:3-130516-pool
Data file: /var/lib/docker/devicemapper/devicemapper/data
Metadata file: /var/lib/docker/devicemapper/devicemapper/metadata
Data Space Used: 291.5 Mb
Data Space Total: 102400.0 Mb
Metadata Space Used: 0.7 Mb
Metadata Space Total: 2048.0 Mb
Execution Driver: native-0.2
Kernel Version: 3.14.6-200.fc20.x86_64
# docker search centos
NAME DESCRIPTION STARS..
centos The official build of CentOS. 146
tianon/centos CentOS 5 and 6, created using rinse instea... 22
blalor/centos Bare-bones base CentOS 6.5 image 4
...
# docker pull centos
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
centos centos6 0c752394b855 3 days ago 124.1 MB
centos latest 0c752394b855 3 days ago 124.1 MB
centos 6.4 539c0211cd76 14 months ago 300.6 MB
イメージ管理には、Device Mapper
ドライバ(Thin-Provisioning)を使用
イメージの保存領域は(最大)100GB
14. Open Cloud Campus
14
Dockerクイックツアー
コンテナのディスクイメージを保存
終了したコンテナのディスクイメージを新規のリポジトリに保存します。
保存したイメージから、新たなコンテナを起動することができます。
docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
fb21d0c069bf centos:centos6 /bin/bash 3 minutes ago Exited (0) 1 seconds ago
boring_bardeen
# docker commit ca1f25132c15 enakai/centos6:traceroute
a0725f4d429fb5c00e47fd9453eea654fc99fe71864d5946a01954ca630cb2e5
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
enakai/centos6 traceroute 44f1d7517217 6 seconds ago 171.6 MB
centos centos6 0c752394b855 3 days ago 124.1 MB
centos latest 0c752394b855 3 days ago 124.1 MB
centos 6.4 539c0211cd76 14 months ago 300.6 MB
# docker run -it enakai/centos6:traceroute /bin/bash
bash-4.1# traceroute --version
Modern traceroute for Linux, version 2.0.14, Nov 11 2010
Copyright (c) 2008 Dmitry Butskoy, License: GPL v2 or any later
bash-4.1# exit
15. Open Cloud Campus
15
Dockerクイックツアー
コンテナのディスクイメージを保存
終了したコンテナで不要なものは、次のコマンドで削除しておきます。
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
16dd08fefadb enakai/centos6:traceroute /bin/bash 2 minutes ago Exited (0) 2
seconds ago distracted_fermi
fb21d0c069bf centos:centos6 /bin/bash 7 minutes ago Exited (0) 4
minutes ago boring_bardeen
# docker rm 16dd08fefadb
docker r16dd08fefadb
# docker rm fb21d0c069bf
fb21d0c069bf
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
NAMES
27. Open Cloud Campus
27
Dockerクイックツアー
Dockerfileのビルドとコンテナの起動
コンテナを停止した後、再度、起動する例です。
– 「docker run」は、最初にコンテナを起動した際と同じオプションで、再度、コンテナを作成しま
す。ディスクイメージは停止時に保存してあるものを再利用します。
– 不要になったコンテナは停止した後に、「docker rm」で削除しておきます。
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
1014c487be4e enakai/httpd:ver1.0 /usr/local/bin/init. About a minute ago Up About a
minute 0.0.0.0:2222->22/tcp, 0.0.0.0:8000->80/tcp web01
# docker stop web01
web01
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES
1014c487be4e enakai/httpd:ver1.0 /usr/local/bin/init. About a minute ago Exited (-1) 2
seconds ago web01
# docker start web01
web01
[root@fedora20 ~]# !curl
curl http://localhost:8000
Hello, World!
# docker stop web01
web01
# docker rm web01
web01
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS
PORTS NAMES