allinone—更亲密的接触

来源:互联网 发布:云计算股票龙头股 编辑:程序博客网 时间:2024/06/04 18:29

历经千辛万苦,终于有了自己的openstack开发环境,查看《allinone—openstack development environment》,就想新交了女朋友一样,是不是想要更进一步的了解她呢?

all到底包含哪些

怀着激动的心情,就让我们一步一步的走进allinone的内心世界吧,在命令行敲入:

systemctl list-unit-files | grep openstack

systemctl的使用可以参考我的另外一篇博客《systemctl介绍》,上面的命令可以列出当前系统中所有已安装的服务。allinone环境会得到如下的输出:

# systemctl list-unit-files | grep openstackopenstack-ceilometer-alarm-evaluator.service  enabled openstack-ceilometer-alarm-notifier.service   enabled openstack-ceilometer-api.service              enabled openstack-ceilometer-central.service          enabled openstack-ceilometer-collector.service        enabled openstack-ceilometer-compute.service          enabled openstack-ceilometer-notification.service     enabled openstack-ceilometer-polling.service          disabledopenstack-cinder-api.service                  enabled openstack-cinder-backup.service               enabled openstack-cinder-scheduler.service            enabled openstack-cinder-volume.service               enabled openstack-glance-api.service                  enabled openstack-glance-registry.service             enabled openstack-glance-scrubber.service             disabledopenstack-keystone.service                    disabledopenstack-losetup.service                     enabled openstack-nova-api.service                    enabled openstack-nova-cert.service                   enabled openstack-nova-compute.service                enabled openstack-nova-conductor.service              enabled openstack-nova-console.service                disabledopenstack-nova-consoleauth.service            enabled openstack-nova-metadata-api.service           disabledopenstack-nova-novncproxy.service             enabled openstack-nova-scheduler.service              enabled openstack-nova-xvpvncproxy.service            disabledopenstack-swift-account-auditor.service       enabled openstack-swift-account-auditor@.service      disabledopenstack-swift-account-reaper.service        enabled openstack-swift-account-reaper@.service       disabledopenstack-swift-account-replicator.service    enabled openstack-swift-account-replicator@.service   disabledopenstack-swift-account.service               enabled openstack-swift-account@.service              disabledopenstack-swift-container-auditor.service     enabled openstack-swift-container-auditor@.service    disabledopenstack-swift-container-reconciler.service  disabledopenstack-swift-container-replicator.service  enabled openstack-swift-container-replicator@.service disabledopenstack-swift-container-updater.service     enabled openstack-swift-container-updater@.service    disabledopenstack-swift-container.service             enabled openstack-swift-container@.service            disabledopenstack-swift-object-auditor.service        enabled openstack-swift-object-auditor@.service       disabledopenstack-swift-object-expirer.service        enabled openstack-swift-object-replicator.service     enabled openstack-swift-object-replicator@.service    disabledopenstack-swift-object-updater.service        enabled openstack-swift-object-updater@.service       disabledopenstack-swift-object.service                enabled openstack-swift-object@.service               disabledopenstack-swift-proxy.service                 enabled # 

细心的读者应该会发现,图中总共包含了ceilometer、cinder、glance、keystone、nova、swift六个组件的单元,另外的neutron去哪儿了?让我们再找找,输入如下的命令:

systemctl list-unit-files | grep neutron

原来是这小子搞特殊化哦

# systemctl list-unit-files | grep neutronneutron-dhcp-agent.service                    enabled neutron-l3-agent.service                      enabled neutron-metadata-agent.service                enabled neutron-netns-cleanup.service                 disabledneutron-openvswitch-agent.service             enabled neutron-ovs-cleanup.service                   enabled neutron-server.service                        enabled #

所有可用的单元文件存放在 /usr/lib/systemd/system/ 和 /etc/systemd/system/ 目录(后者优先级更高),我们再来看看openstack各服务的文件,用户安装的服务一般放在/usr/lib/systemd/system/目录下,命令如下:

ls -lh /usr/lib/systemd/system/ | grep openstack

得到的结果如下:

