A WFCORE JIRA for Tristan's specific request would be good.
I don't think the discussion on this thread is close enough to a
consensus on how to practically use this data in handling deployment ops
for it to be useful to bring that aspect into a JIRA.
On 11/23/15 4:13 AM, Lin Gao wrote:
>From what I learned of this thread, a service to expose the file
system space availability
needs to be implemented first, then provides a way to check whether the server
locations("data")
have enough disk spaces to store the uploaded file.
Should we create a Jira for this? :-)
Best Regards
--
Lin Gao
Software Engineer
JBoss by Red Hat
----- Original Message -----
> From: "Darran Lofthouse" <darran.lofthouse(a)jboss.com>
> To: "Jason T. Greene" <jason.greene(a)redhat.com>, "Tristan
Tarrant" <ttarrant(a)redhat.com>
> Cc: wildfly-dev(a)lists.jboss.org
> Sent: Wednesday, November 4, 2015 11:21:11 PM
> Subject: Re: [wildfly-dev] Shall we limit size of the deployment in WildFly?
>
> This would also be something ideal to report on in the "administrator
> encouragement" service I keep meaning to look into again ;-)
>
> On 04/11/15 15:02, Jason T. Greene wrote:
>> Yes that would be very clear cut and easy to do.
>>
>>> On Nov 4, 2015, at 8:38 AM, Tristan Tarrant <ttarrant(a)redhat.com>
wrote:
>>>
>>> While we're on filesystem space availability, for monitoring purposes,
>>> would it be possible to expose this as a runtime metric for known server
>>> locations (data, tmp, logs) ?
>>>
>>> Tristan
>>>
>>>> On 04/11/2015 13:37, Jason T. Greene wrote:
>>>> On Nov 3, 2015, at 7:14 PM, Lin Gao <lgao(a)redhat.com> wrote:
>>>>
>>>>>>> On 11/03/2015 02:41 AM, Lin Gao wrote:
>>>>>>> Hi,
>>>>>>>
>>>>>>> WildFly does not limit the deployment file size, users
with
>>>>>>> appropriate
>>>>>>> privilege(deployer) can select any file to deploy from
both CLI and
>>>>>>> web
>>>>>>> console.
>>>>>>>
>>>>>>> For the too big file, it may exhaust all available disk
space, and
>>>>>>> in
>>>>>>> some cases, even small file can exhaust the disk space if
the
>>>>>>> current
>>>>>>> disk space is not big enough.
>>>>>>>
>>>>>>> So shall we limit file size of the deployment in WildFly?
or shall
>>>>>>> we
>>>>>>> limit the available disk space? or shall we just show a
warning
>>>>>>> message
>>>>>>> to users?
>>>>>>>
>>>>>>> If we do, where in the management API configuration for
this should
>>>>>>> be
>>>>>>> done, if it is done this way?
>>>>>>>
>>>>>>> Arbitrary limits will break users, so if we have an
arbitrary limit
>>>>>>> it
>>>>>>> needs to be easily adjusted.
>>>>>>>
>>>>>>> In case of domain mode, different hosts may have
different disk
>>>>>>> space,
>>>>>>> which means they are likely have different capacity to
hold
>>>>>>> deployment
>>>>>>> files. For example, servers in server-group-A may have
2GB
>>>>>>> available
>>>>>>> disk space, servers in server-group-B may have 200MB
available disk
>>>>>>> space. An unified limit for the whole domain seems not
fair for the
>>>>>>> servers with more available disk space.
>>>>>>>
>>>>>>> Also, WildFly does not limit type of the deployment file,
but it
>>>>>>> might
>>>>>>> need a separate discussion if necessary?
>>>>>>>
>>>>>>> Any thoughts?
>>>>>>
>>>>>> Is this in response to a real observed problem?
>>>>>
>>>>> Yes it is.
>>>>
>>>> My understanding was that this was reported by a user but it was
reported
>>>> as something they were concerned with, and not actually something that
>>>> was occurring in their environment.
>>>>
>>>> I agree with David that disk quotas on the processing running the app
>>>> server is the most appropriate solution to prevent interference with
>>>> other processes.
>>>>
>>>> I do not think we should have a hard coded limit as a constant because
>>>> that will prevent legit deployments from working, and you can still run
>>>> out of disk space (e.g you have 20k left and you upload a 21k
>>>> deployment, which is under 1G)
>>>>
>>>> We could have an extra check that verifies enough disk space in the add
>>>> content management op, however Java does not give us access to quota
>>>> information so the best we could do is only verify available disk space
>>>> (unless we exec a command for every platform we support).
>>>>
>>>> IMO this one is pretty low priority, but perhaps those that monitor this
>>>> list see it as a need. If so can you speak up?
>>>>
>>>>
>>>>
>>>>>
>>>>>> In general, if the user
>>>>>> doesn't have space for a deployment, the deployment will fail
with an
>>>>>> error and (I am fairly certain) will delete the partial
deployment. If
>>>>>> there is space, then the deployment will succeed regardless of
size.
>>>>>
>>>>>> It's interesting that the JIRA you reference speaks in terms
of
>>>>>> security. If an admin wants to lock down storage space, it's
probably
>>>>>> best to do it at the operating system level using e.g. disk
quotas -
>>>>>> there are too many ways to get the application server to write
>>>>>> arbitrary
>>>>>> amounts of data to the file system, regardless of the presence of
a
>>>>>> security manager or any other application-level control.
>>>>>>
>>>>>> I'm pretty sure that if an attacker has permission to upload
>>>>>> deployments
>>>>>> to the server, they already essentially have control over the
server.
>>>>>> This should be an OS level concern.
>>>>>
>>>>> The JIRA in question was a 'bug' related to security at
first, after
>>>>> several
>>>>> rounds of discussion, it is agreed that it is not a security
>>>>> vulnerability, but
>>>>> an 'Enhancement'.
>>>>>
>>>>> The proposed requirement for the enhancement is:
>>>>>
>>>>> Provide an option in config to alert user that
>>>>> a) File is larger than a configurable limit
>>>>> b) File type is/is not valid.
>>>>>
>>>>> but it may need more discussion in community on both the requirement
and
>>>>> design
>>>>> if it will be done, that is why this thread comes out in first
place.
>>>>> :-)
>>>>>
>>>>>>> FYI:
https://issues.jboss.org/browse/WFCORE-1057
>>>>>
>>>>> Best Regards
>>>>> --
>>>>> Lin Gao
>>>>> Software Engineer
>>>>> JBoss by Red Hat
>>>>> _______________________________________________
>>>>> wildfly-dev mailing list
>>>>> wildfly-dev(a)lists.jboss.org
>>>>>
https://lists.jboss.org/mailman/listinfo/wildfly-dev
>>>>
>>>> _______________________________________________
>>>> wildfly-dev mailing list
>>>> wildfly-dev(a)lists.jboss.org
>>>>
https://lists.jboss.org/mailman/listinfo/wildfly-dev
>>>
>>> --
>>> Tristan Tarrant
>>> Infinispan Lead
>>> JBoss, a division of Red Hat
>>> _______________________________________________
>>> wildfly-dev mailing list
>>> wildfly-dev(a)lists.jboss.org
>>>
https://lists.jboss.org/mailman/listinfo/wildfly-dev
>>
>> _______________________________________________
>> wildfly-dev mailing list
>> wildfly-dev(a)lists.jboss.org
>>
https://lists.jboss.org/mailman/listinfo/wildfly-dev
>>
> _______________________________________________
> wildfly-dev mailing list
> wildfly-dev(a)lists.jboss.org
>
https://lists.jboss.org/mailman/listinfo/wildfly-dev
>
_______________________________________________
wildfly-dev mailing list
wildfly-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/wildfly-dev