mirror of
https://github.com/ceph/ceph-csi.git
synced 2025-06-14 18:53:35 +00:00
Fresh dep ensure
This commit is contained in:
3
vendor/k8s.io/kubernetes/test/images/volume/gluster/BASEIMAGE
generated
vendored
Normal file
3
vendor/k8s.io/kubernetes/test/images/volume/gluster/BASEIMAGE
generated
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
amd64=fedora:28
|
||||
arm64=arm64v8/fedora:28
|
||||
ppc64le=ppc64le/fedora:28
|
27
vendor/k8s.io/kubernetes/test/images/volume/gluster/Dockerfile
generated
vendored
Normal file
27
vendor/k8s.io/kubernetes/test/images/volume/gluster/Dockerfile
generated
vendored
Normal file
@ -0,0 +1,27 @@
|
||||
# Copyright 2016 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
FROM BASEIMAGE
|
||||
|
||||
CROSS_BUILD_COPY qemu-QEMUARCH-static /usr/bin/
|
||||
|
||||
RUN yum -y install hostname glusterfs-server && yum clean all
|
||||
ADD glusterd.vol /etc/glusterfs/
|
||||
ADD run_gluster.sh /usr/local/bin/
|
||||
ADD index.html /vol/
|
||||
RUN chmod 644 /vol/index.html
|
||||
|
||||
EXPOSE 24007/tcp 49152/tcp
|
||||
|
||||
ENTRYPOINT ["/usr/local/bin/run_gluster.sh"]
|
8
vendor/k8s.io/kubernetes/test/images/volume/gluster/README.md
generated
vendored
Normal file
8
vendor/k8s.io/kubernetes/test/images/volume/gluster/README.md
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
# Gluster server container for testing
|
||||
|
||||
This container exports test_vol volume with an index.html inside.
|
||||
|
||||
Used by test/e2e/* to test GlusterfsVolumeSource. Not for production use!
|
||||
|
||||
|
||||
[]()
|
1
vendor/k8s.io/kubernetes/test/images/volume/gluster/VERSION
generated
vendored
Normal file
1
vendor/k8s.io/kubernetes/test/images/volume/gluster/VERSION
generated
vendored
Normal file
@ -0,0 +1 @@
|
||||
1.0
|
14
vendor/k8s.io/kubernetes/test/images/volume/gluster/glusterd.vol
generated
vendored
Normal file
14
vendor/k8s.io/kubernetes/test/images/volume/gluster/glusterd.vol
generated
vendored
Normal file
@ -0,0 +1,14 @@
|
||||
# This is default glusterd.vol (incl. commented out base-port),
|
||||
# with added "rpc-auth-allow-insecure on" to allow connection
|
||||
# from non-privileged ports.
|
||||
|
||||
volume management
|
||||
type mgmt/glusterd
|
||||
option working-directory /var/lib/glusterd
|
||||
option transport-type socket,rdma
|
||||
option transport.socket.keepalive-time 10
|
||||
option transport.socket.keepalive-interval 2
|
||||
option transport.socket.read-fail-log off
|
||||
# option base-port 49152
|
||||
option rpc-auth-allow-insecure on
|
||||
end-volume
|
1
vendor/k8s.io/kubernetes/test/images/volume/gluster/index.html
generated
vendored
Normal file
1
vendor/k8s.io/kubernetes/test/images/volume/gluster/index.html
generated
vendored
Normal file
@ -0,0 +1 @@
|
||||
Hello from GlusterFS!
|
46
vendor/k8s.io/kubernetes/test/images/volume/gluster/run_gluster.sh
generated
vendored
Executable file
46
vendor/k8s.io/kubernetes/test/images/volume/gluster/run_gluster.sh
generated
vendored
Executable file
@ -0,0 +1,46 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright 2015 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
DIR=`mktemp -d`
|
||||
|
||||
function start()
|
||||
{
|
||||
mount -t tmpfs test $DIR
|
||||
chmod 755 $DIR
|
||||
cp /vol/* $DIR/
|
||||
/usr/sbin/glusterd -p /run/glusterd.pid
|
||||
gluster volume create test_vol `hostname -i`:$DIR force
|
||||
gluster volume start test_vol
|
||||
}
|
||||
|
||||
function stop()
|
||||
{
|
||||
gluster --mode=script volume stop test_vol force
|
||||
kill $(cat /run/glusterd.pid)
|
||||
umount $DIR
|
||||
rm -rf $DIR
|
||||
exit 0
|
||||
}
|
||||
|
||||
|
||||
trap stop TERM
|
||||
|
||||
start "$@"
|
||||
|
||||
while true; do
|
||||
sleep 5
|
||||
done
|
||||
|
3
vendor/k8s.io/kubernetes/test/images/volume/iscsi/BASEIMAGE
generated
vendored
Normal file
3
vendor/k8s.io/kubernetes/test/images/volume/iscsi/BASEIMAGE
generated
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
amd64=fedora:28
|
||||
arm64=arm64v8/fedora:28
|
||||
ppc64le=ppc64le/fedora:28
|
35
vendor/k8s.io/kubernetes/test/images/volume/iscsi/Dockerfile
generated
vendored
Normal file
35
vendor/k8s.io/kubernetes/test/images/volume/iscsi/Dockerfile
generated
vendored
Normal file
@ -0,0 +1,35 @@
|
||||
# Copyright 2016 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
FROM BASEIMAGE
|
||||
|
||||
CROSS_BUILD_COPY qemu-QEMUARCH-static /usr/bin/
|
||||
|
||||
RUN yum install -y iscsi-initiator-utils targetcli net-tools strace procps-ng psmisc && yum clean all
|
||||
ADD run_iscsid.sh /usr/local/bin/
|
||||
ADD initiatorname.iscsi /etc/iscsi/
|
||||
ADD block.tar.gz /
|
||||
|
||||
# This JSON file was generated by targetcli with these commands:
|
||||
# /backstores/fileio create block /block
|
||||
# /iscsi create
|
||||
# # Enable demo mode (no authentication!):
|
||||
# /iscsi/iqn.2003-01.org.linux-iscsi.f21.x8664:sn.4b0aae584f7c/tpg1 set attribute authentication=0 demo_mode_write_protect=0 generate_node_acls=1 cache_dynamic_acls=1
|
||||
# /iscsi/iqn.2003-01.org.linux-iscsi.f21.x8664:sn.4b0aae584f7c/tpg1/luns create /backstores/fileio/block
|
||||
# saveconfig
|
||||
ADD saveconfig.json /etc/target/
|
||||
|
||||
EXPOSE 3260/tcp
|
||||
|
||||
ENTRYPOINT ["/usr/local/bin/run_iscsid.sh"]
|
14
vendor/k8s.io/kubernetes/test/images/volume/iscsi/README.md
generated
vendored
Normal file
14
vendor/k8s.io/kubernetes/test/images/volume/iscsi/README.md
generated
vendored
Normal file
@ -0,0 +1,14 @@
|
||||
# iSCSI target container for testing.
|
||||
|
||||
Inspired by https://github.com/rvykydal/dockerfile-iscsid
|
||||
|
||||
* The container needs /lib/modules from the host to insert appropriate
|
||||
kernel modules for iscsi. This assumes that these modules are installed
|
||||
on the host!
|
||||
|
||||
* The container needs to run with docker --privileged
|
||||
|
||||
block.tar.gz is a small ext2 filesystem created by `create_block.sh` (run as root!)
|
||||
|
||||
|
||||
[]()
|
1
vendor/k8s.io/kubernetes/test/images/volume/iscsi/VERSION
generated
vendored
Normal file
1
vendor/k8s.io/kubernetes/test/images/volume/iscsi/VERSION
generated
vendored
Normal file
@ -0,0 +1 @@
|
||||
1.0
|
BIN
vendor/k8s.io/kubernetes/test/images/volume/iscsi/block.tar.gz
generated
vendored
Normal file
BIN
vendor/k8s.io/kubernetes/test/images/volume/iscsi/block.tar.gz
generated
vendored
Normal file
Binary file not shown.
47
vendor/k8s.io/kubernetes/test/images/volume/iscsi/create_block.sh
generated
vendored
Executable file
47
vendor/k8s.io/kubernetes/test/images/volume/iscsi/create_block.sh
generated
vendored
Executable file
@ -0,0 +1,47 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright 2015 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# Exit on the first error.
|
||||
set -e
|
||||
|
||||
MNTDIR=`mktemp -d`
|
||||
|
||||
cleanup()
|
||||
{
|
||||
# Make sure we return the right exit code
|
||||
RET=$?
|
||||
# Silently remove everything and ignore errors
|
||||
set +e
|
||||
/bin/umount $MNTDIR 2>/dev/null
|
||||
/bin/rmdir $MNTDIR 2>/dev/null
|
||||
/bin/rm block 2>/dev/null
|
||||
exit $RET
|
||||
}
|
||||
|
||||
trap cleanup TERM EXIT
|
||||
|
||||
# Create 120MB device with ext2
|
||||
# (volume_io tests need at least 100MB)
|
||||
dd if=/dev/zero of=block seek=120 count=1 bs=1M
|
||||
mkfs.ext2 block
|
||||
|
||||
# Add index.html to it
|
||||
mount -o loop block $MNTDIR
|
||||
echo "Hello from iSCSI" > $MNTDIR/index.html
|
||||
umount $MNTDIR
|
||||
|
||||
rm block.tar.gz 2>/dev/null || :
|
||||
tar cfz block.tar.gz block
|
1
vendor/k8s.io/kubernetes/test/images/volume/iscsi/initiatorname.iscsi
generated
vendored
Normal file
1
vendor/k8s.io/kubernetes/test/images/volume/iscsi/initiatorname.iscsi
generated
vendored
Normal file
@ -0,0 +1 @@
|
||||
InitiatorName=iqn.1994-05.com.redhat:eb59fbe2c4c5
|
51
vendor/k8s.io/kubernetes/test/images/volume/iscsi/run_iscsid.sh
generated
vendored
Executable file
51
vendor/k8s.io/kubernetes/test/images/volume/iscsi/run_iscsid.sh
generated
vendored
Executable file
@ -0,0 +1,51 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright 2015 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
function start()
|
||||
{
|
||||
# targetcli need dbus
|
||||
mkdir /run/dbus
|
||||
dbus-daemon --system
|
||||
|
||||
# clear any previous configuration
|
||||
targetcli clearconfig confirm=True
|
||||
|
||||
# restore configuration from saveconfig.json
|
||||
targetcli restoreconfig
|
||||
|
||||
# maximum log level
|
||||
iscsid -f -d 8
|
||||
|
||||
echo "iscsid started"
|
||||
}
|
||||
|
||||
function stop()
|
||||
{
|
||||
echo "Stopping iscsid"
|
||||
killall iscsid
|
||||
targetcli clearconfig confirm=True
|
||||
|
||||
echo "iscsid stopped"
|
||||
exit 0
|
||||
}
|
||||
|
||||
|
||||
trap stop TERM
|
||||
start
|
||||
|
||||
while true; do
|
||||
sleep 5
|
||||
done
|
102
vendor/k8s.io/kubernetes/test/images/volume/iscsi/saveconfig.json
generated
vendored
Normal file
102
vendor/k8s.io/kubernetes/test/images/volume/iscsi/saveconfig.json
generated
vendored
Normal file
@ -0,0 +1,102 @@
|
||||
{
|
||||
"fabric_modules": [],
|
||||
"storage_objects": [
|
||||
{
|
||||
"attributes": {
|
||||
"block_size": 512,
|
||||
"emulate_3pc": 1,
|
||||
"emulate_caw": 1,
|
||||
"emulate_dpo": 0,
|
||||
"emulate_fua_read": 0,
|
||||
"emulate_fua_write": 1,
|
||||
"emulate_model_alias": 1,
|
||||
"emulate_rest_reord": 0,
|
||||
"emulate_tas": 1,
|
||||
"emulate_tpu": 0,
|
||||
"emulate_tpws": 0,
|
||||
"emulate_ua_intlck_ctrl": 0,
|
||||
"emulate_write_cache": 1,
|
||||
"enforce_pr_isids": 1,
|
||||
"force_pr_aptpl": 0,
|
||||
"is_nonrot": 0,
|
||||
"max_unmap_block_desc_count": 1,
|
||||
"max_unmap_lba_count": 8192,
|
||||
"max_write_same_len": 4096,
|
||||
"optimal_sectors": 16384,
|
||||
"pi_prot_format": 0,
|
||||
"pi_prot_type": 0,
|
||||
"queue_depth": 128,
|
||||
"unmap_granularity": 1,
|
||||
"unmap_granularity_alignment": 0
|
||||
},
|
||||
"dev": "block",
|
||||
"name": "block",
|
||||
"plugin": "fileio",
|
||||
"size": 126877696,
|
||||
"write_back": true,
|
||||
"wwn": "521c57aa-9d9b-4e5d-ab1a-527487f92a33"
|
||||
}
|
||||
],
|
||||
"targets": [
|
||||
{
|
||||
"fabric": "iscsi",
|
||||
"tpgs": [
|
||||
{
|
||||
"attributes": {
|
||||
"authentication": 0,
|
||||
"cache_dynamic_acls": 1,
|
||||
"default_cmdsn_depth": 64,
|
||||
"default_erl": 0,
|
||||
"demo_mode_discovery": 1,
|
||||
"demo_mode_write_protect": 0,
|
||||
"generate_node_acls": 1,
|
||||
"login_timeout": 15,
|
||||
"netif_timeout": 2,
|
||||
"prod_mode_write_protect": 0,
|
||||
"t10_pi": 0
|
||||
},
|
||||
"enable": true,
|
||||
"luns": [
|
||||
{
|
||||
"index": 0,
|
||||
"storage_object": "/backstores/fileio/block"
|
||||
}
|
||||
],
|
||||
"node_acls": [],
|
||||
"parameters": {
|
||||
"AuthMethod": "CHAP,None",
|
||||
"DataDigest": "CRC32C,None",
|
||||
"DataPDUInOrder": "Yes",
|
||||
"DataSequenceInOrder": "Yes",
|
||||
"DefaultTime2Retain": "20",
|
||||
"DefaultTime2Wait": "2",
|
||||
"ErrorRecoveryLevel": "0",
|
||||
"FirstBurstLength": "65536",
|
||||
"HeaderDigest": "CRC32C,None",
|
||||
"IFMarkInt": "2048~65535",
|
||||
"IFMarker": "No",
|
||||
"ImmediateData": "Yes",
|
||||
"InitialR2T": "Yes",
|
||||
"MaxBurstLength": "262144",
|
||||
"MaxConnections": "1",
|
||||
"MaxOutstandingR2T": "1",
|
||||
"MaxRecvDataSegmentLength": "8192",
|
||||
"MaxXmitDataSegmentLength": "262144",
|
||||
"OFMarkInt": "2048~65535",
|
||||
"OFMarker": "No",
|
||||
"TargetAlias": "LIO Target"
|
||||
},
|
||||
"portals": [
|
||||
{
|
||||
"ip_address": "0.0.0.0",
|
||||
"iser": false,
|
||||
"port": 3260
|
||||
}
|
||||
],
|
||||
"tag": 1
|
||||
}
|
||||
],
|
||||
"wwn": "iqn.2003-01.org.linux-iscsi.f21.x8664:sn.4b0aae584f7c"
|
||||
}
|
||||
]
|
||||
}
|
3
vendor/k8s.io/kubernetes/test/images/volume/nfs/BASEIMAGE
generated
vendored
Normal file
3
vendor/k8s.io/kubernetes/test/images/volume/nfs/BASEIMAGE
generated
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
amd64=centos:7
|
||||
arm64=arm64v8/centos:7
|
||||
ppc64le=ppc64le/centos:7
|
30
vendor/k8s.io/kubernetes/test/images/volume/nfs/Dockerfile
generated
vendored
Normal file
30
vendor/k8s.io/kubernetes/test/images/volume/nfs/Dockerfile
generated
vendored
Normal file
@ -0,0 +1,30 @@
|
||||
# Copyright 2016 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
FROM BASEIMAGE
|
||||
|
||||
CROSS_BUILD_COPY qemu-QEMUARCH-static /usr/bin/
|
||||
RUN yum -y install /usr/bin/ps nfs-utils && yum clean all
|
||||
RUN mkdir -p /exports
|
||||
ADD run_nfs.sh /usr/local/bin/
|
||||
ADD index.html /tmp/index.html
|
||||
RUN chmod 644 /tmp/index.html
|
||||
|
||||
# mark /exports as a mount point
|
||||
VOLUME /exports
|
||||
# expose mountd 20048/tcp and nfsd 2049/tcp
|
||||
EXPOSE 2049/tcp 20048/tcp
|
||||
|
||||
ENTRYPOINT ["/usr/local/bin/run_nfs.sh"]
|
||||
CMD ["/exports", "/"]
|
13
vendor/k8s.io/kubernetes/test/images/volume/nfs/README.md
generated
vendored
Normal file
13
vendor/k8s.io/kubernetes/test/images/volume/nfs/README.md
generated
vendored
Normal file
@ -0,0 +1,13 @@
|
||||
# NFS server container for testing
|
||||
|
||||
This container exports '/' directory with an index.html inside. NFSv4 only.
|
||||
|
||||
Accepts a -G option for specifying a group id to give exported directories.
|
||||
Clients in the specified group will have full rwx permissions, others none.
|
||||
|
||||
Inspired by https://github.com/cpuguy83/docker-nfs-server.
|
||||
|
||||
Used by test/e2e/* to test NFSVolumeSource. Not for production use!
|
||||
|
||||
|
||||
[]()
|
1
vendor/k8s.io/kubernetes/test/images/volume/nfs/VERSION
generated
vendored
Normal file
1
vendor/k8s.io/kubernetes/test/images/volume/nfs/VERSION
generated
vendored
Normal file
@ -0,0 +1 @@
|
||||
1.0
|
1
vendor/k8s.io/kubernetes/test/images/volume/nfs/index.html
generated
vendored
Normal file
1
vendor/k8s.io/kubernetes/test/images/volume/nfs/index.html
generated
vendored
Normal file
@ -0,0 +1 @@
|
||||
Hello from NFS!
|
84
vendor/k8s.io/kubernetes/test/images/volume/nfs/run_nfs.sh
generated
vendored
Executable file
84
vendor/k8s.io/kubernetes/test/images/volume/nfs/run_nfs.sh
generated
vendored
Executable file
@ -0,0 +1,84 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright 2015 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
function start()
|
||||
{
|
||||
|
||||
unset gid
|
||||
# accept "-G gid" option
|
||||
while getopts "G:" opt; do
|
||||
case ${opt} in
|
||||
G) gid=${OPTARG};;
|
||||
esac
|
||||
done
|
||||
shift $(($OPTIND - 1))
|
||||
|
||||
# prepare /etc/exports
|
||||
for i in "$@"; do
|
||||
# fsid=0: needed for NFSv4
|
||||
echo "$i *(rw,fsid=0,insecure,no_root_squash)" >> /etc/exports
|
||||
if [ -v gid ] ; then
|
||||
chmod 070 $i
|
||||
chgrp $gid $i
|
||||
fi
|
||||
# move index.html to here
|
||||
/bin/cp /tmp/index.html $i/
|
||||
chmod 644 $i/index.html
|
||||
echo "Serving $i"
|
||||
done
|
||||
|
||||
# start rpcbind if it is not started yet
|
||||
/usr/sbin/rpcinfo 127.0.0.1 > /dev/null; s=$?
|
||||
if [ $s -ne 0 ]; then
|
||||
echo "Starting rpcbind"
|
||||
/usr/sbin/rpcbind -w
|
||||
fi
|
||||
|
||||
mount -t nfsd nfsd /proc/fs/nfsd
|
||||
|
||||
# -V 3: enable NFSv3
|
||||
/usr/sbin/rpc.mountd -N 2 -V 3
|
||||
|
||||
/usr/sbin/exportfs -r
|
||||
# -G 10 to reduce grace time to 10 seconds (the lowest allowed)
|
||||
/usr/sbin/rpc.nfsd -G 10 -N 2 -V 3
|
||||
/usr/sbin/rpc.statd --no-notify
|
||||
echo "NFS started"
|
||||
}
|
||||
|
||||
function stop()
|
||||
{
|
||||
echo "Stopping NFS"
|
||||
|
||||
/usr/sbin/rpc.nfsd 0
|
||||
/usr/sbin/exportfs -au
|
||||
/usr/sbin/exportfs -f
|
||||
|
||||
kill $( pidof rpc.mountd )
|
||||
umount /proc/fs/nfsd
|
||||
echo > /etc/exports
|
||||
exit 0
|
||||
}
|
||||
|
||||
|
||||
trap stop TERM
|
||||
|
||||
start "$@"
|
||||
|
||||
# Ugly hack to do nothing and wait for SIGTERM
|
||||
while true; do
|
||||
sleep 5
|
||||
done
|
3
vendor/k8s.io/kubernetes/test/images/volume/rbd/BASEIMAGE
generated
vendored
Normal file
3
vendor/k8s.io/kubernetes/test/images/volume/rbd/BASEIMAGE
generated
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
amd64=fedora:26
|
||||
arm64=arm64v8/fedora:26
|
||||
ppc64le=ppc64le/fedora:26
|
36
vendor/k8s.io/kubernetes/test/images/volume/rbd/Dockerfile
generated
vendored
Normal file
36
vendor/k8s.io/kubernetes/test/images/volume/rbd/Dockerfile
generated
vendored
Normal file
@ -0,0 +1,36 @@
|
||||
# Copyright 2016 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# CEPH all in one
|
||||
# Based on image by Ricardo Rocha, ricardo@catalyst.net.nz
|
||||
|
||||
FROM BASEIMAGE
|
||||
|
||||
CROSS_BUILD_COPY qemu-QEMUARCH-static /usr/bin/
|
||||
|
||||
# Base Packages
|
||||
RUN yum install -y wget strace psmisc procps-ng ceph ceph-fuse && yum clean all
|
||||
|
||||
# Get ports exposed
|
||||
EXPOSE 6789
|
||||
|
||||
ADD ./bootstrap.sh /bootstrap.sh
|
||||
ADD ./mon.sh /mon.sh
|
||||
ADD ./mds.sh /mds.sh
|
||||
ADD ./osd.sh /osd.sh
|
||||
ADD ./ceph.conf.sh /ceph.conf.sh
|
||||
ADD ./keyring /var/lib/ceph/mon/keyring
|
||||
ADD ./block.tar.gz /
|
||||
|
||||
CMD /bootstrap.sh
|
5
vendor/k8s.io/kubernetes/test/images/volume/rbd/README.md
generated
vendored
Normal file
5
vendor/k8s.io/kubernetes/test/images/volume/rbd/README.md
generated
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
# rbd and ceph target container for testing.
|
||||
|
||||
* The container needs to run with docker --privileged
|
||||
|
||||
block.tar.gz is a small ext2 filesystem created by `create_block.sh` (run as root!)
|
1
vendor/k8s.io/kubernetes/test/images/volume/rbd/VERSION
generated
vendored
Normal file
1
vendor/k8s.io/kubernetes/test/images/volume/rbd/VERSION
generated
vendored
Normal file
@ -0,0 +1 @@
|
||||
1.0.1
|
BIN
vendor/k8s.io/kubernetes/test/images/volume/rbd/block.tar.gz
generated
vendored
Normal file
BIN
vendor/k8s.io/kubernetes/test/images/volume/rbd/block.tar.gz
generated
vendored
Normal file
Binary file not shown.
67
vendor/k8s.io/kubernetes/test/images/volume/rbd/bootstrap.sh
generated
vendored
Executable file
67
vendor/k8s.io/kubernetes/test/images/volume/rbd/bootstrap.sh
generated
vendored
Executable file
@ -0,0 +1,67 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright 2015 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
#
|
||||
# Bootstraps a CEPH server.
|
||||
# It creates two OSDs on local machine, creates RBD pool there
|
||||
# and imports 'block' device there.
|
||||
#
|
||||
# We must create fresh OSDs and filesystem here, because shipping it
|
||||
# in a container would increase the image by ~300MB.
|
||||
#
|
||||
|
||||
|
||||
# Create /etc/ceph/ceph.conf
|
||||
sh ./ceph.conf.sh `hostname -i`
|
||||
|
||||
# Configure and start ceph-mon
|
||||
sh ./mon.sh `hostname -i`
|
||||
|
||||
# Configure and start 2x ceph-osd
|
||||
mkdir -p /var/lib/ceph/osd/ceph-0 /var/lib/ceph/osd/ceph-1
|
||||
sh ./osd.sh 0
|
||||
sh ./osd.sh 1
|
||||
|
||||
# Configure and start cephfs metadata server
|
||||
sh ./mds.sh
|
||||
|
||||
# Prepare a RBD volume "foo" (only with layering feature, the others may
|
||||
# require newer clients).
|
||||
# NOTE: we need Ceph kernel modules on the host that runs the client!
|
||||
rbd import --image-feature layering block foo
|
||||
|
||||
# Prepare a cephfs volume
|
||||
ceph osd pool create cephfs_data 4
|
||||
ceph osd pool create cephfs_metadata 4
|
||||
ceph fs new cephfs cephfs_metadata cephfs_data
|
||||
# Put index.html into the volume
|
||||
# It takes a while until the volume created above is mountable,
|
||||
# 1 second is usually enough, but try indefinetily.
|
||||
sleep 1
|
||||
while ! ceph-fuse -m `hostname -i`:6789 /mnt; do
|
||||
echo "Waiting for cephfs to be up"
|
||||
sleep 1
|
||||
done
|
||||
echo "Hello Ceph!" > /mnt/index.html
|
||||
chmod 644 /mnt/index.html
|
||||
umount /mnt
|
||||
|
||||
echo "Ceph is ready"
|
||||
|
||||
# Wait forever
|
||||
while true; do
|
||||
sleep 10
|
||||
done
|
42
vendor/k8s.io/kubernetes/test/images/volume/rbd/ceph.conf.sh
generated
vendored
Executable file
42
vendor/k8s.io/kubernetes/test/images/volume/rbd/ceph.conf.sh
generated
vendored
Executable file
@ -0,0 +1,42 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright 2015 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
#
|
||||
# Configures /etc/ceph.conf from a template.
|
||||
#
|
||||
|
||||
echo "
|
||||
[global]
|
||||
auth cluster required = none
|
||||
auth service required = none
|
||||
auth client required = none
|
||||
|
||||
[mon.a]
|
||||
host = cephbox
|
||||
mon addr = $1
|
||||
|
||||
[osd]
|
||||
osd journal size = 128
|
||||
journal dio = false
|
||||
|
||||
# allow running on ext4
|
||||
osd max object name len = 256
|
||||
osd max object namespace len = 64
|
||||
|
||||
[osd.0]
|
||||
osd host = cephbox
|
||||
" > /etc/ceph/ceph.conf
|
||||
|
50
vendor/k8s.io/kubernetes/test/images/volume/rbd/create_block.sh
generated
vendored
Executable file
50
vendor/k8s.io/kubernetes/test/images/volume/rbd/create_block.sh
generated
vendored
Executable file
@ -0,0 +1,50 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright 2015 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
# Create block.tar.gz with a small ext2 filesystem.
|
||||
# It must be run as root (to mount with '-o loop')!
|
||||
|
||||
# Exit on the first error.
|
||||
set -e
|
||||
|
||||
MNTDIR=`mktemp -d`
|
||||
|
||||
cleanup()
|
||||
{
|
||||
# Make sure we return the right exit code
|
||||
RET=$?
|
||||
# Silently remove everything and ignore errors
|
||||
set +e
|
||||
/bin/umount $MNTDIR 2>/dev/null
|
||||
/bin/rmdir $MNTDIR 2>/dev/null
|
||||
/bin/rm block 2>/dev/null
|
||||
exit $RET
|
||||
}
|
||||
|
||||
trap cleanup TERM EXIT
|
||||
|
||||
# Create 120MB device with ext2
|
||||
# (volume_io tests need at least 100MB)
|
||||
dd if=/dev/zero of=block seek=120 count=1 bs=1M
|
||||
mkfs.ext2 block
|
||||
|
||||
# Add index.html to it
|
||||
mount -o loop block $MNTDIR
|
||||
echo "Hello from RBD" > $MNTDIR/index.html
|
||||
umount $MNTDIR
|
||||
|
||||
rm block.tar.gz 2>/dev/null || :
|
||||
tar cfz block.tar.gz block
|
8
vendor/k8s.io/kubernetes/test/images/volume/rbd/keyring
generated
vendored
Normal file
8
vendor/k8s.io/kubernetes/test/images/volume/rbd/keyring
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
[mon.]
|
||||
key = AQDRrKNV6z4UChAABzP1ZyysTU4pjgjNOf/p3A==
|
||||
[client.admin]
|
||||
key = AQDRrKNVbEevChAAEmRC+pW/KBVHxa0w/POILA==
|
||||
auid = 0
|
||||
caps mds = "allow *"
|
||||
caps mon = "allow *"
|
||||
caps osd = "allow *"
|
20
vendor/k8s.io/kubernetes/test/images/volume/rbd/mds.sh
generated
vendored
Executable file
20
vendor/k8s.io/kubernetes/test/images/volume/rbd/mds.sh
generated
vendored
Executable file
@ -0,0 +1,20 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright 2017 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
#
|
||||
# Configures Ceph Metadata Service (mds), needed by CephFS
|
||||
#
|
||||
ceph-mds -i cephfs -c /etc/ceph/ceph.conf
|
36
vendor/k8s.io/kubernetes/test/images/volume/rbd/mon.sh
generated
vendored
Executable file
36
vendor/k8s.io/kubernetes/test/images/volume/rbd/mon.sh
generated
vendored
Executable file
@ -0,0 +1,36 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright 2015 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
#
|
||||
# Configures and launches a new MON.
|
||||
#
|
||||
|
||||
# monitor setup
|
||||
monmaptool --create --clobber --fsid `uuidgen` --add a $1:6789 /etc/ceph/monmap
|
||||
mkdir /var/lib/ceph/mon/ceph-a
|
||||
ceph-mon -i a --mkfs --monmap /etc/ceph/monmap -k /var/lib/ceph/mon/keyring
|
||||
cp /var/lib/ceph/mon/keyring /var/lib/ceph/mon/ceph-a
|
||||
ceph-mon -i a --monmap /etc/ceph/monmap -k /var/lib/ceph/mon/ceph-a/keyring
|
||||
|
||||
# client setup (handy)
|
||||
cp /var/lib/ceph/mon/keyring /etc/ceph
|
||||
|
||||
# for this test we want to
|
||||
ceph osd getcrushmap -o /tmp/crushc
|
||||
crushtool -d /tmp/crushc -o /tmp/crushd
|
||||
sed -i 's/step chooseleaf firstn 0 type host/step chooseleaf firstn 0 type osd/' /tmp/crushd
|
||||
crushtool -c /tmp/crushd -o /tmp/crushc
|
||||
ceph osd setcrushmap -i /tmp/crushc
|
25
vendor/k8s.io/kubernetes/test/images/volume/rbd/osd.sh
generated
vendored
Executable file
25
vendor/k8s.io/kubernetes/test/images/volume/rbd/osd.sh
generated
vendored
Executable file
@ -0,0 +1,25 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright 2015 The Kubernetes Authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
#
|
||||
# Configures and launches a new OSD.
|
||||
#
|
||||
|
||||
ceph osd create
|
||||
ceph-osd -i $1 --mkfs --mkkey
|
||||
ceph auth add osd.$1 osd 'allow *' mon 'allow rwx' -i /var/lib/ceph/osd/ceph-$1/keyring
|
||||
ceph osd crush add $1 1 root=default host=cephbox
|
||||
ceph-osd -i $1 -k /var/lib/ceph/osd/ceph-$1/keyring
|
Reference in New Issue
Block a user