ÎĽ«½²ÊöÈçºÎʹÓÃOpenStack´´½¨²¢¹ÜÀíDocker£¬ÓÐ3ÖÖÁ÷ÐеÄʹÓ÷½·¨£¬Ê¹ÓõķֱðÊÇNova
DockerÇý¶¯£¬Heat Docker²å¼þ£¬ÒÔ¼°Magnum¡£ÕâÆªÎÄÕ·ֳÉ2²¿·Ö£¬µÚÒ»²¿·Ö£¬½«Ö÷Òª½éÉÜNova
DockerÇý¶¯µÄÓ÷¨¡£
ÔÚÕâÆªÎÄÕÂÖУ¬ÎÒ½«½éÉÜһЩ²»Í¬µÄ·½·¨£¬ÕâЩ·½·¨ÊǹØÓÚOpenStackÈçºÎ´´½¨£¬ÒÔ¼°¹ÜÀíDockerÈÝÆ÷¡£ÈýÖÖÖ÷ÒªµÄ·½·¨·Ö±ðʹÓõÄÊÇ
Nova DockerÇý¶¯£¬Heat Docker²å¼þ£¬ÒÔ¼°Magnum¡£Magnum±È½ÏÐÂÓ±£¬ÏÖÔÚÈÔÔÚ¿ª·¢ÖС£OpenStackÊÇ¿ªÔ´ÔƱàÅÅÈí¼þ£¬DockerÔòÊÇÒ»¸ö¿ªÔ´µÄÈÝÆ÷¹ÜÀí
Èí¼þ¡£ÎÄÕÂÖУ¬ÎÒ¼ÙÉèÓû§ÒѾÊìϤOpenStackºÍDocker¡£Èç¹û²»ÊìϤµÄ»°£¬ÄÇÃ´ÍøÉÏÓÐÐí¶à×ÊÁÏ¿ÉÒÔÓÃÀ´Ñ§Ï°OpenStackºÍ
Docker£¬ÎҵIJ©¿ÍÒ²¿ÉÒÔÕÒµ½¹ØÓÚ OpenStackºÍ DockerµÄÎÄÕ¡£
Nova Docker Driver
Novaͨ³£ÓÃÀ´¹ÜÀíÐéÄâ»ú¡£ÔÚÕâÖÖ·½·¨ÖУ¬NovaÇý¶¯½«»á½øÐÐÀ©Õ¹£¬ÒÔ±ãÓÃÀ´´ßÉúDockerÈÝÆ÷¡£½ÓÏÂÀ´ÊÇNova
Docker wikiÀïÃæÌá¼°µÄ¼Ü¹¹Ê¾Òâͼ¡£

