From: Walker, Benjamin <benjamin.walker at intel.com>
To: spdk@lists.01.org
Subject: Re: [SPDK] 答复: NVMe-oF question with SPDK
Date: Thu, 20 Sep 2018 18:43:56 +0000 [thread overview]
Message-ID: <acdf2595e0cd2afde9dcb8d89d77f94fc05acf73.camel@intel.com> (raw)
In-Reply-To: CY4PR03MB2503A8512E259428E82DEF21C1130@CY4PR03MB2503.namprd03.prod.outlook.com
[-- Attachment #1: Type: text/plain, Size: 4694 bytes --]
On Thu, 2018-09-20 at 08:01 +0000, Shi Bingxun wrote:
> Hi Changpeng,
>
>
> Thanks for your clarification. So that means with current version SPDK,
> NVMeOF info can't be saved, including NVMe bdevs, logical volumes created on
> the bdevs. All settings will be reset after target reboots. Is my
> understanding correct?
SPDK is currently transitioning between configuration models. The old model was
a configuration file (examples are in etc/spdk/*.conf) that was passed to the
target application when it was started. Passing the same configuration file on
each run meant that the configuration was persisted. The configuration file is
still supported, but isn't long term solution.
The new model is to start up the target with no arguments, send it a series of
JSON-RPC commands using one of our command-line tools to configure it, then send
it a "save config" JSON-RPC that will dump out a sequence of JSON-RPC commands
to reproduce the current configuration state. That can be saved to a file and
the next time the target is started that file can be passed in to recover the
state. We're almost done implementing all of the infrastructure for this model,
but we're not quite there just yet.
To further complicate matters, some SPDK configuration data is stored in the
configuration file and some is stored as metadata on the storage devices
themselves (such as logical volume information). For a system containing logical
volumes, for example, the configuration file only specifies which storage
devices to claim. These devices are examined at start up and if metadata is
found, the logical volumes are created using that automatically.
>
>
> Neil
>
> ________________________________
> 发件人: SPDK <spdk-bounces(a)lists.01.org> 代表 Liu, Changpeng <
> changpeng.liu(a)intel.com>
> 发送时间: 2018年9月20日 7:43:31
> 收件人: Storage Performance Development Kit
> 抄送: shibx(a)lenovo.com
> 主题: Re: [SPDK] NVMe-oF question with SPDK
>
> SPDK already provides such framework right now, but NVMeoF part is still
> missing,
> the configuration can be saved to JSON file(Already done) and can be loaded
> for next start(missing).
>
>
> > -----Original Message-----
> > From: SPDK [mailto:spdk-bounces(a)lists.01.org] On Behalf Of Shi Bingxun
> > Sent: Thursday, September 20, 2018 3:21 PM
> > To: spdk(a)lists.01.org
> > Cc: shibx(a)lenovo.com
> > Subject: [SPDK] NVMe-oF question with SPDK
> >
> > Dear experts,
> >
> >
> > Could you help to advice for my issues with SPDK? I'm trying to setup NVMe
> > over
> > fabric environment using SPDK. With below listed steps, I can successfully
> > connect NVMe subsystem on initiator. So I think my steps should
> > work. But I
> > found once the target reboots, the setup information on the target will be
> > gone,
> > like the created NVMe bdevs, I'm really confused. Won't the created bdev be
> > saved?
> >
> > ----------------------------------------------------------------------------
> > ------------------
> >
> > On NVMe target:
> >
> > sudo scripts/setup.sh
> > ./app/nvmf_tgt/nvmf_tgt &
> > cd scripts
> > ./rpc.py construct_nvme_bdev -b NVMe1 -t PCIe -a 0000:03:00.0
> > ./rpc.py construct_nvmf_subsystem nqn.2016-06.io.spdk:cnode1 "trtype:RDMA
> > traddr:192.168.1.2 trsvcid:4420" "" -a -s SPDK00000000000001 -n NVMe1n1
> >
> > On initiator:
> > nvme connect -t rdma -n "nqn.2016-06.io.spdk:cnode1" -a 192.168.1.2 -s 4420
> > ----------------------------------------------------------------------------
> > --------------------
> > When target reboots, I run below command to check the bdev, it reports
> > "*ERROR*: bdev 'Nvme0n1' does not exist"
> > ./app/nvmf_tgt/nvmf_tgt &
> > ./rpc.py get_bdevs -b NVMe1n1
> >
> >
> > On SPDK website, there is a configuration file followed nvmf_tgt command. I
> > tried
> > to add "TransportID "trtype:PCIe traddr:0000:03:00.0" NVMe1" in the
> > configuration file, NVMe1n1 bdev is available after this command. But looks
> > like
> > the NVMe bdev is created again when the command runs, is my understanding
> > correct?
> >
> > app/nvmf_tgt/nvmf_tgt -c /path/to/nvmf.conf
> >
> >
> >
> > Thanks
> > Neil
> > _______________________________________________
> > SPDK mailing list
> > SPDK(a)lists.01.org
> > https://lists.01.org/mailman/listinfo/spdk
>
> _______________________________________________
> SPDK mailing list
> SPDK(a)lists.01.org
> https://lists.01.org/mailman/listinfo/spdk
> _______________________________________________
> SPDK mailing list
> SPDK(a)lists.01.org
> https://lists.01.org/mailman/listinfo/spdk
next reply other threads:[~2018-09-20 18:43 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-09-20 18:43 Walker, Benjamin [this message]
-- strict thread matches above, loose matches on Subject: below --
2018-09-20 8:01 [SPDK] 答复: NVMe-oF question with SPDK Shi Bingxun
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=acdf2595e0cd2afde9dcb8d89d77f94fc05acf73.camel@intel.com \
--to=spdk@lists.01.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox