Hi,
I deployed gridgain ultimate 2.8.18 to kubernetes with mount point for work
directory to store ignite data as per steps mentioned  below

https://www.gridgain.com/docs/latest/installation-guide/kubernetes/amazon-eks-deployment

It works if I don't use an external  mount point for the work directory
but  when I use the below configuration, it throws the below error
saying it cannot write to the work directory.
mounted volumes as mounted as root with below permission set
*drwxr-xr-x -> root*
But the container starts with user gridgain.

Do those volumes need explicit permission or I am missing any other steps
here ?



SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further
details.
class org.apache.ignite.IgniteException: Cannot write to work directory:
/opt/gridgain/work
at
org.apache.ignite.internal.util.IgniteUtils.convertException(IgniteUtils.java:1130)
at org.apache.ignite.Ignition.start(Ignition.java:347)
at
org.apache.ignite.startup.cmdline.CommandLineStartup.main(CommandLineStartup.java:358)
Caused by: class org.apache.ignite.IgniteCheckedException: Cannot write to
work directory: /opt/gridgain/work
at
org.apache.ignite.internal.util.IgniteUtils.workDirectory(IgniteUtils.java:10126)
at
org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.initializeConfiguration(IgnitionEx.java:1874)
at
org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1700)
at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1143)
at
org.apache.ignite.internal.IgnitionEx.startConfigurations(IgnitionEx.java:1058)
at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:944)
at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:843)
at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:713)
at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:682)
at org.apache.ignite.Ignition.start(Ignition.java:344)
... 1 more
Failed to start grid: Cannot write to work directory: /opt/gridgain/work




config:

<bean class="org.apache.ignite.configuration.IgniteConfiguration">

       <property name="workDirectory" value="/opt/gridgain/work"/>
        <property name="queryThreadPoolSize" value="8"/>

        <property name="dataStorageConfiguration">
            <bean
class="org.apache.ignite.configuration.DataStorageConfiguration">
<property name="walPath" value="/opt/gridgain/wal"/>
                <property name="walArchivePath"
value="/opt/gridgain/walarchive"/>
            </bean>
        </property>
        <property name="pluginConfigurations">
            <bean
class="org.gridgain.grid.configuration.GridGainConfiguration">
                <property name="snapshotConfiguration">
                    <bean
class="org.gridgain.grid.configuration.SnapshotConfiguration">
                        <!--<property name="snapshotsPath"
value="/opt/gridgain/snapshots/"/>-->
                    </bean>
                </property>
            </bean>
        </property>
        <property name="discoverySpi">
            <bean
class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
               ....
            </bean>
        </property>

    </bean>

statefulset config:
....
image: gridgain/ultimate:8.8.18-openjdk11-slim
volumeMounts:
        - mountPath: /opt/gridgain/config
          mountPropagation: None
          name: config-vol
        - mountPath: /opt/gridgain/work
          mountPropagation: None
          name: work-vol

Reply via email to