ΪÁË´ßÉúÈÝÆ÷£¬Nova¼ÆËãÇý¶¯½«Ö¸ÏòDocker¡£
Nova Docker VirtÇý¶¯Ê¹ÓÃhttp apiÓëDocker½øÐжԻ°
Docker¾µÏñ±£´æÔÚDocker RegistryÖУ¬²¢ÇÒ´ÓÕâÀﱩ¶¸øGlance£¬Nova½«»áʹÓÃDocker
Registry´´½¨ÈÝÆ÷¡£
Nova Docker Çý¶¯ÓëDevstack
ÎÒ°´ÕÕ wikiÀïÃæÌáµ½µÄ²½Ö裬ÔÚOpenStack Devstack
kiloÏ»ñÈ¡Nova DockerÇý¶¯¡£ÎªÁËʹÆä¿ÉÒÔÔÚÎÒµÄϵͳÏÂÕý³£¹¤×÷£¬Òª½øÐÐһЩ¾µÏñµ÷Õû¡£ÎÒÔÚVirtualboxÏÂʹÓÃUbuntu
14.04½øÐÐÏÂÁвâÊÔ£¬ÏÂÃæÊÇһЩÖ÷Òª²½Ö裺
°²×°Docker
°²×°Nova Docker²å¼þ
½øÐÐDevstackµÄ¶Ñµþ
°²×°Nova-Docker rootwrap¹ýÂËÆ÷
Ó¦ÓÃKilo½â¾ö·½°¸
´´½¨Docker¾µÏñ£¬²¢½«Æä±©Â¶¸øGlance
ÓÉNova´ßÉúDockerÈÝÆ÷
1. °²×°Docker
Docker¿ÉÒÔʹÓà ÕâÀïÌáµ½µÄ²½Öè½øÐа²×°¡£ÏÂÃæÊÇÎÒϵͳÉÏʹÓõİ汾£¬ÎÒÒѾ¿ªÆôÓû§·ÃÎÊ£¬ÕâÑùÎҾͲ»ÐèÒªÔÚÿ¸öDockerÃüÁîÖÐÔËÐÐsudo¡£
$ docker --version Docker version 1.6.2, build 7c8fca2 |
2. °²×°Nova Docker²å¼þ
wikiÀïÃæÌáµ½µÄ²½Öè¿ÉÒÔ³öÉ«µÄ¹¤×÷¡£µ±ÎÒÔڲ鿴Çý¶¯Ê±£¬ÎÒʹÓõÄÊÇÎȶ¨°æ±¾µÄkilo¡£
git clone -b stable/kilo https://github.com/stackforge/nova-docker.git |
ÏÂÃæÊǰ²×°³É¹¦ºó£¬Nova Docker²å¼þµÄ°æ±¾ºÅ
$ sudo pip list | grep nova-docker nova-docker (0.0.1.dev197) |
3. ½øÐÐDevstackµÄ¶Ñµþ
Ê×ÏÈ£¬¼ì²éDevstack KiloµÄ´úÂë¿â¡£
git clone -b stable/kilo https://github.com/openstack-dev/devstack.git |
ÎÒÉÔ΢ÐÞ¸ÄÁËlocal.confÎļþ£¬Ð޸ĺóµÄ°æ±¾ÔÚ ÕâÀï¡£½ÓÏÂÀ´ÊǽøÐжѵþ¡£
4. °²×°Nova-Docker rootwrap¹ýÂËÆ÷
wikiÀïÃæÌáµ½µÄ²½Öè¿ÉÒÔ³öÉ«µÄ¹¤×÷¡£
sudo cp nova-docker/etc/nova/rootwrap.d/docker.filters \ /etc/nova/rootwrap.d/ |
ÎÒÉÔ΢ÐÞ¸ÄÁËlocal.confÎļþ£¬Ð޸ĺóµÄ°æ±¾ÔÚ ÕâÀï¡£½ÓÏÂÀ´ÊǽøÐжѵþ¡£
5. Ó¦ÓÃKilo½â¾ö·½°¸
¶ÑµþÅ׳öÁËÏÂÃæ´íÎó£º
2015-06-03 22:28:57.870 ERROR nova.openstack.common.threadgroup
[req-f89bc2cd-5fcc-42e4-a588-ef92ab101fb3 None None] 'module' object has no attribute 'DOCKER' n-cpu.log.2015-06-03-222501:2015-06-03 22:28:57.870 TRACE
nova.openstack.common.threadgroup AttributeError: 'module' object has no attribute 'DOCKER' |
ÔÚOpenStackµÄ ÓʼþÁбíÌÖÂÛ¹ýÕâ¸öÎÊÌ⣬½â¾ö·½·¨ÊDZà¼DockerÇý¶¯Îļþ¡£ÔÚÎҵݸÀýÖУ¬ÎļþλÓÚ¡°/usr/local/lib/python2.7/dist-packages/novadocker/virt/docker¡°¡£
6. ´´½¨Docker¾µÏñ£¬²¢½«Æä±©Â¶¸øGlance
ÎÒÊ×ÏÈʹÓà ¡°docker pull nginx"ÃüÁ´ÓDocker
HubץȡNginxÈÝÆ÷
$ docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE nginx latest a785ba7493fd 2 weeks ago 132.9 MB |
½ÓÏÂÀ´½«¾µÏñ±£´æµ½Glance¡£
docker save nginx | glance image-create --is-public=True --container-format=docker --disk-format=raw --name nginx |
ÏÖÔÚ£¬²é¿´Glance¾µÏñÁÐ±í£¬ÎÒÃÇ¿ÉÒÔ¿´¼ûDocker¾µÏñÒѾºÍÆäËûʵÀý¾µÏñÔÚÒ»ÆðÁË£¬²¢ÇÒNginxµÄÀàÐÍÊÇDocker¡£
7. ÓÉNova´ßÉúDockerÈÝÆ÷
ÎÒÃÇʹÓÃGlanceÀïÃæµÄ¾µÏñ£¬´´½¨nginxÈÝÆ÷¡£FlavorÊÂʵÉϲ»ÊÇÄÇÃ´ÖØÒª¡£
nova boot --flavor m1.small --image nginx nginxtest |
²é¿´Ö÷»úÀïÃæÕýÔÚÔËÐеÄDockerÈÝÆ÷¡£
$ docker ps CONTAINER ID IMAGE COMMAN CREATED STATUS PORTS NAMES 4f514bc59a41 nginx:latest "nginx -g 'daemon of 12 seconds ago Up 11 seconds nova-931335f8-ac5c-4c28-967b-25b9474ab2de |
ÁгöNovaʵÀý£º
$ nova list +-------------+-----------+--------+-------+--------+----+ | ID | Name | Status | Task State | Power State | Networks | +--------------+-----------+--------+-----+-----+----------+ | 931335f8-ac5c-4c28-967b-25b9474ab2de | nginxtest | ACTIVE | - | Running | private=10.0.0.5 | +-----------+-------+------+-------+-----+-------+ |
¼ì²énginxÊÇ·ñÕý³£¹¤×÷£º
$ curl 10.0.0.5Welcome to nginx! | | |
ÕâÊÇÐòÁÐÎÄÕµĵڶþ²¿·Ö£¬¼´×îºóÒ»²¿·Ö¡£
ÕâÆªÎÄÕÂÊÇ֮ǰµÄÄÇÆª ¡¶ÈçºÎʹÓÃOpenStack¹ÜÀíDockerÈÝÆ÷¡·µÄºóÐø£¬ÔÚÕâÆªÎÄÕÂÖУ¬ÎÒ½«Ê¹ÓÃOpenStack
DockerµÄHeat plugin£¬ÒÔ¼°Magnum¡£
ÏÂÃæÊÇһЩNova DockerÇý¶¯Ä¿Ç°Ëù²»¾ß±¸µÄ¹¦ÄÜ£º
1. ´«µÝ»·¾³±äÁ¿
2. Á¬½ÓÈÝÆ÷
3. Ö¸¶¨volumes
4. ±àÅź͵÷¶ÈÈÝÆ÷
Heat Docker²å¼þ¿ÉÒÔ½â¾ö1-3µÄÎÊÌ⣬µÚ4¸öÎÊÌâÎÞ·¨ÍêÃÀ½â¾ö¡£ÏÂÃæÊÇÎÒÔÚOpenStack
Docker wikiÉϲéÕҵ쬹ØÓÚHeatµÄ¼Ü¹¹Ê¾Òâͼ¡£

