# gnt-instance start -H kernel_args="rw init=/bin/sh" INSTANCE Waiting for job 1333533 for INSTANCE ... # gnt-instance console INSTANCE Initializing cgroup subsys cpuset Initializing cgroup subsys cpu Linux version 2.6.32-358.23.2.el6.x86_64 (mockbuild@c6b9.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC) ) #1 SMP Wed Oct 16 18:37:12 UTC 2013 Command line: ro root=LABEL=root rhgb noquiet root=/dev/xvda rw init=/bin/sh [cut] sh: cannot set terminal process group (-1): Inappropriate ioctl for device sh: no job control in this shell sh-4.1# passwd Changing password for user root. New password: Retype new password: passwd: all authentication tokens updated successfully. sh-4.1# exit # gnt-instance reboot INSTANCE
Friday, 20 February 2015
Starting a Ganeti VM to reset root password
Tuesday, 17 February 2015
Oracle Apache PL/SQL Gateway Module - OWA - mod_owa
The mod_owa Apache module allows you to access an Oracle Database using a webfront end.
Download and install Oracle Instant Client for your system from here: http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html
On CentOS edit /etc/sysconfig/httpd, or /etc/apache2/envvars on Debian:
export TNS_ADMIN=/etc/oracle export ORACLE_HOME=/usr/lib/oracle/11.2/client64 export PATH=$PATH:$ORACLE_HOME/bin export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/libCreate and put you tnsname.ora in the /etc/oracle directory. Download and install mod_owa from here: https://oss.oracle.com/projects/mod_owa/dist/documentation/modowa.htm Create an Apache configuration file as such:
LoadModule owa_module /etc/httpd/modules/mod_owa.soSetHandler owa_handler OwaUserid username/password@ORACLEDBNAME OwaDiag COMMAND ARGS CGIENV POOL SQL MEMORY ERROR THREADS HEADER RESPONSE OwaLog "/var/log/httpd/mod_owa.log" OwaAdmin 127.0.0.1 255.255.255.255 OwaPool 10 OwaStart "login" OwaDocProc "doc_pkg.readfile" OwaDocPath docs OwaUploadMax 10M OwaCharsize 2 OwaCharset "utf-8" #OwaCharset "UTF-8" #OwaBindset "UTF-8" #OwaUnicode "FULL" order deny,allow allow from all OwaDocTable ndrd_file_objects BLOB_CONTENT
Monday, 16 February 2015
Create a self-signed Certificate (non-trusted) - enable https
Generate keys, CA, and signed certificate:
# openssl genrsa -out ca.key 2048 # openssl req -new -key ca.key -out ca.csr # openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt # cp ca.crt /etc/pki/tls/certs # cp ca.key /etc/pki/tls/private/ca.key # cp ca.csr /etc/pki/tls/private/ca.csrInstall mod_ssl and create ssl.conf file:
# yum install mod_ssl # cat /etc/httpd/conf.d/ssl LoadModule ssl_module modules/mod_ssl.so Listen 443 SSLPassPhraseDialog builtin SSLSessionCache shmcb:/var/cache/mod_ssl/scache(512000) SSLSessionCacheTimeout 300 SSLMutex default SSLRandomSeed startup file:/dev/urandom 256 SSLRandomSeed connect builtin #SSLRandomSeed startup file:/dev/random 512 #SSLRandomSeed connect file:/dev/random 512 #SSLRandomSeed connect file:/dev/urandom 512 SSLCryptoDevice builtin #SSLCryptoDevice ubsecDocumentRoot "/var/www/html" ServerName webtest.isys.bris.ac.uk ErrorLog logs/ssl_error_log TransferLog logs/ssl_access_log LogLevel warn SSLEngine on SSLProtocol all -SSLv2 SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW SSLCertificateFile /etc/pki/tls/certs/ca.crt SSLCertificateKeyFile /etc/pki/tls/private/ca.key #SSLCertificateChainFile /etc/pki/tls/certs/server-chain.crt #SSLCACertificateFile /etc/pki/tls/certs/ca-bundle.crt #SSLVerifyClient require #SSLVerifyDepth 10 # #SSLRequire ( %{SSL_CIPHER} !~ m/^(EXP|NULL)/ \ # and %{SSL_CLIENT_S_DN_O} eq "Snake Oil, Ltd." \ # and %{SSL_CLIENT_S_DN_OU} in {"Staff", "CA", "Dev"} \ # and %{TIME_WDAY} >= 1 and %{TIME_WDAY} <= 5 \ # and %{TIME_HOUR} >= 8 and %{TIME_HOUR} <= 20 ) \ # or %{REMOTE_ADDR} =~ m/^192\.76\.162\.[0-9]+$/ # #SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire SSLOptions +StdEnvVars SSLOptions +StdEnvVars SetEnvIf User-Agent ".*MSIE.*" \ nokeepalive ssl-unclean-shutdown \ downgrade-1.0 force-response-1.0 CustomLog logs/ssl_request_log \ "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
Tuesday, 10 February 2015
Basic mcollective commands
# mco ping # mco findService
# mco rpc service status service=httpd # mco rpc service stop service=httpd # mco rpc service start service=httpdUse the -I filter to target a specific machine, eg:
# mco rpc service status service=httpd -I node01.domain.netRPC
# mco rpc rpcutil get_fact fact=operatingsystem
Monday, 9 February 2015
Basic Ganeti Commands
Show nodes and instances:
# gnt-node list # gnt-instance listList instances and there primary and secondary disks:
# gnt-instance list --no-headers -o name,pnode,snodesMove secondary disks to another node:
# gnt-instance replace-disks -nMigrate instance to secondary node:
# gnt-instance migrateView storage & volumes
# gnt-node list-storage # gnt-node volumes
Thursday, 5 February 2015
Cannot run ActiveMQ to listen on port 61614 (or any other ports)? Create the activemq-data/localhost/ directory
Check the ActiveMQ log:
# tail /var/log/activemq/activemq.log 2015-02-04 12:04:42,929 [main ] INFO SharedFileLocker - Database activemq-data/localhost/KahaDB/lock is locked... waiting 10 seconds for the database to be unlocked. Reason: java.io.IOException: Failed to create directory 'activemq-data/localhost/KahaDB' 2015-02-04 12:04:52,929 [main ] INFO SharedFileLocker - Database activemq-data/localhost/KahaDB/lock is locked... waiting 10 seconds for the database to be unlocked. Reason: java.io.IOException: Failed to create directory 'activemq-data/localhost/KahaDB' 2015-02-04 12:05:02,931 [main ] INFO SharedFileLocker - Database activemq-data/localhost/KahaDB/lock is locked... waiting 10 seconds for the database to be unlocked. Reason: java.io.IOException: Failed to create directory 'activemq-data/localhost/KahaDB' 2015-02-04 12:05:12,932 [main ] INFO SharedFileLocker - Database activemq-data/localhost/KahaDB/lock is locked... waiting 10 seconds for the database to be unlocked. Reason: java.io.IOException: Failed to create directory 'activemq-data/localhost/KahaDB' 2015-02-04 12:05:22,933 [main ] INFO SharedFileLocker - Database activemq-data/localhost/KahaDB/lock is locked... waiting 10 seconds for the database to be unlocked. Reason: java.io.IOException: Failed to create directory 'activemq-data/localhost/KahaDB' 2015-02-04 12:05:34,208 [main ] INFO XBeanBrokerFactory$1 - Refreshing org.apache.activemq.xbean.XBeanBrokerFactory$1@6bf28508: startup date [Wed Feb 04 12:05:34 GMT 2015]; root of context hierarchy 2015-02-04 12:05:35,332 [main ] INFO PListStoreImpl - PListStore:[/usr/share/activemq/activemq-data/localhost/tmp_storage] started 2015-02-04 12:05:35,466 [main ] INFO BrokerService - Using Persistence Adapter: KahaDBPersistenceAdapter[/usr/share/activemq/activemq-data/localhost/KahaDB] 2015-02-04 12:05:35,467 [JMX connector ] INFO ManagementContext - JMX consoles can connect to service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi 2015-02-04 12:05:35,468 [main ] INFO SharedFileLocker - Database activemq-data/localhost/KahaDB/lock is locked... waiting 10 seconds for the database to be unlocked. Reason: java.io.IOException: Failed to create directory 'activemq-data/localhost/KahaDB'There's no 'activemq-data' or 'activemq-data/localhost' or 'activemq-data/localhost/KahaDB', so create it:
# mkdir -p /usr/share/activemq/activemq-data/localhost/ # chown -R activemq:activemq /usr/share/activemq/activemq-data/localhost/ # service activemq restartLook at the logs again, use lsof on the port:
# tail /var/log/activemq/activemq.log
2015-02-04 12:08:22,850 [main ] INFO ndingBeanNameUrlHandlerMapping - Mapped URL path [/moveMessage.action] onto handler '/moveMessage.action'
2015-02-04 12:08:22,850 [main ] INFO ndingBeanNameUrlHandlerMapping - Mapped URL path [/deleteJob.action] onto handler '/deleteJob.action'
2015-02-04 12:08:22,955 [main ] INFO WebAppContext - ActiveMQ Console at http://0.0.0.0:8161/admin
2015-02-04 12:08:22,968 [main ] INFO ContextHandler - started o.e.j.w.WebAppContext{/camel,file:/var/lib/activemq/webapps/camel}
2015-02-04 12:08:22,973 [main ] INFO WebAppContext - WebApp@1311779403 at http://0.0.0.0:8161/camel
2015-02-04 12:08:22,986 [main ] INFO ContextHandler - started o.e.j.w.WebAppContext{/demo,file:/var/lib/activemq/webapps/demo}
2015-02-04 12:08:22,991 [main ] INFO WebAppContext - WebApp@1311779403 at http://0.0.0.0:8161/demo
2015-02-04 12:08:23,003 [main ] INFO ContextHandler - started o.e.j.w.WebAppContext{/fileserver,file:/var/lib/activemq/webapps/fileserver}
2015-02-04 12:08:23,008 [main ] INFO WebAppContext - WebApp@1311779403 at http://0.0.0.0:8161/fileserver
2015-02-04 12:08:23,024 [main ] INFO AbstractConnector - Started SelectChannelConnector@0.0.0.0:8161
# lsof -i:61614
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 48120 activemq 132u IPv6 49240809 0t0 TCP *:61614 (LISTEN)
Wednesday, 4 February 2015
Having trouble shutting down ActiveMQ? - Connection refused to host: localhost; nested exception
# service activemq stop
INFO: Loading '/etc/sysconfig/activemq'
INFO: Using java 'java'
INFO: changing to user 'activemq' to invoke java
INFO: Waiting at least 30 seconds for regular process termination of pid '32766' :
Java Runtime: Oracle Corporation 1.7.0_75 /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75.x86_64/jre
Heap sizes: current=503296k free=498011k max=503296k
JVM args: -Xms512m -Xmx512m -Djava.util.logging.config.file=logging.properties -Dhawtio.realm=activemq -Dhawtio.role=admins -Dhawtio.rolePrincipalClasses=org.apache.activemq.jaas.GroupPrincipal -Djava.security.auth.login.config=/etc/activemq/login.config -Dactivemq.classpath=/etc/activemq; -Dactivemq.home=/usr/share/activemq -Dactivemq.base=/usr/share/activemq -Dactivemq.conf=/etc/activemq -Dactivemq.data=/usr/share/activemq/data
Extensions classpath:
[/usr/share/activemq/lib,/usr/share/activemq/lib/camel,/usr/share/activemq/lib/optional,/usr/share/activemq/lib/web,/usr/share/activemq/lib/extra]
ACTIVEMQ_HOME: /usr/share/activemq
ACTIVEMQ_BASE: /usr/share/activemq
ACTIVEMQ_CONF: /etc/activemq
ACTIVEMQ_DATA: /usr/share/activemq/data
Connecting to pid: 32766
INFO: failed to resolve jmxUrl for pid:32766, using default JMX url
Connecting to JMX URL: service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi
ERROR: java.lang.RuntimeException: Failed to execute stop task. Reason: java.io.IOException: Failed to retrieve RMIServer stub: javax.naming.ServiceUnavailableException [Root exception is java.rmi.ConnectException: Connection refused to host: localhost; nested exception is:
java.net.ConnectException: Connection refused]
java.lang.RuntimeException: Failed to execute stop task. Reason: java.io.IOException: Failed to retrieve RMIServer stub: javax.naming.ServiceUnavailableException [Root exception is java.rmi.ConnectException: Connection refused to host: localhost; nested exception is:
java.net.ConnectException: Connection refused]
at org.apache.activemq.console.command.ShutdownCommand.runTask(ShutdownCommand.java:116)
at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
at org.apache.activemq.console.command.AbstractJmxCommand.execute(AbstractJmxCommand.java:387)
at org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:150)
at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
at org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:104)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.activemq.console.Main.runTaskClass(Main.java:262)
at org.apache.activemq.console.Main.main(Main.java:115)
ERROR: java.lang.Exception: java.io.IOException: Failed to retrieve RMIServer stub: javax.naming.ServiceUnavailableException [Root exception is java.rmi.ConnectException: Connection refused to host: localhost; nested exception is:
java.net.ConnectException: Connection refused]
java.lang.Exception: java.io.IOException: Failed to retrieve RMIServer stub: javax.naming.ServiceUnavailableException [Root exception is java.rmi.ConnectException: Connection refused to host: localhost; nested exception is:
java.net.ConnectException: Connection refused]
at org.apache.activemq.console.command.ShutdownCommand.runTask(ShutdownCommand.java:117)
at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
at org.apache.activemq.console.command.AbstractJmxCommand.execute(AbstractJmxCommand.java:387)
at org.apache.activemq.console.command.ShellCommand.runTask(ShellCommand.java:150)
at org.apache.activemq.console.command.AbstractCommand.execute(AbstractCommand.java:57)
at org.apache.activemq.console.command.ShellCommand.main(ShellCommand.java:104)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.activemq.console.Main.runTaskClass(Main.java:262)
at org.apache.activemq.console.Main.main(Main.java:115)
Caused by: java.io.IOException: Failed to retrieve RMIServer stub: javax.naming.ServiceUnavailableException [Root exception is java.rmi.ConnectException: Connection refused to host: localhost; nested exception is:
java.net.ConnectException: Connection refused]
at javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:369)
at javax.management.remote.JMXConnectorFactory.connect(JMXConnectorFactory.java:268)
at javax.management.remote.JMXConnectorFactory.connect(JMXConnectorFactory.java:227)
at org.apache.activemq.console.command.AbstractJmxCommand.createJmxConnector(AbstractJmxCommand.java:279)
at org.apache.activemq.console.command.AbstractJmxCommand.createJmxConnection(AbstractJmxCommand.java:302)
at org.apache.activemq.console.command.ShutdownCommand.runTask(ShutdownCommand.java:81)
... 11 more
Caused by: javax.naming.ServiceUnavailableException [Root exception is java.rmi.ConnectException: Connection refused to host: localhost; nested exception is:
java.net.ConnectException: Connection refused]
at com.sun.jndi.rmi.registry.RegistryContext.lookup(RegistryContext.java:118)
at com.sun.jndi.toolkit.url.GenericURLContext.lookup(GenericURLContext.java:203)
at javax.naming.InitialContext.lookup(InitialContext.java:411)
at javax.management.remote.rmi.RMIConnector.findRMIServerJNDI(RMIConnector.java:1929)
at javax.management.remote.rmi.RMIConnector.findRMIServer(RMIConnector.java:1896)
at javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:286)
... 16 more
Caused by: java.rmi.ConnectException: Connection refused to host: localhost; nested exception is:
java.net.ConnectException: Connection refused
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:619)
at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:216)
at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:202)
at sun.rmi.server.UnicastRef.newCall(UnicastRef.java:341)
at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source)
at com.sun.jndi.rmi.registry.RegistryContext.lookup(RegistryContext.java:114)
... 21 more
Caused by: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:579)
at java.net.Socket.connect(Socket.java:528)
at java.net.Socket.(Socket.java:425)
at java.net.Socket.(Socket.java:208)
at sun.rmi.transport.proxy.RMIDirectSocketFactory.createSocket(RMIDirectSocketFactory.java:40)
at sun.rmi.transport.proxy.RMIMasterSocketFactory.createSocket(RMIMasterSocketFactory.java:147)
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:613)
... 26 more
.............................
INFO: Regular shutdown not successful, sending SIGKILL to process with pid '32766'
Edit the activemq.xml file and change the following createConnector="false" to true:
Subscribe to:
Posts (Atom)