# ls -lh /usr/lib/systemd/system/ | grep openstack-rw-r--r--. 1 root root  274 Dec 22 06:38 openstack-ceilometer-alarm-evaluator.service-rw-r--r--. 1 root root  274 Dec 22 06:38 openstack-ceilometer-alarm-notifier.service-rw-r--r--. 1 root root  237 Dec 22 06:38 openstack-ceilometer-api.service-rw-r--r--. 1 root root  276 Dec 22 06:38 openstack-ceilometer-central.service-rw-r--r--. 1 root root  256 Dec 22 06:38 openstack-ceilometer-collector.service-rw-r--r--. 1 root root  276 Dec 22 06:38 openstack-ceilometer-compute.service-rw-r--r--. 1 root root  274 Dec 22 06:38 openstack-ceilometer-notification.service-rw-r--r--. 1 root root  316 Dec 22 06:38 openstack-ceilometer-polling.service-rw-r--r--. 1 root root  307 Dec 22 23:27 openstack-cinder-api.service-rw-r--r--. 1 root root  316 Dec 22 23:27 openstack-cinder-backup.service-rw-r--r--. 1 root root  325 Dec 22 23:27 openstack-cinder-scheduler.service-rw-r--r--. 1 root root  316 Dec 22 23:27 openstack-cinder-volume.service-rw-r--r--. 1 root root  261 Feb  5 15:26 openstack-glance-api.service-rw-r--r--. 1 root root  271 Feb  5 15:26 openstack-glance-registry.service-rw-r--r--. 1 root root  267 Feb  5 15:26 openstack-glance-scrubber.service-rw-r--r--. 1 root root  242 Dec 22 02:52 openstack-keystone.service-rw-r--r--. 1 root root  571 Mar 21 17:55 openstack-losetup.service-rwxr-xr-x. 1 root root  230 Jan 25 19:28 openstack-nova-api.service-rwxr-xr-x. 1 root root  232 Jan 25 19:28 openstack-nova-cert.service-rwxr-xr-x. 1 root root  285 Jan 25 19:28 openstack-nova-compute.service-rwxr-xr-x. 1 root root  242 Jan 25 19:28 openstack-nova-conductor.service-rwxr-xr-x. 1 root root  251 Jan 25 19:28 openstack-nova-consoleauth.service-rwxr-xr-x. 1 root root  244 Jan 25 19:28 openstack-nova-console.service-rwxr-xr-x. 1 root root  248 Jan 25 19:28 openstack-nova-metadata-api.service-rwxr-xr-x. 1 root root  285 Jan 25 19:28 openstack-nova-novncproxy.service-rwxr-xr-x. 1 root root  242 Jan 25 19:28 openstack-nova-scheduler.service-rwxr-xr-x. 1 root root  197 Jan 25 19:28 openstack-nova-xvpvncproxy.service-rw-r--r--. 1 root root  286 Oct  1 05:29 openstack-swift-account-auditor.service-rw-r--r--. 1 root root  264 Oct  1 05:29 openstack-swift-account-auditor@.service-rw-r--r--. 1 root root  247 Oct  1 05:29 openstack-swift-account-reaper.service-rw-r--r--. 1 root root  262 Oct  1 05:29 openstack-swift-account-reaper@.service-rw-r--r--. 1 root root  322 Oct  1 05:29 openstack-swift-account-replicator.service-rw-r--r--. 1 root root  270 Oct  1 05:29 openstack-swift-account-replicator@.service-rw-r--r--. 1 root root  282 Oct  1 05:29 openstack-swift-account.service-rw-r--r--. 1 root root  297 Oct  1 05:29 openstack-swift-account@.service-rw-r--r--. 1 root root  255 Oct  1 05:29 openstack-swift-container-auditor.service-rw-r--r--. 1 root root  270 Oct  1 05:29 openstack-swift-container-auditor@.service-rw-r--r--. 1 root root  265 Oct  1 05:29 openstack-swift-container-reconciler.service-rw-r--r--. 1 root root  328 Oct  1 05:29 openstack-swift-container-replicator.service-rw-r--r--. 1 root root  276 Oct  1 05:29 openstack-swift-container-replicator@.service-rw-r--r--. 1 root root  288 Oct  1 05:29 openstack-swift-container.service-rw-r--r--. 1 root root  303 Oct  1 05:29 openstack-swift-container@.service-rw-r--r--. 1 root root  255 Oct  1 05:29 openstack-swift-container-updater.service-rw-r--r--. 1 root root  270 Oct  1 05:29 openstack-swift-container-updater@.service-rw-r--r--. 1 root root  283 Oct  1 05:29 openstack-swift-object-auditor.service-rw-r--r--. 1 root root  261 Oct  1 05:29 openstack-swift-object-auditor@.service-rw-r--r--. 1 root root  247 Oct  1 05:29 openstack-swift-object-expirer.service-rw-r--r--. 1 root root  319 Oct  1 05:29 openstack-swift-object-replicator.service-rw-r--r--. 1 root root  267 Oct  1 05:29 openstack-swift-object-replicator@.service-rw-r--r--. 1 root root  279 Oct  1 05:29 openstack-swift-object.service-rw-r--r--. 1 root root  294 Oct  1 05:29 openstack-swift-object@.service-rw-r--r--. 1 root root  246 Oct  1 05:29 openstack-swift-object-updater.service-rw-r--r--. 1 root root  261 Oct  1 05:29 openstack-swift-object-updater@.service-rw-r--r--. 1 root root  276 Oct  1 05:29 openstack-swift-proxy.service#