ÕâÀï²»Éæ¼°Nova¡£OpenStack HeatÔÚÖ÷»úÉÏʹÓÃDocker²å¼þÓëDocker´úÀí¶Ô»°¡£
Ö÷»úÊÇÓÉVM´ßÉúµÄ¡£VM¿ÉÒÔÓÉNova´ßÉú£¬Ò²¿ÉÒÔÈÃHeatʹÓÃNovaÇý¶¯´ßÉú¡£
ÕâÀï²»ÐèÒªGlance¡£ÒòΪÈÝÆ÷¾µÏñ¿ÉÒÔ±£´æÔÚDocker Registry¡£
ÕâÖÖHeat·½·¨ÔÊÐíÎÒÃÇÖ¸¶¨»·¾³±äÁ¿£¬Á¬½ÓÈÝÆ÷£¬Ö¸¶¨volumes£¬ÒÔ¼°±àÅÅÔËÐÐDockerµÄÖ÷»ú¡£
ʹÓÃHeat²å¼þ
Heat²å¼þÓëOpenStack Kiloһͬ¹¤×÷ʱ£¬ÎÒÓöµ½ÁËһЩÎÊÌâ¡£ÒòΪOpenStack
Icehouse¿ÉÒÔÍêÃÀµØ¹¤×÷£¬ËùÒÔÎÒ½«³ÖÐøµØÊ¹ÓÃOpenStack Icehouse¡£ÎҲο¼ wikiÉϵķ½·¨£¬ÔÚDevstackÉÏʹÓÃOpenStack
Icehouse¼¯³ÉHeat²å¼þ¡£
ÎҵĻ·¾³£º
ÔÚVirtualboxÉÏÔËÐÐUbuntu 14.04£¬Õâ¸öVirtualbox֮ǰÒѾ°²×°ÁËDevstack
Icehouse·¢Ðа档ÎÒµÄlocalrcÎļþÔÚ ÕâÀï¡£localrcʹÓÃNovaÍøÂç¶ø²»ÊÇNeutron¡£
½øÐжѵþ²¢°²×°Heat²å¼þ£º
½øÐжѵþ¡£³É¹¦¶Ñµþºó£¬ÎÒ°´ÕÕwikiÌá¼°µÄ·½·¨£¬°²×°Heat docker²å¼þ¡£²å¼þ°²×°Íê³Éºó£¬ÐèÒªÖØÆôHeat
engine service¡£´ò¿ªscreen»á»°£¬½øÈëHeat serviceµÄscreen»á»°£¬¹Ø±Õ»á»°£¨ctrl-c)£¬²¢ÖØÆôÕâ¸öÌØÊâµÄservice¡£Íê³ÉÖØÆôHeat
engineºó£¬ÎÒÃÇ¿ÉÒÔ¼ì²é²å¼þÊÇ·ñÕýÈ·°²×°£¬²¢ÔËÐС£
$ heat resource-type-list | grep Docker | DockerInc::Docker::Container |
ʹÓÃHeatÆô¶¯±¾µØÈÝÆ÷
ÎÒ Ãǽ«ÔÚÖ÷»úÉÏÔËÐÐDocker´úÀí£¬È»ºó£¬Ê¹ÓÃOpenStack Heat²å¼þ´´½¨ÈÝÆ÷¡£ÎªÁËÍê³ÉÉÏÊöÄ¿±ê£¬µÚÒ»²½ÊÇÔÚÖ÷»úÉϰ²×°Docker£¬²¢ÔÊÐíhttp·ÃÎÊ£¬ÒÔ±ãÈÃDocker¿Í»§¶Ë½øÐÐÁ¬½Ó¡£¹ØÓÚDockerµÄ°²×°£¬Ê¹ÓõÄÊÇ
ÕâÀïµÄ²½Ö衣ĬÈÏÏ£¬Docker²»ÔÊÐí¶îÍâµÄhttp·ÃÎÊ£¬ÎªÁËÈÃDockerÔÚ¶Ë¿Ú2376ÉÏÔÊÐí¶îÍâµÄhttp·ÃÎÊ£¬Ö´ÐÐÏÂÁÐÃüÁ
$ sudo /usr/bin/docker -d --host=tcp://0.0.0.0:2376 |
ÏÂÃæÊÇÒ»¸ö¼òµ¥µÄHeatµÄYMLÎļþ£¬Õâ¸öÎļþÊÇÓÃÀ´ÔÚ±¾µØ´´½¨nginxÈÝÆ÷¡£
heat_template_version: 2013-05-23 description: > Heat template to deploy Docker containers to an existing host resources: nginx-01: type: DockerInc::Docker::Container properties: image: nginx docker_endpoint: 'tcp://192.168.56.102:2376' |
ʹÓÃÉÏÊöÄ£°å£¬´´½¨Heat¶ÑÕ»¡£
$ heat stack-create -f ~/heat/docker_temp.yml nginxheat1 |
¼ì²é¶ÑÕ»ÊÇ·ñ´´½¨³É¹¦£º
$ heat stack-list +--------------------------+---------+------+---------+ | id | stack_name | stack_status | creation_time | +--------------------------+---------+------+---------+ | d878d8c1-ce17-4f29-9203-febd37bd8b7d | nginxheat1 | CREATE_COMPLETE | 2015-06-14T13:27:54Z | +-----------------+--------+---------+--------- |
¼ì²éÈÝÆ÷ÊÇ·ñÔÚ±¾µØÔËÐУº
$ docker -H :2376 ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 624ff5de9240 nginx:latest "nginx -g 'daemon of 2 minutes ago Up 2 minutes 80 |
µ½ÕâÀÎÒÃǾͿÉÒÔÔÚ±¾µØÈÝÆ÷ÉÏ·ÃÎÊweb·þÎñÆ÷¡£
ʹÓÃHeatÆô¶¯Ô¶³ÌÈÝÆ÷
ÎÒÃǽ«Ê¹ÓÃNova´´½¨Ò»¸öVM£¬¿ªÆôVMÉϵÄDocker´úÀí£¬È»ºóÔÚVMÉÏ£¬Ê¹ÓÃOpenStack
Heat²å¼þ´´½¨ÈÝÆ÷¡£
Ê×ÏÈ£¬´´½¨Ò»¸öFedora¾µÏñ£¬²¢ÉÏ´«µ½Glance£¬ÎÒËùʹÓõIJ½ÖèÀ´×Ô ÕâÀÍê³ÉÉÏÊö²½Öèºó£¬²é¿´GlanceÀïÃæµÄ¾µÏñ¡£
$ glance image-list +----------------+---------+------+----+-----------+------+ | ID | Name | Disk Format | Container Format | Size | Status | +-------------+--------+-------+-------+-----------+--------+ | 17239070-5aef-4bab-85df-1f9f72b6370b | cirros-0.3.1-x86_64-uec | ami | ami | 25165824 | active | | ea6eb351-7268-4b2e-91cd-806a67c4e9fe | fedora-software-config | qcow2 | bare | 610140160 | active | +--------------------+-------------+-------+------- |
½ÓÏÂÀ´£¬ÎÒʹÓÃÏÂÃæµÄ½Å±¾£¬´´½¨sshÐèÒªµÄÃÜÔ¿£¬²¢ÉèÖúÏÊʵݲȫ×é¡£
# Create key and upload ssh-keygen nova keypair-add --pub-key ~/.ssh/id_rsa.pub key1 # Permit ICMP (ping): nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0 # Permit secure shell (SSH) access: nova secgroup-add-rule default tcp 22 22 0.0.0.0/0 # Permit 2375 port access (Docker endpoint): nova secgroup-add-rule default tcp 2375 2375 0.0.0.0/0 |
ÏÖÔÚ£¬ÎÒÃÇʹÓÃNova´´½¨Fedora VM¡£
nova boot --flavor m1.medium --image fedora-software-config --security-groups default --key-name key1 --m |
ΪÁËÏÂÔØDocker¾µÏñ£¬Õâ¸öʵÀýÐèÒª¶îÍâµÄÍøÂçÁ¬½Ó¡£Îª´Ë£¬ÎÒÃÇÐèÒªÔÚÓëNovaÁªÍøÊ±µ÷Õûiptables£¬ÒԱ㴴½¨NAT
filter¡£µÚÒ»Ìõ¹æÔòÊÇɾ³ýĬÈϵÄfilter£¬µÚ¶þÌõÊÇ´´½¨eth0µØÖ·µÄfilter¡£
sudo iptables -t nat -D nova-network-snat -o br100 -s 10.0.0.0/24 -j SNAT --to-source sudo iptables -t nat -A nova-network-snat -o br100 -s 10.0.0.0/24 -j SNAT --to-source |
¼ì²éʵÀýµÄ´´½¨£º
$ nova list +-------------+------------+--------+--------+----+-------+ | ID | Name | Status | Task State | Power State | Networks | +-----------------+------------+--------+-----+-----+----------+ | ab701808-98fb-4cba-907f-663fd762cf2a | fedoratest | ACTIVE | - | Running | private=10.0.0.2 | +----------------+-----+----+-------+-----+-----·½ |
ΪÁ˵ǼFedora VM£¬ÎÒÃÇÐèҪʹÓÃÃÜÔ¿£¬Õâ¸öÃÜÔ¿ÊÇ´´½¨VMʱʹÓõġ£
ssh -i ~/.ssh/id_rsa fedora@ |
fedora¾µÏñÉÏÒѾ´´½¨Íê³ÉÁË£¬²¢ÇÒ°²×°ÁËDocker´úÀí¡£ÎªÁË¿ÉÒÔÓëOpenStack Heat¶Ô»°£¬ÎÒÃÇÐèÒªÆô¶¯Docker£¬²¢ÈÃDocker¼àÌý2375¶Ë¿Ú¡£
sudo cp /usr/lib/systemd/system/docker.service /etc/systemd/system/ Edit /etc/sysconfig/docker: OPTIONS=--host=tcp://0.0.0.0:2375 sudo systemctl start docker.service |
ÏÖÔÚ£¬ÎÒÃÇ¿ÉÒÔÔÚÔ¶³ÌVMÉÏ´´½¨ÈÝÆ÷ÁË¡£ÏÖÔÚ£¬ÎªÁËÔÚÔ¶³ÌVMÉÏ´´½¨nginxÈÝÆ÷£¬ÎÒÃÇÒªÖ¸¶¨HeatÄ£°å¡£dockerÎļþµÄĩβÊÇÔ¶³ÌVMµÄipµØÖ·¡£
heat_template_version: 2013-05-23 description: > Heat template to deploy Docker containers to an existing host resources: nginx-01: type: DockerInc::Docker::Container properties: image: nginx docker_endpoint: 'tcp://10.0.0.2:2375' |
ʹÓÃÉÏÃæµÄÄ£°å¿ªÆôHeat¶Ñµþ¡£
$ heat stack-create -f docker_stack1.yml docker_stack2 |
ÊÂǰ£¬ÎÒÃÇÐèҪץȡnginxµÄDocker¾µÏñ¡£ÀûÓÃHeat£¬ÎÒÃÇ¿ÉÒÔʹÕâ¸ö¹ý³Ì×Ô¶¯»¯¡£
ÏÖÔÚ£¬ÎÒÃÇ¿ÉÒÔ¼ì²éµ½ÈÝÆ÷ÒѾÔÚVMÉÏ´´½¨ÁË¡£
[fedora@fedoratest ~]$ docker -H :2375 ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 18a7ed8f5b00 nginx:latest "nginx -g 'daemon of About a minute ago Up About a minute 80 |
ÕâÀïÓÐÒ»·ÝHeatÄ£°å£¬Õâ¸öÄ£°åÎļþ¿ÉÒÔ´´½¨VM£¬×¥È¡ApacheºÍMysqlÈÝÆ÷£¬²¢Á¬½ÓËüÃÇ¡£ÏÂÃæÊÇÁíÍâÒ»·ÝÓÅÐãµÄ
wiki,Õâ·ÝwikiΪDockerÈÝÆ÷ÏêϸµØ½âÊÍÁËHeatÄ£°å£¬²¢ÁгöÁËÒ»¸öÓÅÐãµÄÀý×Ó¡£²»ÐÒµÄÊÇ£¬ÔÚÎÒµÄDevstack»·¾³Ï£¬ÕâЩ½Å±¾ÎÞ·¨Õý³£¹¤×÷¡£ÊµÀý´ßÉúÁË£¬µ«ÈÝÆ÷´´½¨Ê§°Ü¡£ÎÒ»¨ÁËÐí¶àʱ¼ä£¬µ«ÈÔÎÞ·¨½â¾ö¡£
OpenStack Magnum
OpenStack Heat²å¼þ½â¾öÁËÐí¶àÎÊÌâ,ÕâЩÎÊÌâÊÇNova Docker²å¼þÎÞ·¨½â¾öµÄ¡£µ«ÊÇ£¬ËüÈÔÈ»ÎÞ·¨½â¾ö¶¯Ì¬±àÅź͵÷¶È¡£MagnumÊÇÒ»¸öͨÓõÄÈÝÆ÷¹ÜÀí½â¾ö·½°¸£¬ºÍÆäËûÈÝÆ÷¼¼ÊõÒ»Ñù£¬OpenStack
¿ª·¢µÄÕâ¸ö·½°¸ÊÇ¿ÉÒÔÓÃÀ´¹ÜÀíDockerµÄ¡£Ä¿Ç°£¬MagnumÖ§³ÖKubernetesºÍDocker¡£ÎÞÂÛÊÇÔÚKubernetes£¬»¹ÊÇ
DockerÉÏ£¬Ö÷»ú¼¯Èº¶¼¿ÉÒÔ±»´´½¨£¬²¢ÇÒÔÚʹÓÃÌØÊâµÄ¾ÛÀàËã·¨ºÍÈÝÆ÷Çé¿öÏ£¬ÈÝÆ÷¿ÉÒÔÁÐÈ뼯Ⱥ¡£MagnumÈÔÈ»´¦ÔÚÔçÆÚ½×¶Î£¬µÚÒ»°æ±¾ÒѾÔÚ¼¸¸öÔÂ
ǰºÍOpenStack kiloÒ»Æð·¢ÐС£
ÏÂÃæÊÇMagnumµÄwikiÉÏÌá¼°µÄMagnum¼Ü¹¹Ê¾Òâͼ

