云计算技术与应⽤赛项试题库之docker运维题
在写的过程中,出现⼩错误欢迎指正
以下所使⽤的IP详情:
服务端:192.168.182.50
客户端:192.168.182.60
根据提供的软件包,搭建rancher平台。通过curl命令查询Rancher管理平台⾸页,将以 上查询命令及结果输⼊答题框。
curl 192.168.182.50:8080/env/la5/apps/stacks
根据提供的软件包,通过“应⽤商店”部署Gogs,修改⽹页访问端⼝为9093,通过curl命令访问⽤户列表,提交执⾏结果⽂本到答题框。
curl 192.168.182.60:9093/explore/users
根据提供的软件包,通过“应⽤商店”部署Elasticsearch 2.x,修改⽹页访问端⼝为9094,通过curl命令访
问⾸页,提交执⾏结果⽂本到答题框。
start.firefoxchina curl 192.168.182.60:9094/
根据提供的软件包,通过“应⽤商店”部署Grafana,修改⽹页访问端⼝为9090,通过curl命令访问⾸页,提交执⾏结果⽂本到答题框。
curl http:192.168.182.60:9090/graph
根据提供的软件包,通过“应⽤商店”部署Grafana,访问3000端⼝,使⽤curl命令访问Grafana服务的3000端⼝,提交执⾏结果⽂本到答题框。
curl 192.168.182.60:3000
在server节点,修改配置⽂件,使仓库指向我们⾃⼰创建的registry节点,使⽤docker info命令查看修改后docker的仓库指向,将添加配置⽂件的参数和执⾏docker info命令的
#vi  /etc/sysconfig/docker
ADD_REGISTRY=’add-registry 192.168.182.50:5000’
INSECURE_REGISTRY=’insecure-registry 192.168.182.50:5000’
#docker info
搭建rancher平台的时候,需要打开系统的内核转发功能,请把打开内核转发功能的参数已⽂本形式提交到答题框。
#sysctl -p
net.ipv4.ip_forward=1
f.default.rp_filter=0
f.all.rp_filter=0
当要使⽤docker api查询信息的时候,我们需要修改docker的配置⽂件,添加⼀条OPTIONS来使得api功能可以使⽤,请把添加的OPTIONS参数以⽂本形式提交到答题框。
#vi /usr/lib/systemd/system/docker.service
\ -H tcp://0.0.0.0:2375-H unix:///var/run/docker.sock
配置docker容器实现nginx的负载均衡,需要修改nginx的配置⽂件,请把定义tomcat负载均衡的参数以⽂本形式提交到答题框
upstream wei {
server 10.0.6.126:32768;
server 10.0.6.126:32769;
在server节点使⽤netstat命令查询仓库监听端⼝号,查询完毕后通过lsof命令(如命令不存在则⼿⼯安装)查询使⽤此端⼝号的进程。将以上所有操作命令和输出结果以⽂本形式提交到答题框。
#yum install net-tools
#netstart -ntpl
#lsof -i:5000
在server节点通过netstat命令(如命令不存在则⼿⼯安装)查询docker镜像仓库PID,使⽤top命令查询上⼀步查询到的PID的资源使⽤情况。将以上所有操作命令和输出结果以⽂本形式提交到答题框。
#netstat -ntpl
#top -p 1184
在server节点通过docker命令查询docker registry容器最后5条⽇志,将以上所有操作命令和输出结果以⽂本形式提交到答题框。
#docker ps | grep registry
#docker logs --tail=5 ID
在server节点,查询rancher/server容器的进程号,建⽴命名空间/var/run/netns并与rancher/server容器进⾏连接,通过ip netns相关命令查询该容器的ip,将以上操作命令及检查结果填⼊答题框。
#docker inspect -f {{.State.Pid}} ID
#mkdir /var/run/netns
#ln -s /proc/1377/ns/net  /var/run/netns/rancher-server
#ip netns list  // 显⽰所有命名的 network namespace
(其实就是显⽰/var/run/netns ⽬录下的所有 network namespace 对象:)
#ip netns exec rancher-server ip a
在server节点查询当前cgroup的挂载情况,将以上操作命令及检查结果填⼊答题框。
mount -t cgroup  //-t vfstype 指定⽂件系统的类型
在server节点创建memory控制的cgroup,名称为:xiandian,创建完成后将当前进程移动到这个cgroup中,通过cat相关命令查询cgroup中的进程ID,将以上操作命令及检查结果填⼊答题框。
mkdri /sys/fs/cgroup/memory/xiandian
echo $$  //返回登录shell的PID
sudo sh -c “echo $$>>/sys/fs/cgroup/memory/xiandian/tasks”
cat /proc/956/cgroup
在server节点创建cpu控制的cgroup,名称为:xiandian。假设存在进程号为8888⼀直占⽤CPU使⽤率,并且达到100%,严重影响系统的正常运⾏。使⽤cgroup相关知识在创建的cgroup中将此进程操作
CPU配额调整为30%。将以上操作命令及检查结果填⼊答题框。
mkdir /sys/fs/cgroup/cpu/xiandian
echo 30000>/sys/fs/cgroup/cpu/xiandian/cpu.cfs_quota_us
echo 8888>/sys/fs/cgroup/cpu/xiandian/tasks
在server节点使⽤nginx镜像创建⼀个名为1daoyun的容器,只能使⽤0这个内核,镜像使⽤nginx:latest,并通过查看Cgroup相关⽂件查看内核使⽤情况,将以上操作命令及检查结果填⼊答题框(提⽰,⾸先要修改cpuset.cpus的参数)。
docker run -itd --name 1daoyun --cpuset-cpus=0 nginx:latest /bin/bash
cat /sys/fs/cgroup/cpuset/system.slice/docker-ID.scope/cpuset.cpus
在server节点创建/opt/xiandian⽬录,创建完成后启动名为xiandian-dir,镜像为nginx:latest的容器,并指定此⽬录为容器启动的数据卷,创建完成后通过inspect命令指定查看数据卷的情况。将以上操作命令及检查结果填⼊答题框
#mkdri /opt/xiandian
#dcoekr run -itd -P --name xiandian-dir -v /opt/xiandian nginx:latest /bin/bash
#docker inspect -f {{.Config.Volumes}} xiandian-dir
在server节点创建/opt/xiandian-ro⽬录,创建完成后启动名为xiandian,镜像为nginx:latest的容器,并指定此⽬录为容器启动的数据卷挂载⽬录为/opt,设置该数据卷为只读模式,创建完成后通过inspect命令指定查看HostConfig内的Binds情况。将以上操作命令及检查结果填⼊答题框。
#mkdir /opt/xiandian-ro
#docker run -itd -P --name xianidan -v /opt/xianida-ro:/opt:ro nginx:latest /bin/bash
#docker inspect -f {{.HostConfig.Binds}} xiandian
在server节点使⽤docker相关命令使⽤mysql:8.0镜像创建名为mysqldb的容器,使⽤镜像nginx:latest创建名为nginxweb容器,容器连接mysqldb容器内数据库,操作完成后使⽤inspect查看有关链接内容的字段,将以上操作命令及检查结果填⼊答题框。
#docker run -itd -P --name mysqldb mysql:8.0/bin/bash
#docker run -itd -P --name nginxweb --link mysqldb:db nginx:latest /bin/bash
#docker inspect -f {{.HostConfig.Link}} nginxweb
在server节点通过bridge命令(如果不存在则安装该命令bridge-utils)查看⽹桥列表,将以上操作命令及检查结果填⼊答题框。
yun install -y bridge-utils
brctl show
在server节点创建xd_br⽹桥,设⽴⽹络的⽹络地址和掩码为192.168.2.1/24,创建完成后启动该⽹桥,完成后查看xd_br⽹卡和⽹桥详细信息,将以上操作命令及检查结果填⼊答题框。
brctl addbr xd_br
ip addr add ip/24 dev xd_br
ip link set ip up  //启动⽹桥
brctl show
ifconfig xd_br
在server节点利⽤nginx:latest镜像运⾏⼀个⽆⽹络环境的容器,使⽤inspect命令只查看该容器的networks信息,将以上操作命令及返回结果以⽂本形式填⼊答题框。
docker run -itd --net=none nginx:latest /bin/bash
docker inspect -f {{.NetworkSettings.Networks}} nginx:latest
在client节点拉取mysql:8.0镜像,拉取完成后查询docker镜像列表⽬录,将以上操作命令及检查结果填⼊答题框。
docker pull mysql:8.0
docker images
在server节点运⾏mysql:8.0镜像,设置数据库密码为xd_root,将宿主机13306端⼝作为容器3306端⼝映射,进⼊容器后创建数据库xd_db,创建⽤户xiandian,密码为xd_pass,将此⽤户对xd_db拥有所有权限和和允许此⽤户远程访问,完成后使⽤xiandian⽤户远程登录数据库查询数据库内的数据库列表,将以上操作命令及检查结果填⼊答题框。
#docker run -itd -p 13306:3306-e MYSQL_ROOT_PASSWORD=xd_root mysql:8.0
#mysql -uroot -pxd_root
#creat database xd_db
#grant all privileges on xd_db.* to ‘xianidan’@’%’ identified by ‘xd_pass’;
#exit
#ip a
#mysql -uxianidan -pxd_pass -hIP “show database;”
[root@server images]# docker run -itdP -e MYSQL_ROOT_PASSWORD=xd_root -p 13306:3306 mysql:8.0
263509211cb33853360407fc76c422236e43506738a70b3c1a4d25b6bfd4c93c
[root@server images]# docker exec -it 26350921/bin/bash
root@263509211cb3:/# mysql -uroot -pxd_root
mysql:[Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 7
Server version:8.0.3-rc-log MySQL Community Server (GPL)
Copyright (c)2000,2017, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h'for help. Type '\c' to clear the current input statement.
mysql> create database xd_db;
Query OK,1 row affected (0.03 sec)
mysql>  grant all privileges on xd_db.* to 'xiandian'@'%'  identified by 'xd_pass';
Query OK,0 rows affected,1 warning (0.03 sec)
mysql> exit
Bye
root@263509211cb3:/# ip a
1: lo:<LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
21: eth0:<BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 02:42:ac:11:00:04 brd ff:ff:ff:ff:ff:ff
inet 172.17.0.4/16 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::42:acff:fe11:4/64 scope link
valid_lft forever preferred_lft forever
root@263509211cb3:/# mysql -uxiandian -pxd_pass -h172.17.0.4-e "show databases;"
mysql:[Warning] Using a password on the command line interface can be insecure.
+--------------------+
| Database          |
+--------------------+
| information_schema |
| xd_db              |
+--------------------+
在server节点将mysql镜像导出,导出名称为mysql_images.tar,放在/media⽬录下,导出后,查看⽬录,将以上操作命令及检查结果填⼊答题框。
#docker save mysql :8.0>/media/mysql_images.tar
#ll /media
在server节点,运⾏数据库容器,数据库密码设置为000000,使⽤镜像为mysql:8.0,运⾏之后,使⽤命令将容器导出,导出名称为mysql_container.tar,放在/media⽬录下,导出后,查看⽬录,将以上操作命令及检查结果填⼊答题框。
#docker run -itd -P -e MYSQL_ROOT_PASSWORD=000000 mysql:8.0
#docker export 容器ID >/media/mysql_container.tar
#ll /media
在server节点将tomcat_latest.tar镜像导⼊,并打标签成tomcat:latest,上传⾄仓库中,将以上操作命令及检查结果填⼊答题框。
[root@server images]# docker load -i tomcat_latest.tar
e27a10675c56: Loading layer [==================================================>]105 MB/105 MB
851f3e348c69: Loading layer [==================================================>]24.72 MB/24.72 MB
06f4de5fefea: Loading layer [==================================================>]7.995 MB/7.995 MB
a4d7b0ac0438: Loading layer [==================================================>]2.172 MB/2.172 MB
6ef532e39c1e: Loading layer [==================================================>]3.584 kB/3.584 kB
7ffe9646653b: Loading layer [==================================================>]1.536 kB/1.536 kB
93742a1ae069: Loading layer [==================================================>]415.8 MB/415.8 MB
c571db474d75: Loading layer [==================================================>]400.9 kB/400.9 kB
04178c827c65: Loading layer [==================================================>]2.56 kB/2.56 kB
c4d99fd86e94: Loading layer [==================================================>]1.966 MB/1.966 MB
a8e949e6c4fd: Loading layer [==================================================>]18.87 MB/18.87 MB
f17807115ffa: Loading layer [==================================================>]2.048 kB/2.048 kB
Loaded image ID: sha256:a92c139758db4c89d0cdeaa641566d0cb3305f9f6d2dbd2ca50dd361c02328da B/2.048 kB
[root@server images]# docker images
<none><none>              a92c139758db        5 weeks ago        557.4 MB
[root@server images]# docker tag a92c139758db 10.0.6.126:5000/tomcat:latest
[root@server images]# docker push 10.0.6.126:5000/tomcat:latest
The push refers to a repository [10.0.6.126:5000/tomcat]
f17807115ffa: Pushed
a8e949e6c4fd: Pushed
c4d99fd86e94: Pushed
04178c827c65: Pushed
c571db474d75: Pushed
93742a1ae069: Pushed
7ffe9646653b: Pushed
6ef532e39c1e: Pushed
a4d7b0ac0438: Pushed
06f4de5fefea: Pushed
851f3e348c69: Pushed
e27a10675c56: Pushed
latest: digest: sha256:90b2bee496f433123469c91586b19b6e4b1b0c417356ba0240bdcbea1b474a46 size:2836
[root@server images]# docker images
10.0.6.126:5000/tomcat                                      latest              a92c139758db        5 weeks ago        557.4 MB
在server节点运⾏mysql容器,使⽤镜像为mysql:8.0指定mysql密码为000000,容器运⾏在后台,使⽤随机映射端⼝,容器运⾏完成后查询容器列表,将以上操作命令及检查结果填⼊答题框。
#docker run -d -P -e MYSQL_ROOT_PASSWORD=000000 mysql:8.0
#docker ps
在server节点运⾏mysql容器,使⽤镜像为mysql:8.0指定mysql密码为000000,容器运⾏在后台,使⽤随机映射端⼝,容器运⾏完成后查询容器列表,然后将运⾏的mysql容器停⽌,完成后查询容器状态,将以上操作命令及检查结果填⼊答题框。
#docker run -d -e MYSQL_ROOT_PASSWORD=000000-P mysql:8.0
#docker ps -a
#docker stop ID(容器ID)
#docker ps -a
在server节点,将上题停⽌的容器启动运⾏,完成后查询容器状态,将以上操作命令及检查结果填⼊答题框
docker start ID
docker ps -a云数据库服务
在server节点,将运⾏的mysql容器重启,将以上操作命令及检查结果填⼊答题框。
docker restart ID
在server节点,执⾏⼀条命令使⽤exec获取的rancher/server容器正在运⾏的⽹络套接字连接情况,将以上操作命令及检查结果填⼊答题框。
docker exec ID netstat

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。