查看neutron服务文件,ls -lh /usr/lib/systemd/system/ | grep neutron,得到的结果:

# ls -lh /usr/lib/systemd/system/ | grep neutron-rw-r--r--. 1 root root  497 Dec 22 03:25 neutron-dhcp-agent.service-rw-r--r--. 1 root root  493 Dec 22 03:25 neutron-l3-agent.service-rw-r--r--. 1 root root  517 Dec 22 03:25 neutron-metadata-agent.service-rw-r--r--. 1 root root  987 Dec 22 03:25 neutron-netns-cleanup.service-rw-r--r--. 1 root root  584 Dec 22 03:25 neutron-openvswitch-agent.service-rw-r--r--. 1 root root 1011 Dec 22 03:25 neutron-ovs-cleanup.service-rw-r--r--. 1 root root  532 Dec 22 03:25 neutron-server.service# 

服务到启动脚本

找到了服务文件,就好比找到了女朋友心灵的某个入口,会打开一片新的天地,让你见识一个全新的世界,我们就来撕开这个领口,看一看这个全新的世界,以openstack-ceilometer-api.service为例:

# cat /usr/lib/systemd/system/openstack-ceilometer-api.service [Unit]Description=OpenStack ceilometer API serviceAfter=syslog.target network.target[Service]Type=simpleUser=ceilometerExecStart=/usr/bin/ceilometer-api --logfile /var/log/ceilometer/api.log[Install]WantedBy=multi-user.target# 

重点看一下ExecStart=/usr/bin/ceilometer-api --logfile /var/log/ceilometer/api.log发现跟

# ps -ef | grep ceilometer-apiceilome+  1168     1  3 Mar24 ?        00:14:48 /usr/bin/python2 /usr/bin/ceilometer-api --logfile /var/log/ceilometer/api.log

的输出结果一致,这就是ceilometer-api的启动命令,启动脚本为/usr/bin/ceilometer-api

启动脚本到代码

如果你是一个好奇心很强的程序员,想要刨根究底,那么这就是ceilometer-api的入口了,快去看看里面都写了些什么吧,我的代码是Liberty版本的5.0.2Tag,跟master分支上的代码有较大的差别,后需要将按照master分支上的代码进行整理,我的ceilometer-api启动脚本内容为:

#!/usr/bin/python2# PBR Generated from u'console_scripts'import sysfrom ceilometer.cmd.api import mainif __name__ == "__main__":    sys.exit(main())

你已经从操作系统上正确的找到一个openstack组件服务的入口了,接下来就可以对接上你熟悉的代码了,加油!

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 c1驾驶本过期了怎么办 考驾照没带身份证怎么办 上海扣满12分怎么办 美宝旅行证丢失怎么办 汽车证件全丢了怎么办 车的行驶本丢了怎么办 车和行驶证丢了怎么办 考驾照人在外地怎么办 外地考驾照没有居住证怎么办 考驾驶证预约密码忘了怎么办 考驾照密码忘了怎么办 考驾照的密码忘了怎么办 手机银行登录密码忘了怎么办 宽带账号或密码错误怎么办 车险过户联系不上原车主怎么办 换车了etc忘拆了怎么办 c1d驾驶证d证到期了怎么办 摩托车驾驶证过五年怎么办 没居住证想上东莞牌怎么办 外地考驾照需要暂住证怎么办 考驾照期间暂住证过期怎么办 b2驾照扣了6分怎么办 c1驾照扣了11分怎么办 c1驾驶证分扣9分怎么办 驾驶证c照扣6分怎么办 驾照过期1个月怎么办 上海驾驶证b证扣分怎么办 临时牌驾照丢了怎么办 行驶证年审过期两年怎么办 驾证到期了没换怎么办 在非洲被蚊子咬怎么办 身份证丢了被非法贷款怎么办 未满16岁怎么办身份证 放弃继承权后想反悔怎么办 上海居住证积分中社保断怎么办 换驾驶证但是身份证地址变动怎么办 驾驶证b证扣分了怎么办 c1驾证过期没审怎么办 驾照报名三年过期了怎么办 新车行驶证过期了怎么办 行驶证忘了审怎么办