MagnumÔÚÈκÎÐèÒª¹ÜÀíÈÝÆ÷µÄµØ·½£¬Ê¹ÓÃÆäËûµÄOpenStack×é¼þ£¬ÀýÈçNova, Heat, Neutron,
GlanceºÍKeystone ¡£
NovaÓÃÓÚ´´½¨micro VMʵÀý£¬ÈÝÆ÷ÔÚÆä¶¥²¿ÔËÐУ¬¶øDockerʵÀýÕâʱÔËÐÐÔÚÿ¸ömicro VMʵÀýÉÏ¡£
HeatÓÃÓÚÕûÌå±àÅÅ£¬ÔÚʹÓÃKubernetesµÄÇé¿öÏ£¬heat»á´´½¨Kubernetes´úÀí£¬Í¬²½¿ØÖÆÆ÷£¬¶ø¶ÔÓÚDocker,
HeatÔò»á´´½¨Docker Swarm¼¯Èº£¬ÒÔ¼°Swarm´úÀí¡£
ËùÉæ¼°µÄ²½ÖèÊÇ´´½¨bay-model£¨Kubernetes£¬Docker£©£¬ÒÔ¼°bayºÍÈÝÆ÷µÄ´´½¨¡£
ÎÒÊÔͼ°´ÕÕ ÕâÀïÌá¼°µÄ²½Ö裬ȥ´´½¨Magnum¼¯Èº¡£²½ÖèÒ»Ö±½øÐе½´´½¨¼¯ÈºÕâÀµ«ÎÞ·¨³É¹¦µØÍê³ÉÕâÒ»²½Ö裬×ÜÊÇ¿¨ÔÚ¡°CREATE_IN_PROGRESS¡±£¬ÎÒ³¢ÊÔ¹ýKubernetesºÍDockerµÄbay-model£¬µ«ÈÔûÓгɹ¦¡£Èç¹ûÓÐÈË¿ÉÒÔÍê³ÉÕâ¸ö²½Ö裬Çë¸æËßÎÒ¡£
ÈÝÆ÷±àÅÅÈÔÈ»ÔÚ·¢Õ¹ÖУ¬²¢ÇÒÓжàÖÖ½â¾öÕâÒ»ÎÊÌâµÄ¼¼ÊõÈÔÔÚ¿ª·¢¹ý³ÌÖС£DockerÕýÔÚ¿ª·¢×Ô¼ºµÄ±àÅÅ·½°¸¡£¶ÔÓÚÄÇЩÒѾÔÚʹÓÃOpenStackµÄ¿ª·¢
Õߣ¬MagnumÊÇÒ»¸ö±È½ÏÍêÕûµÄ½â¾ö·½°¸£¬ÒòΪËüÓëÆäËûOpenStack×é¼þÕûºÏµÃ½ÏºÃ¡£ÎÒ¾õµÃËæ×Åʱ¼äµÄÍÆÒÆ£¬×îºÃµÄ¼¼Êõ»áÉú´æÏÂÀ´µÄ¡£
|